<Infinisil> taktoa: I don't know why you want to involve the evaluation phase for that
<taktoa> I think doing it using a builtin is better though, since then you can use the results of the parse
<Infinisil> The evaluation phase is there to evaluate the nix expression, not strings
<Infinisil> taktoa: Ahhh,
mudri`` has quit [(Ping timeout: 240 seconds)]
<taktoa> have you ever heard the term "shotgun parsing"?
<Infinisil> taktoa: But the script is generated by nix already, you already have the results
<Infinisil> taktoa: Nope
<taktoa> basically the problem of parsing context-free grammars is solved
<taktoa> but people keep manually hacking together parsers with string primitives and regexes
<Infinisil> taktoa: Ah yes
<taktoa> it's a terrible security problem
<taktoa> obviously since Nix is memory-safe it's not such a big deal
<Infinisil> Okay but can you show me an example of the thing you're proposing that couldn't be done with just a package at build-time?
<taktoa> obviously you can do anything with IFD, I'm not arguing against that
<taktoa> but IFD is comparatively slow, complicated, and not generally suitable for nixpkgs
<taktoa> if you're worried about the fact that we'd be adding a complicated primop to the language
<taktoa> well, we could always just write an earley parser in pure nix and use that when the builtin isn't available
fikse has quit [(Ping timeout: 268 seconds)]
<Infinisil> Writing an earley parser in nix would probably be so bad for performance..
<taktoa> yes, agreed
<Infinisil> Why is IFD slow?
<taktoa> it would just be there to preserve correctness in the case where people are running a version of nix without the primop available
<gchristensen> I'm worried about it being wrong and preventing a user from doing something that is valid, that our validator barfs at
<taktoa> Infinisil: it requires forking and execing, minimum
<gchristensen> and even if it can be disabled, I'm worried it would be a "secret" that it can be disabled (ie: not properly documented) and then nix gets a bad name for making a valid thing impossible
<Infinisil> taktoa: But that won't be a problem unless it runs 1000s of times
<taktoa> Infinisil: there are 1000s of nixos options
<Infinisil> taktoa: Hmm, valid point
<gchristensen> how many are arbitrary config?
<taktoa> probably 100 at least
<Infinisil> Ohhhh hold on
<gchristensen> "But that won't be a problem unless it runs 1000s of times" :)
hamishmack has quit [(Quit: hamishmack)]
<taktoa> gchristensen: I searched "extra" in the nixos options and got about 400 results
<Infinisil> if we do this in the evaluation phase, this means that these 100 configs would get checked every single time. But when doing it during build-time with packages, it will only get checked when a change happens
<gchristensen> it seems unlikely to be using all hundreds too :)
<Infinisil> That too
<taktoa> Infinisil: that doesn't really matter though, since it runs so fast. 300K lines of C per second!
<taktoa> okay, let me put it this way. if I wrote a pull request to nix adding this feature, would either of you object? or is it just a matter of "well, we don't have the resources"
<Infinisil> taktoa: Meh, that's really where nix shines: Don't do stuff you already did
sary has joined #nixos
<clever> another problem with using IFD to lint sudoers using sudo, is that you must now build sudo at EVAL time
<Infinisil> taktoa: I would probably suggest what I suggested here
justelex has quit [(Ping timeout: 240 seconds)]
<clever> so nix-instantiate causes builds
<gchristensen> clever: I don't see why it has to be IFD
<gchristensen> I use shellcheck and other linters without IFD
<taktoa> gchristensen: if you want to do something with the output in Nix
<hodapp> is there some magic I have to do to put multiple commands in postPatch...?
<gchristensen> yeah but when does that happen? my linters happen when the only result is a file on disk or something
<hodapp> tried $postPatch and eval $postPatch in a nix-shell and it's just sort of munging all the commands together
<Infinisil> gchristensen: Agreed
<gchristensen> what about eval "${postPatch}"
<clever> hodapp: quote the variable
<clever> hodapp: if you dont put double-quotes around it, the \n's get lost
<Infinisil> Shouldn't it be just `postPatch`?
<Infinisil> Or does this only work with `unpackPhase` etc.?
<Infinisil> taktoa: I really think it's better to put this in a package, would be a nice addition to nixpkgs/pkgs/build-support
<clever> Infinisil: that runs a bash function, not a variable containing bash script
xadi has quit [(Quit: Leaving.)]
<clever> !ping
<clever_> Infinisil: and unpackPhase runs the original function, not the overridden $unpackPhase
<clever_> !pong
michas has quit [(Quit: Verlassend)]
<taktoa> Infinisil: all of the arguments you've made apply equally to `builtins.match` though
<Infinisil> clever_: I see
<gchristensen> I see the simplicity of builtins.match is a feature
<gchristensen> I see the limitations of builtins.match as a feature
<clever> Infinisil: oddly, you can have both a unpackPhase function, and a $unpackPhase variable, and just typing "unpackPhase" runs the function
<Infinisil> taktoa: True, I have the same opinion on builtins.match
<clever> Infinisil: the stdenv has code to detect if the variable is set, and eval it instead
<taktoa> gchristensen: people really try to cram things into regexes and it results in buggy code. how is that a feature
<taktoa> or are you saying that not having an earley parser means that people will just try to avoid strings altogether
<Infinisil> taktoa: Is there an alternative to strings?
<gchristensen> after reviewing every use of builtins.match in nixpkgs, I can say definitively "no they don't"
<taktoa> Infinisil: a more well-typed structure like a set
<clever> hodapp: you can also do "runHook postPatch" and that will also support the arrays in bash
<taktoa> i.e.; just have the user manually parse it in their head and type the AST
<hodapp> well, I'm running into something else now, which is that I can't run what I need to because the /nix/store/whatever is read-only
<taktoa> gchristensen: well that's just because we don't bother with any kind of nixos option user input validation
<Infinisil> taktoa: nix *is* the validation
<taktoa> other than having what the user types be correct-by-construction
<taktoa> Infinisil: ^
erictapen has quit [(Ping timeout: 240 seconds)]
<hodapp> in a normal build can postUnpack modify the source directory?
<gchristensen> locateDominatingFile this is a weird function
slack1256 has joined #nixos
Neo--- has quit [(Ping timeout: 260 seconds)]
<taktoa> gchristensen: what if the BNFed options were opt-in. like you have extraConfig and extraConfigValidated
<Infinisil> taktoa: Oh so you mean that this builtin could be used to generate an AST in nix and then work with that?
<taktoa> Infinisil: yes. it is a general-purpose way to turn a string written in any context-free language into an AST
<hodapp> ugh. what's the proper place for modifying something in the unpacked source?
<gchristensen> hodapp: definitely postPatch
<Infinisil> taktoa: Then you would want builtins.earley to be of type BNF -> String -> Nix expression ?
<taktoa> yes, precisely
<Infinisil> Hmm
<clever> taktoa: another use i can see for parsers, do you know how ipv6 can have a string of 0's at almost any point replaced by just :: ?
<taktoa> clever: well I believe IPv6 addresses are a regular grammar
<hodapp> gchristensen: I'm doing it in postPatch with sed -i, and getting "sed: couldn't open temporary file /nix/store/6x2783a5k8p75d1klspqqn6dwlg1j8mb-opencv-3.2.0-src/modules/python/src2/seddi4sme: Permission denied"
<taktoa> so you could just use builtins.match for that
<gchristensen> hodapp: can you paste your expression?
<taktoa> though BNFs are a lot easier to write and read than regular expressions IME
<clever> taktoa: you can turn 1:2:3:0:0:0:0:5:6 into 1:2:3::5:6, and it will insert enough 0's to pad it out
<hodapp> gchristensen: sed -i -e 's|if len(decls) == 0:|if len(decls) == 0 or "opencv2/" not in hdr:|' $src/modules/python/src2/gen2.py
<gchristensen> the expression, not command :)
<clever> taktoa: and also, for reverse dns, that has to turn into 6.0.0.0.5.0.0.0.0.0.0.0 ....
<hodapp> gchristensen: not sure what you mean
<taktoa> clever: that is a regular grammar. the regex you'd have to write is pretty nasty
<gchristensen> hodapp: the whole .nix file
<taktoa> clever: basically since there is a limit to the number of colons you can just hardcode all the cases
joehh has quit [(Ping timeout: 246 seconds)]
<clever> taktoa: what would you use to parse the v6 and also convert it into a reverse dns entry?
fikse has joined #nixos
<taktoa> well idk about the reverse dns
<gchristensen> I'm just not convinced we _should_ be doing this in nix
<gchristensen> is my hangup
<Infinisil> taktoa: Okay, can you find an example of where having a validated nix-expression from a string would be useful?
drtop has quit [(Ping timeout: 246 seconds)]
<clever> taktoa: it has to uncompact it, so every part is 4 hex digits, strip all :'s, flip it, then insert a . between every char
<Infinisil> I know that submodules can pretty much do that anyways, but they're admittedly a pain to write
<hodapp> gchristensen: it's just https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/libraries/opencv/3.x.nix#L95 with the command I sent added right after
<taktoa> gchristensen: I mean, suppose someone is hellbent on doing it in Nix. then having this available means that what they end up writing is much more portable to other languages, instead of being "trapped" in Nix
<gchristensen> taktoa: yeah I don't want to enable that
<gchristensen> ok hodapp, you can't edit $src b/c it is another store path that already exists, not what you're creating
<clever> taktoa: what about just copy/pasting the parsing gramar directly from the sudo source, and into the sudoers linter in nix?
<gchristensen> you have to edit it in ./
<clever> hodapp: and the unpackPhase will copy $src to .
<Infinisil> taktoa: I don't really get what you mean by it being portable to other languages, BNF is language independent
<hodapp> clever: is this documented anywhere?
<taktoa> Infinisil: that's what I'm saying. BNF is language-independent, whereas a hacked-up mess of string functions and builtins.match is definitely not language-independent
<Infinisil> Ahh whops, right
<Infinisil> But
<gchristensen> hodapp: was that for me?
<clever> hodapp: maybe, but i just learned it by reading setup.sh
danl1240 has quit [(Quit: My iMac has gone to sleep. ZZZzzz…)]
<Infinisil> The big advantage of submodules is that you get a very precise error message when you done it wrong, a description of every option, a default (and more?). How is that with a BNF validation?
<taktoa> Infinisil: it's pretty great by default, and in the best case it's excellent, since you can even do static analysis on the parsed data
<taktoa> you'll get a line number and column
radvendii has joined #nixos
<taktoa> and potentially also "saw: foobar, expected: baz"
<hodapp> clever: fine, fine, I'll read the source.
<hodapp> still wish I understood how the bloody hell OpenCV's Python bindings can build with contrib enabled on anything, let alone Nix
<Infinisil> taktoa: Hmm
koserge has quit [(Ping timeout: 276 seconds)]
<Infinisil> taktoa: Do you have an example of where having a validated nix-expression could be useful? Where a submodule would be too inconvenient/impossible?
<Infinisil> validated nix-expression from a string*
<taktoa> Infinisil: validating an email address (and simultaneously being RFC-compliant)
<taktoa> stuff like that
<Infinisil> taktoa: But you won't need an nix-expression as output for that
fikse has quit [(Ping timeout: 276 seconds)]
<Infinisil> I'm asking because if you don't need a nix-expression as output, then it's totally doable in the build phase
<taktoa> Infinisil: probably, though I can imagine a few cases where you might need it (mail server config)
<clever> taktoa: or hydra config, where to email errors
<Infinisil> taktoa: Show me, I really need some good examples, I'm not very convinced without that
<clever> correction, what email to include in the from: field
<gchristensen> these seem like reaaaally low value use cases to justify a Whole Thing to support it
<taktoa> gchristensen: builtins.match is a Whole Thing. you could even replace builtins.match with builtins.earley!
<clever> Infinisil: i suspect hydra and the module have zero validation on the field i linked, and will insert whatever string you give it into the emails
<gchristensen> I see the limitations of builtins.match as a feature
<taktoa> hell I think builtins.match supports backreferences, so it's already equally powerful!
<Infinisil> clever: An example of what this might be set to?
thc202 has quit [(Ping timeout: 240 seconds)]
<clever> Infinisil: just an email address
<Infinisil> Ohh
<Infinisil> right
<taktoa> clever: you don't need the parsed data from the email though
<clever> taktoa: just the fact that its valid
<Infinisil> Yeah
<taktoa> yeah, so you can do that without IFD just with a derivation
<clever> yeah, i could put such a derivation into the top-level assertions of nixos
<clever> which arent documented well
<Infinisil> Is it possible to have internet during the build? To *actually* check e-mail addresses :D
<clever> these ones
<gchristensen> lol Infinisil
<hodapp> Infinisil: GET UOT
<gchristensen> Infinisil: yes
joehh has joined #nixos
<Infinisil> Dude
<Infinisil> That's perfect
<hodapp> Infinisil: do you want OpenCV? because this is how you get OpenCV.
<taktoa> Infinisil: have you heard of builtins.exec?
<Infinisil> It only rebuilds and sends a confirmation email when something changed
<gchristensen> see also the horrible chrome hack
<gchristensen> (it isn't _really_ possible)
<dash> Infinisil: your desires are immoral
<Infinisil> But it would also send an e-mail when any other person builds it..
thematter[m] has joined #nixos
<Infinisil> Alright, we still don't have a single example of where a builtins.earley would be useful.. (and impossible with a derivation)
<hodapp> take a page of inspiration from Kickstarter. when has "useful" or "possible" ever mattered?
radvendii has quit [(Ping timeout: 255 seconds)]
<Infinisil> :P
<hodapp> why the crappity crap is OpenCV building Qt crap
<taktoa> Infinisil: I think this is the kind of thing where we don't know what it's useful for because people never had the option to use it. Which, I guess, is a decent argument for adding it as a Nix expression using IFD for now, and promoting it to a primop if people use it in earnest.
<hodapp> I am pretty sure that OpenCV encompasses, in all of its optional components, somewhere around 25% of the packages in nixpkgs
<hodapp> OpenCV probably has bindings to link to another version of OpenCV, just because
<Infinisil> taktoa: But if people are already content with IFD, then there's no reason for doing it in evaluation-time.. Only when people start asking themselves "Gee, I sure wish I had the AST of this string", then it's something different
<taktoa> well avoiding IFD isn't the only reason to use a primop
<taktoa> performance is a major concern
<clever> hodapp: run "nix-store -q --tree" on the .drv file for the build
<clever> hodapp: i dont see QT in the closure of my opencv
<Infinisil> taktoa: Only instance I could think of where performance would matter is when you build something for the very first time without having all the cached derivations, then using IFD is strictly slower than a builtin, but everytime something gets updated IFD would probably be faster
<taktoa> Infinisil: nah, since IFD still has to query the store
<clever> Infinisil: IFD uses the target arch for building the derivation
<taktoa> context switch out of the evaluator
xadi has joined #nixos
sheenobu has quit [(Quit: Textual IRC Client: www.textualapp.com)]
<clever> Infinisil: so if i import a darwin nixpkgs, and do haskellPackages.callCabal2nix, it wants to generate the .nix file on a darwin machine
<clever> Infinisil: hydra cant do that
<Infinisil> clever: I see
<clever> to fix that, i would have to import 2 instances of nixpkgs (host and darwin), use the host nixpkgs to build and run cabal2nix, then the darwin nixpkgs to import the resulting nix file
<clever> and at this point, is simpler to just pre-run cabal2nix and commit the result
<Infinisil> clever: But doesn't nativeBuildInputs do that?
<clever> nativeBuildInputs is for when you cross-compile
<clever> but import <nixpkgs> { system = "x86_64-darwin"; } doesnt cross-compile
<clever> it does a native darwin build, on a darwin slave
<taktoa> I don't really get why people seem intent on gimping nix as a programming language. as long as everything is pure, I don't really see the issue with people doing crazy things in Nix
Rotaerk has joined #nixos
<Infinisil> clever: I don't really get what you're saying, is this an argument against using a package to implement a function that does BNF validation?
<clever> Infinisil: its a case of where IFD is bad
<taktoa> no, it's an argument against using IFD
<Infinisil> Ah
<hodapp> clever: was your OpenCV built with contrib & Python support?
<taktoa> Infinisil: note that you don't need IFD unless you use the parsed data. IFD makes derivations equally powerful to builtins.
<clever> hodapp: *looks*
<Infinisil> taktoa: Wait, what is IFD exactly, I might have misunderstood
<clever> hodapp: python was off, no contrib option visible
<clever> Infinisil: import from derivation
<taktoa> Infinisil: IFD allows Nix to build a derivation, then import a .nix file from the realised store path
<taktoa> so just _evaluating_ nix can require building derivations in that case
<Infinisil> Ahh
<clever> and hydra doesnt support using build slaves at eval time
<catern> IFD seems really pretty good
<Infinisil> So that's what `import` really does
<clever> because the eval is supposed to be pure
<catern> though it's way too powerful in general I guess
<taktoa> well import doesn't always do that
<hodapp> clever: I think it's test cases for contrib, or some nonsense like that
<clever> hodapp: what override did you add to opencv, and what attribute path?
<Infinisil> taktoa: When does import not do an import from a derivation?
<gchristensen> after learning about quadratics in bash, our PATH manipulation in stdenv is quadratic
<taktoa> catern: IFD is to recursive Nix as delimited continuations are to call/cc :P
<taktoa> Infinisil: if you import from a path that is not in the store
<clever> gchristensen: i have found that ghcWithPackages looks better then buildInputs
<gchristensen> heh
<clever> gchristensen: it will buildEnv all deps into a single dir, acting as an index in one spot
<Infinisil> taktoa: And a path in the store isn't a derivation?
<clever> gchristensen: rather then appending 200 -L's to ld and letting it search
<catern> taktoa: err.... what is recursive Nix?
<jasom> Is there a way to pin my users' channel to sync to the installed system nixos? I keep getting libEGL.so mismatch issues and it's ... annoying.
<clever> gchristensen: but that can make things like propagated inputs and other stuff harder to deal with
<catern> taktoa: is that just "use Nix as low-level build manager"?
<taktoa> catern: being able to run `nix-build` inside a nix build
<clever> jasom: its usually better to just never have a channel on the users, and manage all channels by root
<taktoa> catern: it's more useful than it sounds
<jasom> clever: okay, how do I do that?
<catern> taktoa: ah... that's not currently possible?
<clever> jasom: even as root, only the channel called "nixos" is special, so you can add custom channels to root without harm
<clever> jasom: same way you manage them as a normal user, nix-channel --add
<jasom> clever: and then nix-env will use that channel as a user?
<clever> jasom: and --remove every channel from all non-root users
<clever> jasom: yeah
<clever> jasom: just name the channel as always, nix-env -iA unstable.hello
<Infinisil> taktoa: I feel like your idea is well worth a github issue
<taktoa> Infinisil: okay, I'll write it up :)
<catern> yeah I mean
<catern> recursive Nix seems better
<taktoa> catern: well, it's more powerful. "better" is subjective
<catern> because it gives us Nix as a low-level build manager
<catern> which is like, a killer app
<Infinisil> I really want to write a nix function that does this using a package, so that you can just do something like `lib.validate (g: g.haskell) "<haskell program here>"`
<Infinisil> Or `lib.validate "BNF" "script heer"`
romildo has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Hodapp87 opened pull request #27674: opencv: Work around build failure with enableContrib & Python (master...opencv_contrib_py) https://git.io/v7Gkm
NixOS_GitHub has left #nixos []
<taktoa> catern: yes, agreed. it's literally my job this summer to turn Nix into a low-level build manager for Haskell (using IFD), and recursive nix would have made this a lot easier
<catern> ah you're using IFD to do that?
<taktoa> yeah
<catern> kind of sad
radvendii has joined #nixos
<jasom> clever: nixos -qAP '*' is empty now... root has a nixos channel my user has no channels
tvon has joined #nixos
hiratara has quit [(Ping timeout: 276 seconds)]
<hodapp> taktoa: low-level build manager for Haskell?
<clever> jasom: what does "nix-channel --list" and "sudo nix-channel --list" say?
<Infinisil> I also wish for recursive nix :( Have tried it until i realized it's not possible
<taktoa> Infinisil: have you talked with shlevy? he seems to think it's possible
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] wmertens closed pull request #9435: Apache configuration improvements (master...apache-conf-verify) https://git.io/vsS3h
NixOS_GitHub has left #nixos []
<hodapp> recursive nix?
<taktoa> hodapp: incremental Haskell builds through Nix
<Infinisil> taktoa: Have not
<hodapp> taktoa: anything that makes Haskell builds easier is something I'm supportive of
<Infinisil> shlevy: Hello?
<catern> taktoa: but shlevy is the one arguing against recursive nix in that github issue!
eacameron has joined #nixos
hiratara has joined #nixos
<taktoa> catern: yeah, and then he later wrote the first recursive nix patch :D
fikse has joined #nixos
<taktoa> which then bitrotted and never got merged
<catern> :D
<clever> jasom: and what about ls -ltrh ~/.nix-defexpr/*/*
<catern> heh
<catern> I'm glad I eventually learned about this IFD trick
<catern> it should be publicized more I think
<jasom> clever: lrwxrwxrwx 1 root root 60 Dec 31 1969 /home/jasom/.nix-defexpr/channels/manifest.nix -> /nix/store/w213fg5zb7df8h1wsldqpqi7yk9d80rk-env-manifest.nix
<Infinisil> catern: What is it??
<catern> Infinisil: just the idea of using IFD at all!
<Infinisil> Or is IFD the whole trick
<Infinisil> Ahh
<clever> jasom: you need to run nix-channel --update as root
<catern> I was completely confused about how to integrate Nix with this other proprietary build system
<clever> jasom: --add must always be followed by --update to apply the additions
<catern> and racking my brain how to do it
<catern> but IFD makes it trivial
<Infinisil> catern: Soooo.. How can I build my project using nix instead of e.g. make?
<taktoa> Infinisil: I'm still working on it, but https://github.com/awakesecurity/ninja2nix
<catern> Infinisil: sorry sorry I meant proprietary package manager not build system
<catern> Infinisil: and taktoa is the one to talk about that, yeah :)
<Infinisil> taktoa: Nice :D
<catern> taktoa: if things go amazingly well I can probably get my company to build a bazel2nix, too :)
<taktoa> catern: bazel can output ninja, IIRC
<taktoa> so no building necessary :D
<catern> ah well perfect then
<Infinisil> taktoa: Is there an example output nix file?
* jasom needs to resurrect the half-completed ql2nix
<taktoa> Infinisil: right now it craps out a JSON file that is processed by a crazy nix derivation
lambdamu has joined #nixos
<taktoa> the JSON file in that gist was created by running `ghc -M` to get a Makefile, then `ckati` to turn it into ninja, then `ninja2nix`
<Infinisil> Damn
<Infinisil> Cool stuff
<catern> man
<catern> where does edolstra even communicate?
<catern> he's not on IRC, he barely sends email, he doesn't talk that much on issues
<taktoa> catern: he is niksnut
<catern> oh, I didn't know :)
<Infinisil> Same
<catern> reminds me of when I realized civodul was ludovic :)
<Infinisil> Oh damn
<Infinisil> Or grahamc gchristensen
jtojnar has joined #nixos
<gchristensen> I feel like I'm in an exclusive club
<hodapp> you are
<hodapp> drinks are like $27
jtojnar has quit [(Client Quit)]
<Infinisil> gchristensen: I know you're using matrix as one nick, but what is the mistery behing ludovic?
lambdamu_ has quit [(Ping timeout: 268 seconds)]
<gchristensen> no idea
<hodapp> woooo \o/ I actually made Jupyter work with Python with OpenCV with contrib enabled
<hodapp> that's a lotta 'with'
hamishmack has joined #nixos
<Infinisil> hodapp: Congrats!
<hodapp> don't jinx it
<hodapp> I need to get CUDA into this mess too
<catern> Infinisil: oh, ludovic only has one nick, I just didn't realize "civodul on IRC" was the same person as "Ludovic, creator of guix"
neeasade has joined #nixos
<Infinisil> catern: Ahhhh
tvon has quit [(Quit: Peace out, y'all!)]
<taktoa> one of the things I like about the nixos community is how nice this IRC channel is. like, it's comparable to #haskell in terms of smart people willing to fix your problem, but at the same time it's got a nice informal atmosphere
<Infinisil> Agreed
<gchristensen> taktoa: I agree :)
drakonis has quit [(Remote host closed the connection)]
drakonis has joined #nixos
<Infinisil> How can I find out why I can't unmount a directory?
<Infinisil> lsof <path> and fuser <path> don't show anything
<jasom> clever: still not working; ls -ltrh ~/.nix-defexpr/*/* has unchanged output
<Infinisil> Eh whatever, I can just plug it out
drakonis has quit [(Remote host closed the connection)]
drakonis has joined #nixos
<gchristensen> lol Infinisil :)
indi_ has quit [(Remote host closed the connection)]
<Infinisil> gchristensen: :P I'm actually testing how I can boot with a full zfs disk using a small stick, so that's why i don't really care :)
indi_ has joined #nixos
<Infinisil> Okay I think something is messed up, happened before I unplugged it forcibly though, it must be the reason i couldn't unmount it
lverns has joined #nixos
<Infinisil> I'm gonna have to reboot, brb
Infinisil has quit [(Quit: leaving)]
s33se_ has joined #nixos
<jasom> so, how do I get nixos to create the ~/.nix-defexpr/channels_root
indi_ has quit [(Ping timeout: 240 seconds)]
s33se has quit [(Ping timeout: 255 seconds)]
Infinisil has joined #nixos
mbrgm has quit [(Ping timeout: 255 seconds)]
mbrgm has joined #nixos
<Infinisil> Even had to force shutdown..
<clever> jasom: does channels_root exist in .nix-defexpr?
<clever> jasom: have you been deleting things to silence warnings about collisions?
<jasom> clever: no to the first one, maybe to the second?
<jasom> clever: I think I installed my user profile before the root profile
* jasom tried manually adding in the channels_root just now and didn't get any benefit
<jasom> aha, it is working now, I just typoed A instead of a
<clever> jasom: nixos?
<clever> lrwxrwxrwx 1 clever users 44 Oct 11 2015 channels_root -> /nix/var/nix/profiles/per-user/root/channels
<clever> lrwxrwxrwx 1 clever users 46 Mar 7 2016 channels -> /nix/var/nix/profiles/per-user/clever/channels
<clever> jasom: these should exist by default, it doesnt matter what order the users where made in
<jasom> well I manually added it back in and things are working
hellrazo1 has joined #nixos
<jasom> in general, nixos has the least painful upgrades, and it seems likely that I messed this one up on my own...
<clever> ive broken things pretty badly before, i did nix-store --delete --ignore-liveness
<clever> it ignored what was in-use, and deleted 90% of the os, lol
jgertm has quit [(Ping timeout: 240 seconds)]
jtojnar has joined #nixos
hellrazor has quit [(Ping timeout: 248 seconds)]
<taktoa> gchristensen Infinisil clever https://github.com/NixOS/nix/issues/1491
clever_ has quit [(Read error: Connection reset by peer)]
<gchristensen> *subscribes*
<joehh> how do I best debug which packages nix is making available to cabal?
taktoa has quit [(Remote host closed the connection)]
<Infinisil> taktoa[m]: Nice!
<joehh> I've got two very similar looking packages that I want to profile, but one seems to find the profiling files, the other doesn't
fikse has quit [(Ping timeout: 255 seconds)]
zeus_ has quit [()]
<clever> jasom: nix-shell -A foo.env then run `ghc-pkg list`
<clever> joehh: and also ghc-pkg describe foo
<joehh> so do that in each of my packages and look at the differences?
<clever> yeah
fikse has joined #nixos
sheenobu has joined #nixos
<joehh> ok - that is making some sense...
<joehh> the packages that build properly have one "version" of the libraries, those that fail have a different version
Supersonic112 has quit [(Disconnected by services)]
<joehh> and the failing ones lack the p_hi files
Supersonic112_ has joined #nixos
<joehh> question is now why would they be any different?
Supersonic112_ is now known as Supersonic112
<joehh> they come from the same nix file and the same package set
fikse has quit [(Ping timeout: 246 seconds)]
fikse has joined #nixos
<joehh> mop-rawlogs, mop-qa both pick up profiled packages, whilst mop-core does not
<joehh> but can't see any difference in environment/derivation description
<gchristensen> so I got stdenv to shellcheck ...
<clever> joehh: *looks*
<joehh> thanks very much clever :)
<clever> joehh: what is inside mop-core/default.nix ?
<clever> looks perfectly normal
<joehh> yeah :(
<joehh> thats what I can't understand
<clever> why do you have so many absolute paths in the first gist?
<clever> why are they not relative?
<joehh> my other packages all get the profiled dependencies, just this one doesn't
<joehh> transition from how I was managing my nix builds (local packages in .config/nixpkgs/config.nix to a single file (the gist))
<joehh> I wonder if that file could be causing the issues
<clever> try putting this file into the root of that project, and make it all relative
<joehh> will do
Infinisil has quit [(Ping timeout: 260 seconds)]
Infinisil has joined #nixos
<joehh> other (probably main) reason is the absolute paths are for my local checkout, local nix file is to a fetchhg with particular revision
WinterFox[m] has quit [(Ping timeout: 276 seconds)]
Dezgeg has quit [(Ping timeout: 276 seconds)]
Dezgeg has joined #nixos
indefini has quit [(Ping timeout: 276 seconds)]
cornu[m] has quit [(Ping timeout: 276 seconds)]
revoltmedia[m] has quit [(Ping timeout: 276 seconds)]
WinterFox[m] has joined #nixos
revoltmedia[m] has joined #nixos
indefini has joined #nixos
cornu[m] has joined #nixos
<clever> heading off to bed now
<Infinisil> clever: Night
<Infinisil> I'm still not done with this zfs thing ugh
<joehh> thanks for your help clever :) still going slowly crazy
loupgaroublond has quit [(Quit: Bisy backson!)]
loupgaroublond has joined #nixos
lambdael has quit [(Quit: WeeChat 1.7.1)]
<et4te> is there a standard way to push a successful build from a local dev machine to hydra builds?
<et4te> slaves running out of mem :/
<clever> et4te: nix-copy-closure
drakonis has quit [(Remote host closed the connection)]
drakonis has joined #nixos
<dtz> Might need --sign, or as trusted user.... Newer nix have"nix copy" that operates on store uris
<et4te> that seems to be exactly it thanks :O
eacameron has quit [(Remote host closed the connection)]
sheenobu has quit [(Quit: Textual IRC Client: www.textualapp.com)]
xadi has quit [(Quit: Leaving.)]
mrcheeks has quit [(Quit: ERC (IRC client for Emacs 26.0.50))]
<copumpkin> taktoa: too early for earley
<joehh> where can I find the various nix manuals on my nixos system?
<joehh> I remember seeing a bookmark or desktop link to them when I first installed, but can't find it now
jgertm has joined #nixos
lverns has left #nixos []
<copumpkin> does nix/nixpkgs not have some sort of whitespace strip function on strings?
<Infinisil> copumpkin: Doesn't look like it
<copumpkin> I guess fileContents does everything I wanted
mattops has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] copumpkin pushed 2 new commits to release-17.03: https://git.io/v7GOs
<NixOS_GitHub> nixpkgs/release-17.03 9f00898 Dan Peebles: Fix Darwin stdenv to work on 10.13...
<NixOS_GitHub> nixpkgs/release-17.03 0213a18 Daniel Peebles: Merge pull request #27630 from copumpkin/backport-high-sierra-17.03...
NixOS_GitHub has left #nixos []
eacameron has joined #nixos
<jasom> hmm, I seem to get http/2 errors in curl if I run two parallel nix-build commands?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth opened pull request #27675: nixos/tinc: remove Device from tinc.conf (master...patch-4) https://git.io/v7G3U
NixOS_GitHub has left #nixos []
fikse has quit [(Ping timeout: 246 seconds)]
<jasom> nevermind, one build restarted NetworkManager
sigmundv_ has quit [(Ping timeout: 248 seconds)]
<copumpkin> https://github.com/ip1981/nixsap seems interesting
<joehh> where is callPackage defined
<joehh> ?
<copumpkin> near the top of all-packages, as an invocation of newScope iirc
nslqqq has quit [(Ping timeout: 255 seconds)]
<copumpkin> which is the more generic building block for that functionality
nslqqq has joined #nixos
<clever> clever@c2d ~ $ nix-instantiate --eval -E 'with import <nixpkgs>{}; builtins.unsafeGetAttrPos "callPackage" pkgs'
<clever> { column = 3; file = "/nix/store/5n59fpmkjna4gfcnjh5b0kpgn4vnpvkq-nixpkgs-17.03pre96825.497e6d2/nixpkgs/pkgs/top-level/all-packages.nix"; line = 32; }
<joehh> thanks clever :)
<joehh> I keep learning!
<Infinisil> clever: Oh nice, gonna save that
<clever> Infinisil: that is the internals behind how pkgs.hello.meta.position works
justelex has joined #nixos
drakonis has quit [(Read error: Connection reset by peer)]
bahamas has joined #nixos
<bahamas> hello. I'm trying out nix on a django app. I created a default.nix file and just ran nix-build. it seems to be building the entire Internet. is this expected?
<dash> on what OS/architecture?
<bahamas> mac os x
<bahamas> it finished eventually
<copumpkin> building the entire internet might mean different things to different people
<copumpkin> if you're on master, I'd expect to see a few things build
<bahamas> what do you mean by being on master?
<copumpkin> if you're working off a git clone of nixpkgs
<copumpkin> I guess we can stop guessing if you pastebin the list of things it built :)
<bahamas> unfortunately I have to go. I will sort it out some other time. thanks!
bahamas has quit [(Quit: leaving)]
<Infinisil> > 4:22 clever: heading off to bed now
<Infinisil> heh
<clever> yeah, i have trouble signing off :P
<dash> another satisfied customer, I see
<clever> Infinisil: ehh, this build is taking too long, i'll just finish it tomorrow
* clever tries to head to bed again, lol
<Infinisil> happens to me too all the time
mattops has quit [(Quit: Textual IRC Client: www.textualapp.com)]
<Infinisil> :D
justelex has quit [(Ping timeout: 240 seconds)]
eacameron has quit [(Remote host closed the connection)]
jb55 has joined #nixos
eacameron has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] joachifm closed pull request #27667: Semi-automated Emacs package updates (master...emacs-updates) https://git.io/v7s0c
NixOS_GitHub has left #nixos []
lambdael has joined #nixos
aswanson has joined #nixos
reinzelmann has joined #nixos
radvendii has quit [(Ping timeout: 276 seconds)]
eacameron has quit [(Ping timeout: 240 seconds)]
<aswanson> anyone running nixos-unstable under efi? I'm getting an error during nixos-rebuild that the target device is full.
<aswanson> It looks like its because I have multiple sets of **-initrd-initrd.efi and **linux-4.9.**-bzimage.efi files in the /boot partition
<aswanson> shouldn't nix be getting rid of those as upgrades occur?
joehh has quit [(Ping timeout: 255 seconds)]
eacameron has joined #nixos
<Infinisil> aswanson: I ran into this problem before, I fixed it by doing sudo nix-collect-garbage -d and /run/current-system/bin/switch-to-configuration boot
<Infinisil> I don't know if both of those are needed, but that worked
<Infinisil> If you're using grub, setting the boot.loader.grub.configurationLimit to 10 or so might fix it for all times
<aswanson> I'm just using systemd-boot so no luck on the grub thing. I'll run those commands you suggested and see what happens
eacameron has quit [(Ping timeout: 276 seconds)]
fresheyeball has joined #nixos
<fresheyeball> hey so I have a personal environement at `.config/nixpkgs/config.nix`
<Infinisil> aswanson: I'm actually using systemd-boot too, I wish I could switch to grub
<fresheyeball> and ran
<fresheyeball> nix-env -iA nixos.myEnv
<fresheyeball> to install the environmnet for personal use
<fresheyeball> it looked like it worked
<fresheyeball> but now when I run that command again
<fresheyeball> I get this
romildo has quit [(Quit: Leaving)]
aswanson has left #nixos ["WeeChat 1.9"]
alx741 has quit [(Quit: alx741)]
<fresheyeball> error: opening file ‘/nix/store/kx25v9xl69lz5p7d40sq3sqgcwa7q8pa-myEnv/default.nix’: No such file or directory
eacameron has joined #nixos
<Infinisil> fresheyeball: How does your config.nix look? Did you put it in packageOverrides?
MrCoffee has quit [(Quit: Lost terminal)]
reinzelmann has quit [(Quit: Leaving)]
<Infinisil> fresheyeball: What does your env declaration look like?
eacameron has quit [(Ping timeout: 255 seconds)]
joehh has joined #nixos
<fresheyeball> Infinisil: http://lpaste.net/1843380288198017024
<Infinisil> fresheyeball: You don't need to call `callPackage` on buildEnv
k2s has joined #nixos
<Infinisil> just `myEnv = myEnv` which is equivalent to `inherit myEnv;` would do
<fresheyeball> Infinisil: ok so I made that change
<fresheyeball> Infinisil: error: attribute ‘myEnv’ in selection path ‘nixos.myEnv’ not found
rpifan has joined #nixos
rauno has joined #nixos
<sphalerite[m]> fresheyeball: where do you have this config file?
<fresheyeball> ~/.config/nixpkgs/config.nix
<fresheyeball> so when I edited the file
<fresheyeball> the error did change
k2s has quit [(Quit: Leaving)]
<Infinisil> fresheyeball: Weird, I see no reason why it might not find it
<et4te> hmm keep getting 'output limit exceeded' on a build from hydra even though i redeployed with a much larger max-output-size for nix.conf, does this setting in conf affect the error?
<fresheyeball> Infinisil: its finding the file fine
<fresheyeball> myEnv = myEnv
<fresheyeball> changed the error
<fresheyeball> from
<fresheyeball> error: opening file ‘/nix/store/kx25v9xl69lz5p7d40sq3sqgcwa7q8pa-myEnv/default.nix’: No such file or directory
<fresheyeball> to
<fresheyeball> error: attribute ‘myEnv’ in selection path ‘nixos.myEnv’ not found
<Infinisil> fresheyeball: Does nix-instantiate --eval -E '(import <nixpkgs> {}).myEnv' give you an error?
<fresheyeball> I figured it out
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] peterhoeg opened pull request #27677: mcelog: 148 -> 153 (master...u/mcelog) https://git.io/v7GcL
NixOS_GitHub has left #nixos []
<fresheyeball> I setill need packageOverrides
<fresheyeball> I still*
<fresheyeball> I just don't need callPackage
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] jensbin closed pull request #27664: citrix-receiver: 13.4.0 -> 13.6.0 (master...citrix-receiver_13.6.0) https://git.io/v7sJx
NixOS_GitHub has left #nixos []
<Infinisil> fresheyeball: Well... if you didn't set it in packageOverrides then of course it's not gonna work
<fresheyeball> Infinisil: explain
jb55 has quit [(Ping timeout: 255 seconds)]
helpzfs has joined #nixos
joehh has quit [(Ping timeout: 240 seconds)]
<helpzfs> I'm trying to format a non-root disk as ZFS. I've installed the zfs and spl packages, and tried modprobe zfs, but it doesn't find the kernel module
<Infinisil> helpzfs: I never needed to run modprobe zfs, have you tried without it?
<helpzfs> let me reboot and try
slack1256 has quit [(Remote host closed the connection)]
<helpzfs> Infinisil: when I run zpool create ... it says the modules are not loaded.
<Infinisil> helpzfs: Ahh
<Infinisil> No idea then
<helpzfs> thanks
helpzfs has quit [(Quit: Page closed)]
eacameron has joined #nixos
eacamero_ has joined #nixos
eacameron has quit [(Ping timeout: 276 seconds)]
ebzzry has quit [(Ping timeout: 276 seconds)]
indi_ has joined #nixos
eacamero_ has quit [(Ping timeout: 260 seconds)]
fresheyeball has quit [(Quit: WeeChat 1.7.1)]
hamishmack has quit [(Quit: hamishmack)]
eacameron has joined #nixos
jedai has joined #nixos
acertain has quit [(Ping timeout: 260 seconds)]
leothrix has quit [(Quit: ZNC 1.6.5 - http://znc.in)]
eacameron has quit [(Ping timeout: 255 seconds)]
endformationage has quit [(Quit: WeeChat 1.7)]
leothrix has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth opened pull request #27678: nixos/networking-scripted: restore bridge slaves dynamically added by… (master...restore-bridge-slaves-dynamically-added-by-libvirt) https://git.io/v7GWq
NixOS_GitHub has left #nixos []
joehh has joined #nixos
MercurialAlchemi has joined #nixos
xadi has joined #nixos
DrWaste has joined #nixos
reinzelmann has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] fpletz pushed 1 new commit to master: https://git.io/v7Glw
<NixOS_GitHub> nixpkgs/master b602082 taku0: oraclejdk: 8u141 -> 8u144
NixOS_GitHub has left #nixos []
sauyon has joined #nixos
sauyon has quit [(Client Quit)]
sauyon has joined #nixos
rpifan has quit [(Ping timeout: 240 seconds)]
peel has joined #nixos
lambdael has quit [(Quit: WeeChat 1.7.1)]
peel has quit [(Quit: WeeChat 1.9)]
jgertm has quit [(Ping timeout: 240 seconds)]
xadi has quit [(Quit: Leaving.)]
peel has joined #nixos
joehh has quit [(Ping timeout: 246 seconds)]
justelex has joined #nixos
Ivanych has joined #nixos
hamishmack has joined #nixos
smc9115 has joined #nixos
justbeingglad has joined #nixos
justbeingglad has left #nixos []
FRidh has joined #nixos
eacameron has joined #nixos
eacameron has quit [(Ping timeout: 248 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] peti pushed 3 new commits to master: https://git.io/v7GRL
<NixOS_GitHub> nixpkgs/master be63b19 michael bishop: enable split-output builds for all haskellPackages
<NixOS_GitHub> nixpkgs/master 2b0ce7a Peter Simons: hackage-packages.nix: automatic Haskell package set update...
<NixOS_GitHub> nixpkgs/master 073b305 Domen Kožar: ghc-mod: fix build to cope with new split-output work
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] peti closed pull request #27196: enable split-output builds for all haskellPackages (master...haskell-split-output) https://git.io/vQrAi
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh closed pull request #27670: sakura: 3.3.4 -> 3.4.0 (master...nixos-unstable) https://git.io/v7sSl
NixOS_GitHub has left #nixos []
Ivanych has quit [(Ping timeout: 260 seconds)]
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
Ivanych has joined #nixos
smc9115 has quit [(Quit: Mutter: www.mutterirc.com)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh closed pull request #27599: qesteidutil: 3.12.2.1206 -> 3.12.5.1233 (master...merge/qesteidutil/master) https://git.io/v7LUP
NixOS_GitHub has left #nixos []
indi_ has quit [(Ping timeout: 255 seconds)]
adev has joined #nixos
jensens has joined #nixos
aseaday has joined #nixos
nschoe has joined #nixos
nschoe has quit [(Client Quit)]
Negher has left #nixos ["WeeChat 1.9"]
eacameron has joined #nixos
nschoe has joined #nixos
eacameron has quit [(Ping timeout: 255 seconds)]
koserge has joined #nixos
symphorien has quit [(Quit: WeeChat 1.8)]
symphorien has joined #nixos
<Infinisil> ZoL got the 0.7.0 update \o/
<Infinisil> I could totally try to update the nixos version, I think that should be within my possibilities
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] kamilchm opened pull request #27679: oraclejdk: updated arm checksums (master...oraclejdk) https://git.io/v7Guk
NixOS_GitHub has left #nixos []
takle has joined #nixos
zraexy has quit [(Ping timeout: 260 seconds)]
takle has quit [(Ping timeout: 276 seconds)]
takle has joined #nixos
jgertm has joined #nixos
Myrl-saki has joined #nixos
freusque has joined #nixos
civodul has joined #nixos
cinimod has joined #nixos
<cinimod> I want to use octave - normally I would install it via brew but I think I can use nix: https://github.com/NixOS/nixpkgs/blob/master/pkgs/development/pure-modules/octave/default.nix
<adev> Hi Guys
<adev> Little annoucment
<adev> Job offer: Experience Devops position open associated with an EPFL startup in Lausanne, Switzerland. Requirement: Python and C/C++ software executed, cloud computing and deep learning.Swiss salary ( > 85K CHF )
<adev> If anyone is interested, contact me privately and I will put you in contact
thc202 has joined #nixos
<goibhniu> hi cinimod, yeah, you should be able to use nix for that
justelex has quit [(Ping timeout: 260 seconds)]
<cinimod> I am doing so
<cinimod> :)
<cinimod> But now I want to run it via octave-mode inside emacs
mudri`` has joined #nixos
lesce has joined #nixos
<cinimod> I should probabaly ask on #emacs but does anyone know what I should do?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lsix opened pull request #27680: gnuchess: 6.2.4 -> 6.2.5 (master...update_gnuchess) https://git.io/v7G2m
NixOS_GitHub has left #nixos []
<cinimod> I could customize inferior-octave-program to point at /nix/store/2qazv1c22ad71w7cnxvmijqvs3wgagkb-octave-4.2.1/bin/octave
<cinimod> Is that sensible given I am then not in a nix-shell?
<symphorien> the store path can disappear every time you run the gc
justelex has joined #nixos
lesce has quit [(Ping timeout: 255 seconds)]
erictapen has joined #nixos
<srhb> cinimod: can't you make a wrapper around run-octave that runs it in a nix-shell?
<srhb> cinimod: Actually, why can't you just install octave in your profile via Nix and just use it from $PATH?
<cinimod> srhb: I don't know what "install octave in your profile" means
<srhb> cinimod: nix-env -iA nixpkgs.octave
<srhb> Then the location of "octave" should be on your $PATH variable, and Emacs should just find it if inferior-octave-program is set to "octave" (the default)
<cinimod> I think that would mean starting emacs inside the nix shell?
<cinimod> I already have my emacs running
<srhb> There's no nix shell involved here.
justelex has quit [(Ping timeout: 240 seconds)]
<srhb> Maybe I'm misunderstanding how Nix works on mac, but usually, using nix-env to install things into your profile (-i) will put the programs on your $PATH so they can just be used from within your (regular) shell, emacs, whatever.
<cinimod> Oh ok - I will experiment - at the moment I have an octave process running in emacs and I am trying to debug someone else's matlab code :(
<srhb> You may need to restart emacs for it to pick up the changed $PATH.
justelex has joined #nixos
<srhb> If it doesn't, I *think* something is wrong in your setup, as the profile isn't being picked up correctly by some of your programs (PATH, etc.)
<cinimod> srhb: thank you so much - I will look later as I am now in the middle of debugging
<srhb> cinimod: OK, I have to run now anyway, good luck. :)
<cinimod> :)
lesce has joined #nixos
<srhb> Oh, by the way, if all else fails, it will be in ~/nix-profile/bin/octave
<srhb> Once it's installed in your profile, I mean
<srhb> Or whatever the equivalent macos path is.
spear2 has joined #nixos
adfaure has joined #nixos
<adfaure> Hello, everyone. I would like to package this application (= https://github.com/joergen7/cuneiform ). I tried using the beamPackages.buildRebar3, but I can't make it works. Is someone familiar with this build system please ? Thanks
erictapen has quit [(Ping timeout: 240 seconds)]
xadi has joined #nixos
<ikwildrpepper> anyone else getting email notifications from some hydra instance from awakenetworks.com or something?
<ikwildrpepper> looks like Gabriel Gonzalez is at that organization
<ikwildrpepper> anyone know if he's on irc?
spear2 has quit [(Quit: ChatZilla 0.9.93 [Firefox 46.0.1/20160521140538])]
<LnL> don't think so
stubborn_d0nkey has joined #nixos
<srhb> adfaure: What did you try so far?
<srhb> adfaure: And what went wrong?
xadi1 has joined #nixos
xadi has quit [(Read error: Connection reset by peer)]
<srhb> Would it be possible to use FHS environments to build static binaries for deployment on non-NixOS systems?
jgertm has quit [(Ping timeout: 240 seconds)]
snikkers has joined #nixos
xadi1 has quit [(Ping timeout: 240 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lsix opened pull request #27682: pythonPackages.django_1_10: drop (master...drop_django_1_10) https://git.io/v7GiN
NixOS_GitHub has left #nixos []
<adfaure> Hello srhb, I tried to use the function buildRebar3. But it seems that the owner of the repo uses deps from github (from the reabar.config)
<adfaure> Could it ne that which went wrong ?
__Sander__ has joined #nixos
indi_ has joined #nixos
deltasquared has joined #nixos
<srhb> symphorien: I was thinking more like pretending that libc etc. are in standard FHS locations and building against that.
<makefu> │
<makefu> wupps
<symphorien> just delete the rpath of your binary maybe enough then
<deltasquared> "pretending libc are in FHS locations" sounds an awful lot like it'd explode on nixos, but then again I just jumped in so feel free to ignore me
<symphorien> ld.config would look itself in FHS locations
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
<domenkozar> ikwildrpepper: can provisioning of one resource in nixops depend on another?
<domenkozar> I know it can, but it seems that nixops doesn't populate the provisioned values
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] abbradar pushed 2 new commits to master: https://git.io/v7G1I
<NixOS_GitHub> nixpkgs/master 5a3c35c Nikolay Amiantov: beignet: 1.2.1 -> 1.3.1
<NixOS_GitHub> nixpkgs/master 94adf8d Nikolay Amiantov: haskellPackages.threadscope: fix build
NixOS_GitHub has left #nixos []
aminechikhaoui has quit [(Quit: leaving)]
adfaure has quit [(Ping timeout: 268 seconds)]
<ikwildrpepper> domenkozar: can you be a bit more specific? :)
<domenkozar> I'd like to have SG source point to a provisioned elastic ip
aminechikhaoui has joined #nixos
<domenkozar> to be populated by https://nixos.org/nixops/manual/#opt-address
<domenkozar> and the value is really _UNKNOWN_ELASTIC_IP_
<domenkozar> so is that a bug or design flaw? :)
<ikwildrpepper> domenkozar: can you try deploying the elastic ip first?
<ikwildrpepper> (with include)
<ikwildrpepper> perhaps it creates the elastic ip after the sg
indi_ has quit [(Ping timeout: 260 seconds)]
<domenkozar> ikwildrpepper: yeah so the order is what I'm interested in, because nixops allows resources to depend on resources and it seems that reflecting that in nixops shouldn't be easy
<aminechikhaoui> domenkozar: it's not evaluated at that point so the implementation of the sg resource need to retreive the eip from the resource state
<domenkozar> aminechikhaoui: "retreive" at python level?
<domenkozar> so nixops doesn't evaluate for each resource separately?
<domenkozar> aminechikhaoui: is that what you're saying? :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh pushed 2 new commits to master: https://git.io/v7G17
<NixOS_GitHub> nixpkgs/master 128430c Lancelot SIX: pythonPackages.django_1_10: drop...
<NixOS_GitHub> nixpkgs/master 17496a2 Frederik Rietdijk: Merge pull request #27682 from lsix/drop_django_1_10...
NixOS_GitHub has left #nixos []
<aminechikhaoui> domenkozar: the trick is to do an apply like this https://github.com/NixOS/nixops/blob/master/nix/ec2.nix#L368 then get the actual value from the state: https://github.com/NixOS/nixops/blob/master/nixops/backends/ec2.py#L969
eacameron has joined #nixos
<domenkozar> aminechikhaoui: oh that's interesting
deltasquared has left #nixos ["ECONNRESET"]
<domenkozar> aminechikhaoui: but I understand why it works between instance and EIP
<domenkozar> I'm afraid that evaluating SG and EIP happens in the same nix call
<domenkozar> oh so you're saying it should be a placeholder value
<domenkozar> that is later replaced by nixops?
<domenkozar> I see :)
<domenkozar> !m aminechikhaoui
<[0__0]> You're doing good work, aminechikhaoui!
<aminechikhaoui> domenkozar: yeap right
eacameron has quit [(Ping timeout: 268 seconds)]
jensens has quit [(Ping timeout: 248 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh closed pull request #27680: gnuchess: 6.2.4 -> 6.2.5 (master...update_gnuchess) https://git.io/v7G2m
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh closed pull request #27679: oraclejdk: updated arm checksums (master...oraclejdk) https://git.io/v7Guk
NixOS_GitHub has left #nixos []
eacameron has joined #nixos
erictapen has joined #nixos
adev has quit [(Ping timeout: 240 seconds)]
aseaday has quit [(Ping timeout: 255 seconds)]
eacameron has quit [(Ping timeout: 240 seconds)]
lesce has quit [(Ping timeout: 276 seconds)]
MercurialAlchemi has quit [(Ping timeout: 246 seconds)]
eacameron has joined #nixos
[0x4A6F] has joined #nixos
eacameron has quit [(Read error: Connection reset by peer)]
eacamero_ has joined #nixos
adev has joined #nixos
eacamero_ has quit [(Ping timeout: 276 seconds)]
<gchristensen> bennofs[m]: ping
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] grahamc pushed 3 new commits to master: https://git.io/v7GSi
<NixOS_GitHub> nixpkgs/master 354c979 Peter Hoeg: mcelog: 148 -> 153
<NixOS_GitHub> nixpkgs/master f5c0607 Peter Hoeg: mcelog: use .service file from upstream
<NixOS_GitHub> nixpkgs/master 107d931 Graham Christensen: Merge pull request #27677 from peterhoeg/u/mcelog...
NixOS_GitHub has left #nixos []
magnicida has joined #nixos
deltasquared has joined #nixos
<deltasquared> hmm, is there a flag I could pass to nix-env to tell me the difference between three identically-named derivations that come up in a query
lesce has joined #nixos
<deltasquared> nix-env -qa firefox listing three lots of firefox-54.0.1, erm
<yegortimoshenko> how do i specify a per-user window manager in NixOS? just including xorg.xinit in environment.systemPackages doesn't seem to do the trick (there is a .xinitrc file but it seems to be ignored)
<lassulus> deltasquared: try -qaP
WilliButz has quit [(Quit: WeeChat 1.9)]
<deltasquared> lassulus: ... ah. that helps.
<deltasquared> wrappers... huh
<deltasquared> and yet I bet none of them have the patch to disable mandatory AMO signing.
deltasquared has left #nixos ["coffee time!"]
Wharncliffe has joined #nixos
jasom has quit [(Ping timeout: 255 seconds)]
<joepie91> aw crap
<joepie91> I missed deltasquared
<Infinisil> Oh my damn god, fail2ban is a stupid piece of crap
justelex has quit [(Ping timeout: 276 seconds)]
<manveru> is there an easy way to do like (import <nixpkgs> {}).override { somepkg = something; }
<manveru> ?
<symphorien> there is nixpkgs.config.overridePackages
ThatDocsLady has joined #nixos
bennofs has joined #nixos
bennofs has quit [(Client Quit)]
justelex has joined #nixos
* hyper_ch <3 fail2ban
bennofs has joined #nixos
<bennofs> gchristensen: pong did i break something? :)
<Infinisil> hyper_ch: You wanna help me? I've been trying to get this to work for hours
<hyper_ch> Infinisil: depends on what you're trying to do
<Infinisil> hyper_ch: Just need to block logs with a certain format
<Infinisil> "just"
<hyper_ch> that has to do with regex
<hyper_ch> regex is evil :)
<Infinisil> Indeed, and i can't get it to work
<hyper_ch> (or rather too complicated for my simple brain)
<hyper_ch> but please, do show the format
<Infinisil> The log format is: 27-Jul-2017 11:02:38.450 client @0x7f42640bd3d0 31.186.8.167#4444 (cpsc.gov): query (cache) 'cpsc.gov/ANY/IN' denied
<gchristensen> have you tried the tool that comes with fail2ban to test your logs?
<Infinisil> gchristensen: Yes I have
<gchristensen> what is this software?
<Infinisil> It seems like it's not even watching my regex
<Infinisil> fail2ban keeps blocking ips 0.0.0.{1,3,5,6,7}
<Infinisil> gchristensen: The tool fail2ban-regex shows that it's matching on those lines
<Infinisil> but then for some reason it uses those 0.0.0 ips, instead of the actual ones, I have no idea where it got those from
<gchristensen> what is your regex?
<Infinisil> gchristensen: Currently just .*<HOST>#4444.*
<Infinisil> But i tried with complete ones, and same result
<gchristensen> hm
<gchristensen> I don't know maybe there is an IRC channel for it
<Infinisil> And i really hate it that there's no input validation on nix' part, that module really needs some work
<manveru> symphorien: not sure how that's supposed to work...
<manveru> pkgs = import nixpkgs { config = {config, ... }: { config.overridePackages = { inherit yarn; }; }; };
<manveru> tried like this
<symphorien> sorrt that was packageOverrides
ebzzry has joined #nixos
<Infinisil> hyper_ch: Oh and here's my config if you wanna have a look: https://gist.github.com/anonymous/54e6da85b5e82067c8ad975c647c58eb
<Infinisil> A few hours ago (like 6) I really thought I'd have this a few minutes
<Infinisil> This whole string handling thing and file stuff and config string stuff is so messed up with linux
joehh has joined #nixos
<gchristensen> Infinisil: why not just use the already existing named / bind config file packaged with named?
<Infinisil> gchristensen: Tried it, but didn't work
<gchristensen> well that sounds much easier to fix than going it your own
<Infinisil> gchristensen: Have you seen those regexes in there? I wouldn't even know where to start fixing it
<ikwildrpepper> manveru: what exactly are you trying to do?
<ikwildrpepper> (not clear to me)
<gchristensen> not fix the regexes -- they work fine, fixing the thing which isn't working :)
cinimod has quit [(Read error: No route to host)]
<manveru> ikwildrpepper: well, yarn2nix has a default.nix that takes a pkgs argument (for nixpkgs), and it uses the yarn specified there
<gchristensen> Infinisil: did you copy your config from debian administration?
<manveru> just made a PR that makes this easier at https://github.com/moretea/yarn2nix/blob/08284838e40a41207a70a7dec3e4b43c0e7aa815/default.nix#L3 but i'd love to know how to instead modify nixpkgs to do this :
<Infinisil> gchristensen: The named config from fail2ban is from the nixos module
<ikwildrpepper> then passing pkgs as: let my-yarn = ... in (imports <nixpkgs> { config.packageOverrides = oldpkgs: { yarn = my-yarn; } }) should work
<ikwildrpepper> or is yarn at top-level just an alias to node packages or something
<ikwildrpepper> then it might not work
MercurialAlchemi has joined #nixos
<ikwildrpepper> hm, confusing, we have both a top-level yarn, as well as yarn in 2 generated node-packages .nix files
<gchristensen> niksnut: thank you :D
indi_ has joined #nixos
<bennofs> in bash, is there a difference between a=$foo and a="$foo"?
<gchristensen> no apparently not :P
<hyper_ch> Infinisil: this seems to work: fail2ban-regex -v "27-Jul-2017 11:02:38.450 client @0x7f42640bd3d0 31.186.8.167#4444 (cpsc.gov): query (cache) 'cpsc.gov/ANY/IN' denied" ".*client .* <HOST>#.*"
<gchristensen> no apparently not :P
<gchristensen> oops
<hyper_ch> result shows properly the ip and the date
<manveru> ikwildrpepper: :)
<manveru> ikwildrpepper: well, no biggie, i'm just using my fork now... it didn't fix the original problem anyway :(
<hyper_ch> bennofs: both can be used but #bash recommends to always quote expansions...
<hyper_ch> furthermore I prefer now to use "${var}" in general so since there's a difference between "${variant}" and "${var}iant"
<gchristensen> Baughn, Infinisil: nixos.org and hydra.nixos.org now have HSTS headers
<Infinisil> hyper_ch: Oh nice, didn't know that -v shows the ip
<hyper_ch> furthermore I prefer now to use "${var}" in general so since there's a difference between "$variant" and "${var}iant"
<bennofs> hyper_ch: unfortunately, ${var} is just really annoying to use with Nix :/
ThatDocsLady has quit [(Ping timeout: 240 seconds)]
<Infinisil> gchristensen: \o/
<hyper_ch> ah, properly now
<hyper_ch> Infinisil: well, as said, I'm not a pro... just a user with usualy instructions on filters and regex ;) but that seems to work
<hyper_ch> you might want to match the denied as well
<bennofs> i still don't know why the nix designers picked ${} for antiquote, did they not anticipate nix to be used with so many shell scripts? :=)
<hyper_ch> ${} is important in bash
<gchristensen> IMO if it is complicated, it should be in a separate .sh file anyway, not embedded in your nix
<spacefrogg> hyper_ch: What for? (Other than situations that can be identified from the literal source code)
<hyper_ch> (also the #bash people prefer not to use .sh extension since that denominates a general shell script and usually programs in linux don't have a file extension)
<hyper_ch> spacefrogg: parameter expansion
<gchristensen> IMO if it is complicated, it should be in a separate .bash file anyway, not embedded in your nix
indi_ has quit [(Remote host closed the connection)]
<spacefrogg> gchristensen: :)
<gchristensen> :)
<Infinisil> hyper_ch: Thanks, I'll see if that does it
romildo has joined #nixos
<hyper_ch> spacefrogg: in the cli: var="/path/to/filename.ext"; filename="${var##*/}; echo "${filename}"
<spacefrogg> hyper_ch: As I said, I do not doubt the importance of ${} in general. But all I can think of are situation that don't hit you by surprise but can be identified in the literal source code (without mental evaluation).
moritz` has joined #nixos
<hyper_ch> spacefrogg: it's just a habit of mine now to always use ${}
<spacefrogg> hyper_ch: Meaning, there is no need to pro-actively wrap expansion into ${} to avert hazard later... Okay, well, then nix'es choice was bad for your habit. :)
magnicida has quit [(Read error: Connection reset by peer)]
<hyper_ch> if you want to use parameter expansion you have to use ${} and paramenter expansion is very powerful
<gchristensen> just put the shell script in a separate file that you reference in nix and you get the best of both worlds
<moritz`> Hi, is someone here who has experience with fetchgitPrivate? I'm having trouble with permission denied errors on the file that I point to using ssh-config-file
<Infinisil> hyper_ch: Alright it doesn't work, it still bans ips 0.0.0.1 etc.. Maybe this regex doesn't even get that far..
bennofs has quit [(Quit: WeeChat 1.9)]
bennofs has joined #nixos
xadi has joined #nixos
<gchristensen> moritz`: I have used it, but don't any longer. I recommend instead checking out the git repo yourself out of nix
<gchristensen> moritz`: otherwise (imo) the security of the keys are too hard to deal witht
justelex has quit [(Remote host closed the connection)]
justelex has joined #nixos
elurin has joined #nixos
<moritz`> gchristensen: how do you mean "out of nix"? checking it out manually and then point `src` to the local repo?
joehh has quit [(Ping timeout: 255 seconds)]
<gchristensen> exactly
<gchristensen> or fetchgitLocal
elurin has left #nixos ["ERC (IRC client for Emacs 25.2.1)"]
ThatDocsLady has joined #nixos
<moritz`> ok, I see, thanks for the recommendation
whin has joined #nixos
schoppenhauer has quit [(Ping timeout: 240 seconds)]
<gchristensen> moritz`: you're welcome :) once I spent a long time documenting how to use it, then realized I shouldn't use it :P
<seequ> Any clue what could cause X using ~60% CPU when playing a video on firefox? glxinfo would suggest it's using direct rendering with my graphics card.
<seequ> The problem persist over reboots.
<aminechikhaoui> domenkozar: btw I wonder what's the use case of https://github.com/NixOS/nixops/issues/709, it seems weird that he needs to allow the machine eip in the same sg that the machine is using
<moritz`> it still would be nice though to have a good way of solving the problem with less manual work involved
<domenkozar> aminechikhaoui: the test case makes no sense, but otherwise it's another machine with a different EIP
<domenkozar> so machine A with EIP is allowed to access machine B with SG
<gchristensen> moritz`: it is unfortunately incompatible with a private repository staying private
<aminechikhaoui> domenkozar: are they within the same security group/subnet ? as maybe you can just specify a sourceGroup instead or the subnet CIDR range.
<Infinisil> Ohhh it worked
<moritz`> because it ends up in the nix store?
<aminechikhaoui> or is it needed to have a strict IP ranges instead
<Infinisil> While it did block the ip addresses 0.0.0.1 etc., it also blocked the actual ones
ThatDocsLady has quit [(Quit: Arma-geddin-outta-here!)]
<gchristensen> moritz`: well yes but also your private key becomes very publicly readable
<domenkozar> aminechikhaoui: does that work cross-region?
simukis has joined #nixos
<domenkozar> aminechikhaoui: if it works cross-region, then we could, but we're looking for ways to restrict communication between machines in different regions
justelex has quit [(Remote host closed the connection)]
<aminechikhaoui> domenkozar: ah, yeah I think it won't work cross regions
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] aszlig opened pull request #27683: Add test for ACME (master...acme-tests) https://git.io/v7Gbp
NixOS_GitHub has left #nixos []
jensens has joined #nixos
whin has quit [(Quit: Page closed)]
<Infinisil> Are you serious..
<moritz`> gchristensen: you mean the key becomes public on my machine? I guess it stays on the machine, doesn't it?
<Infinisil> A single friggin IP doesn't get blocked..
<hodapp> blaaah... how do I keep stuff from not being destroyed upon nix-collect-garbage & nix-collect-garbage -d?
<gchristensen> moritz`: it is decrypted though, and laptops get stolen, files are exfiltrated ... it scares me, and I certainly wouldn't propose anyone at work use it.
<Infinisil> Banned ones: 122.122.128.164 222.82.239.241, ... And the one that doesn't get banned for some goddamn reason: 61.217.152.40
<Infinisil> WTF
justelex has joined #nixos
<gchristensen> Infinisil: maybe this would be better in #fail2ban
<moritz`> ok, got it ;)
<Infinisil> gchristensen: Yeah sorry, I'm pretty sure nix is innocent on this one
Wharncliffe has quit [(Quit: Lost terminal)]
lesce has quit [(Ping timeout: 240 seconds)]
schoppenhauer has joined #nixos
<gchristensen> niksnut / domenkozar can you close this?
<gchristensen> or grant me permission to close it? ( ͡° ͜ʖ ͡°)
hiberno has quit [(Quit: WeeChat 1.6)]
<domenkozar> this?
<gchristensen> thanks!
magnicida has joined #nixos
<Infinisil> gchristensen: I'm both amazed by the fact this wasn't done before and how it got changed so fast
<gchristensen> I told you it was easy :P
<gchristensen> I don't remember how to configure apache, I just copy-pasted examples from the internet in to places that looked good
<Infinisil> gchristensen: Heh
<hodapp> I never learned how to configure Apache
<hodapp> I have no regrets
<Infinisil> Sometimes I bisect options so I know exactly what option actually does 'the thing'
<gchristensen> not a bad idea
<Infinisil> Well, a poor mans bisect, really just linear search
<Infinisil> Removing stuff one by one
<hodapp> it must be a binary search to be bisection!
<gchristensen> yeah, I do that too especially when configuring new hardware, where I don't want to keep around configs unless I know exactly why it is there
<hodapp> I once did that for like 4 hours on a Compaq Deskpro just to get the damn thing to boot; for some reason, with certain configurations of hard drives, it would refuse to even POST
<gchristensen> I'm experiencing that with some hardware at work :/
<hodapp> and I couldn't get into BIOS setup because Compaq, in their infinite wisdom, made the BIOS setup as separate software that you had to run from a dedicated hard disk partition
<hodapp> and I didn't have a copy of that
iyzsong has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] gnidorah opened pull request #27684: linux: BFQ Group Scheduling support (master...bfq) https://git.io/v7Zez
NixOS_GitHub has left #nixos []
<gchristensen> well that is garbage
<hodapp> ehh?
<gchristensen> the separate bios setup partition, not the PR :)
<hodapp> oh, yeah, it was silly
lesce has joined #nixos
mudri`` has quit [(Ping timeout: 248 seconds)]
justelex has quit [(Excess Flood)]
justelex has joined #nixos
<Infinisil> IRC is really only useful for channels that have like more than 200 nicks
* hodapp shrugs
<Infinisil> Or let's say 100
<hodapp> next demon to slay: can I hack up OpenCV's Python bindings generator to generate bindings to my code, so that I can use my functions alongside already-wrapped OpenCV functions?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Fuuzetsu pushed 2 new commits to master: https://git.io/v7Zf7
<NixOS_GitHub> nixpkgs/master 519b987 Mateusz Kowalczyk: jenkins: 2.66 -> 2.71
<NixOS_GitHub> nixpkgs/master 93d364f Mateusz Kowalczyk: mongodb: we already set quiet in config
NixOS_GitHub has left #nixos []
phinxy has joined #nixos
hiberno has joined #nixos
catch22_ has quit [(Remote host closed the connection)]
mudri`` has joined #nixos
dannyg has joined #nixos
<gchristensen> nah IRC is great for lots of things even slow channels
<gchristensen> it took a week, but a very small channel in a very different timezone got a big problem solved that I couldn't crack
<LnL> there are only ~50 people in ##nix-darwin
lewo has quit [(Ping timeout: 276 seconds)]
ng0 has joined #nixos
peti has quit [(Ping timeout: 255 seconds)]
peti has joined #nixos
takle has quit [(Remote host closed the connection)]
metaphysician has joined #nixos
peel has quit [(Ping timeout: 240 seconds)]
cpennington has joined #nixos
<adisbladis[m]> gchristensen: When you feel comfortable increasing the HSTS max-age you should consider the preload option :)
<gchristensen> adisbladis[m]: it doesn't make a difference AFAIK unless we can set includeSubdomains
<gchristensen> or does it?
takle has joined #nixos
<yorick> how do people feel about adding --enable-tpm to the systemd configure flags?
<yorick> it'd enable systemd-boot to do tpm measuring
<gchristensen> adisbladis[m]: if we can extend the nixos.org configuration files to add SSL to planet and a few other domains, we can includeSubdomains an preload.
<gchristensen> niksnut: are there other subdomains other than releases.nixos.org planet.nixos.org?
<Infinisil> Well screw fail2ban, I just wrote a script that does the thing I want in bash in 5 minutes
<gchristensen> nice
<bennofs> s/does the thing I want/appears to do the thing I want # fixed that for you
<Infinisil> A whole day wasted
<adisbladis[m]> gchristensen: I think Firefox will still take preload submissions without includeSubdomains but I might be wrong
<Infinisil> bennofs: Well it works for these standard 'attacks' I'm getting now, which are all exactly the same (but fail2ban couldn't do it for some goddamn reason)
<Infinisil> I just do `cat logfile | grep 'thing that identifies attack' | awk 'extract ip' | sort | uniq` and then do an `ip route blackhole` for every ip
<Infinisil> And that every minute
iyzsong has quit [(Read error: Connection reset by peer)]
<gchristensen> adisbladis[m]: I'd rather go all the way :P
<avn> yorick: if it not breaks systems with grub2
<yorick> avn: why would it?
<yorick> it's only in systemd-boot
<avn> yorick: just don't know, if it affect pid 1 component, or not. It why i asked
<yorick> avn: I checked the systemd source and all mentions of 'tpm' seem to be in boot/
joehh has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth opened pull request #27686: tinc_pre: avoid infinite loop with EBADFD on network restart (master...tinc-ebadf) https://git.io/v7Zt1
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth closed pull request #27675: nixos/tinc: remove Device from tinc.conf (master...patch-4) https://git.io/v7G3U
NixOS_GitHub has left #nixos []
eacameron has joined #nixos
joehh_ has joined #nixos
peel has joined #nixos
joehh has quit [(Ping timeout: 240 seconds)]
Infinisil has quit [(Quit: See ya)]
eacameron has quit [(Ping timeout: 255 seconds)]
joehh_ has quit [(Read error: Connection reset by peer)]
peel has quit [(Ping timeout: 240 seconds)]
<adisbladis[m]> gchristensen: Of course that is the correct thing :)
darlan has joined #nixos
justelex has quit [(Ping timeout: 240 seconds)]
darlan has quit [(Quit: Communi 3.5.0 - http://communi.github.com)]
reinhardt has joined #nixos
goibhniu1 has joined #nixos
hamishmack has quit [(Ping timeout: 240 seconds)]
reinzelmann has quit [(Ping timeout: 260 seconds)]
goibhniu has quit [(Ping timeout: 276 seconds)]
goibhniu1 is now known as goibhniu
reinhardt has quit [(Client Quit)]
junaidali has quit [(Read error: Connection reset by peer)]
FRidh has quit [(Quit: Konversation terminated!)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] peti pushed 2 new commits to master: https://git.io/v7ZnZ
<NixOS_GitHub> nixpkgs/master 86b230e Peter Simons: hackage-packages.nix: automatic Haskell package set update...
<NixOS_GitHub> nixpkgs/master 382db8a Peter Simons: cabal2nix: version 2.4 needs Cabal 2.x
NixOS_GitHub has left #nixos []
junaidali has joined #nixos
lpsmith has quit [(Ping timeout: 246 seconds)]
radvendii has joined #nixos
eacameron has joined #nixos
joehh has joined #nixos
<joehh> hey clever - I solved my issue
mattops has joined #nixos
lpsmith has joined #nixos
<joehh> I had the line: amqp = pkgs.haskell.lib.dontCheck (pkgs.haskellPackages.amqp_0_15_1);
<joehh> rather than amqp = pkgs.haskell.lib.dontCheck (self.amqp_0_15_1);
<joehh> once I changed it - all was good
<joehh> I don't understand, but it seems that somehow fetching the package from a different scope meant that
<joehh> the packages included were confused in some way
<joehh> thanks for your help
<joehh> :)
<joehh> anyway, I'm now off to bed :)
<joehh> only been beating my head up against this for about 3 days, So pleased to have solved it
radvendii has quit [(Ping timeout: 255 seconds)]
aseaday has joined #nixos
hamishmack has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] abbradar pushed 36 new commits to master: https://git.io/v7ZCQ
<NixOS_GitHub> nixpkgs/master bba6ba2 Nikolay Amiantov: svox: 2016-10-20 -> 2017-07-18
<NixOS_GitHub> nixpkgs/master a14ebe5 Nikolay Amiantov: python.pkgs.libarcus: 2.4.0 -> 2.6.1
<NixOS_GitHub> nixpkgs/master 85faf94 Nikolay Amiantov: python.pkgs.uranium: 2.4.0 -> 2.6.1
NixOS_GitHub has left #nixos []
aseaday_ has joined #nixos
aseaday_ has quit [(Remote host closed the connection)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] elitak opened pull request #27687: factorio: 0.15.30 -> 0.15.31 (master...factorio-version) https://git.io/v7ZCp
NixOS_GitHub has left #nixos []
MercurialAlchemi has quit [(Ping timeout: 248 seconds)]
aseaday has quit [(Ping timeout: 268 seconds)]
lesce has quit [(Ping timeout: 240 seconds)]
aseaday has joined #nixos
joehh has quit [(Ping timeout: 260 seconds)]
aseaday_ has joined #nixos
aseaday_ has quit [(Remote host closed the connection)]
aseaday_ has joined #nixos
aseaday has quit [(Ping timeout: 255 seconds)]
Ivanych has quit [(Ping timeout: 255 seconds)]
aseaday_ has quit [(Remote host closed the connection)]
aseaday has joined #nixos
the-kenny has quit [(Remote host closed the connection)]
Neo-- has joined #nixos
[0x4A6F] has quit [(Remote host closed the connection)]
the-kenny has joined #nixos
pmeunier has quit [(Ping timeout: 240 seconds)]
nslqqq has quit [(Ping timeout: 248 seconds)]
takle has quit [(Remote host closed the connection)]
Rotaerk has quit [(Quit: Leaving)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] abbradar pushed 1 new commit to master: https://git.io/v7Z8a
<NixOS_GitHub> nixpkgs/master 732207f Nikolay Amiantov: citra: fix license field
NixOS_GitHub has left #nixos []
takle has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] rnhmjoj opened pull request #27688: nixos/networking-interfaces: make static routes configurable (master...routes) https://git.io/v7Z44
NixOS_GitHub has left #nixos []
fikse has joined #nixos
m0rphism has joined #nixos
bennofs has quit [(Ping timeout: 246 seconds)]
nslqqq has joined #nixos
takle has quit [(Remote host closed the connection)]
justelex has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] konimex opened pull request #27690: nawk: init at 2012122 (master...nawk) https://git.io/v7ZRT
NixOS_GitHub has left #nixos []
DrWaste has quit [(Quit: Run away!)]
jb55 has joined #nixos
erasmas has joined #nixos
radvendii has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] edolstra pushed 2 new commits to master: https://git.io/v7ZE8
<NixOS_GitHub> nixpkgs/master d31e7ee Muhammad Herdiansyah: nawk: init at 20121220
<NixOS_GitHub> nixpkgs/master 8dfa472 Eelco Dolstra: Merge pull request #27690 from konimex/nawk...
NixOS_GitHub has left #nixos []
ng0 has quit [(Remote host closed the connection)]
rpifan has joined #nixos
ng0 has joined #nixos
peel has joined #nixos
aseaday has quit [(Remote host closed the connection)]
<mpickering> I'm trying to build a haskell package but something is going wrong with hs-source-dirs not being taking into account. It tries to find the executable file in . rather than src/ (as specified in the cabal file)
<mpickering> any ideas?
adev has quit [(Quit: Ex-Chat)]
civodul has quit [(Quit: ERC (IRC client for Emacs 25.2.1))]
cement_ has joined #nixos
rpifan has quit [(Ping timeout: 246 seconds)]
peel has quit [(Ping timeout: 240 seconds)]
takle has joined #nixos
<mpickering> the configured component graph also looks completely wrong compared to older ghc versions
<mpickering> maybe it is a bug in ghc head
jb55 has quit [(Ping timeout: 276 seconds)]
Filystyn has joined #nixos
Filystyn has quit [(Changing host)]
Filystyn has joined #nixos
dannyg has quit [(Quit: dannyg)]
Myrl-saki has quit [(Ping timeout: 248 seconds)]
snikkers has quit [(Remote host closed the connection)]
timon37 has joined #nixos
[0x4A6F] has joined #nixos
mattops has quit [(Quit: Textual IRC Client: www.textualapp.com)]
ebzzry has quit [(Ping timeout: 276 seconds)]
moritz`` has joined #nixos
moritz` has quit [(Ping timeout: 240 seconds)]
moritz`` has left #nixos []
[0x4A6F] has quit [(Ping timeout: 248 seconds)]
hamishmack has quit [(Quit: hamishmack)]
bennofs has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] dezgeg pushed 1 new commit to master: https://git.io/v7Zoc
<NixOS_GitHub> nixpkgs/master 4456076 Tuomas Tynkkynen: keyutils: 1.5.9 -> 1.5.10
NixOS_GitHub has left #nixos []
cpennington has quit [(Ping timeout: 240 seconds)]
xadi has quit [(Quit: Leaving.)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin closed pull request #27686: tinc_pre: avoid infinite loop with EBADFD on network restart (master...tinc-ebadf) https://git.io/v7Zt1
NixOS_GitHub has left #nixos []
xadi has joined #nixos
lesce has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nix] edolstra pushed 4 new commits to master: https://git.io/v7Z6K
<NixOS_GitHub> nix/master 6d7de7f Eelco Dolstra: builtins.fetchgit: Cache hash -> store path mappings...
<NixOS_GitHub> nix/master 69deca1 Eelco Dolstra: builtins.fetchgit: Use proper refs locally
<NixOS_GitHub> nix/master 9f64cb8 Eelco Dolstra: builtins.fetchgit: Respect tarball-ttl...
NixOS_GitHub has left #nixos []
jb55 has joined #nixos
lesce has quit [(Ping timeout: 268 seconds)]
cpennington has joined #nixos
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/a905b7cd0c (from 9 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
ng0 has quit [(Quit: Alexa, when is the end of world?)]
nix-gsc-io`bot has quit [(Client Quit)]
stanibanani has joined #nixos
vagrant- has joined #nixos
Acou_Bass is now known as eddie
<pie_> i have this in a shell.nix https://gist.github.com/22459/3ca61965774a308b99ef3ad90f6becc7 , 1) what is ().env, 2) how can i get more non-python packages with this?
<pie_> i.e. how do i add them
eddie is now known as Acou_Bass
__Sander__ has quit [(Quit: Konversation terminated!)]
[0x4A6F] has joined #nixos
fikse has quit [(Ping timeout: 260 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] adamruzicka opened pull request #27691: notmuch: 0.24.2 -> 0.25 (master...notmuch-0.25) https://git.io/v7ZPh
NixOS_GitHub has left #nixos []
<orbekk> buffer #slaskcraft
jb55 has quit [(Quit: Lost terminal)]
phinxy has quit [(Read error: Connection reset by peer)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin pushed 1 new commit to openssl-1.1: https://git.io/v7ZXi
<NixOS_GitHub> nixpkgs/openssl-1.1 35bc455 Robin Gloster: pysideShiboken: fix with python 3
NixOS_GitHub has left #nixos []
Infinisil has joined #nixos
phinxy has joined #nixos
joshie_ is now known as joshie
<pie_> unrelated, is there a url that redirects to the latest unstable nixexprs? so i can do something like nix-shell -I unstable=https://nixos.org/channels/[...]/latest.tar stuff
DzamoNorton has joined #nixos
indi_ has joined #nixos
romildo has quit [(Quit: Leaving)]
<pie_> oh nevermind i figured that one out >_>
nschoe has quit [(Quit: Program. Terminated.)]
alx741 has joined #nixos
<pie_> awesome \o/
endformationage has joined #nixos
nh2 has quit [(Ping timeout: 255 seconds)]
magnicida has quit [(Ping timeout: 255 seconds)]
alx741 has quit [(Client Quit)]
FRidh has joined #nixos
FRidh has quit [(Client Quit)]
alx741 has joined #nixos
<domenkozar> peti: would you be ok moving all overrides stuff out of cabal2nix and into nixpkgs?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] risicle opened pull request #27692: aws-auth: init at unstable-2017-07-24 (r17.03 backport) (release-17.03...aws-auth-r17.03) https://git.io/v7ZMB
NixOS_GitHub has left #nixos []
Infinisil has quit [(Remote host closed the connection)]
Infinisil has joined #nixos
indi_ has quit [(Ping timeout: 240 seconds)]
fikse has joined #nixos
mudri`` is now known as mudri
danl1240 has joined #nixos
Acou_Bass has left #nixos []
fikse has quit [(Ping timeout: 240 seconds)]
Acou_Bass has joined #nixos
<pie_> i mean i guess i probably need to wrap the thing in some kind of function but i have no idea.
fikse has joined #nixos
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03 advanced to https://github.com/NixOS/nixpkgs/commit/6bf7904140 (from 21 hours ago, history: https://channels.nix.gsc.io/nixos-17.03)
nix-gsc-io`bot has quit [(Client Quit)]
<sphalerite[m]> Is there a way to override a python package for all python versions?
<sphalerite[m]> Using ~/.config/nixpkgs/config.nix
<pie_> i guess what i mean is for example what is the expression equivalent of nix-shell -p packagea packageb
jensens has quit [(Ping timeout: 276 seconds)]
<pie_> im not having much luck googling this. everything is for nix expressions for a *single* package
<sphalerite[m]> pie_: something like with pkgs; runCommand "nix-shell" {buildInputs = [packagea packageb];} ":"
<pie_> sphalerite[m], i think i meant just {buildInputs = [packagea packageb];} ? i mean so that i would do nix-shell shell.nix
<pie_> or maybe ...mkderivatoin?
<pie_> *mkDerivation
<sphalerite[m]> yeah if you have the expression I just wrote in shell.nix you can nix-shell it to get basically the same as nix-shell -p packagea packageb
<peterhoeg> Hey, does anyone know if it's OK to backport a new package and nixos module to current stable?
<peti> domenkozar: What overrides stuff do you mean? The ones from PostProcess.hs?
<sphalerite[m]> pie_: runCommand is just a frequently more convenient wrapper around mkDerivation
<domenkozar> peti: yup
vagrant- has left #nixos ["Using Circe, the loveliest of all IRC clients"]
<peti> domenkozar: Why should that code live in Nixpkgs rather than in cabal2nix?
<pie_> sphalerite[m], what does ().env do?
<domenkozar> peti: so it can be reused by other tools and so that it belongs with package set in nixpkgs
<domenkozar> also for shorter cycles of improvements
<sphalerite[m]> pie_: it gets the env attribute of ().
<pie_> ok i guess...whats the .env attribute?
pietranera has quit [(Quit: Leaving.)]
<sphalerite[m]> That depends on what () is. I'm guessing you mean () as a placeholder because AFAIK it's not a valid nix expression
<sphalerite[m]> but for example `{env = 4;}.env` evaluates to 4 :)
<peti> domenkozar: cabal2nix is a library, so all that code can be re-used by other tools, no?
<domenkozar> peti: yes, but library is released at different times
<domenkozar> so different nixpkgs branches and cabal2nix have to be in sync
<domenkozar> so I wonder if there's a reason to keep that code there
<domenkozar> since we have duplicated things in common-configuration*.nix
<domenkozar> not duplicated, but for same purpose
<peti> Well, people who run cabal2nix to generate build instructions for their development project may need those overrides in place for the build to succeed, and then those overrides must be known to cabal2nix. If that information is in Nixpkgs, then that won't help them because they aren't necessarily building something inside of Nixpkgs.
xadi has quit [(Ping timeout: 268 seconds)]
<pie_> sphalerite[m], the whitespace is all screwed up, but hows this?: https://gist.github.com/22459/abeb1bc75d59da96282278a62725684a
DzamoNorton has quit [(Quit: DzamoNorton)]
<peti> I suppose there's a handful of overrides configured in cabal2nix that don't need to be there, but in some cases (like git-annex) the know-how built into cabal2nix is necessary to generate a workin expression.
nix-gsc-io`bot has joined #nixos
timon37 has quit [(Read error: Connection reset by peer)]
<nix-gsc-io`bot> Channel nixos-17.03-small advanced to https://github.com/NixOS/nixpkgs/commit/0213a1865c (from 14 hours ago, history: https://channels.nix.gsc.io/nixos-17.03-small)
nix-gsc-io`bot has quit [(Client Quit)]
<domenkozar> peti: cabal2nix could still use NIX_PATH to fetch those
xadi has joined #nixos
<sphalerite[m]> pie_: buildEnv is different from using runCommand
<peti> domenkozar: Yes, the name mappings are an entirey different topic. Those lists actually depend on the version of Nixpkgs that's being used and should therefore be stored in there.
<sphalerite[m]> using runCommand is probably easier if you just want to have a shell.nix to enter an interactive shell.
<pie_> sphalerite[m], yeah i figure..it works but i have no idea where its documented
<pie_> oh
<pie_> * ok
<domenkozar> peti: ok, I'll start with those then :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin pushed 1 new commit to master: https://git.io/v7ZHt
<NixOS_GitHub> nixpkgs/master 2799a94 Robin Gloster: zfs, spl: 0.6.5.11 -> 0.7.0
NixOS_GitHub has left #nixos []
<sphalerite[m]> Yeah I can't see documentation for it either
<sphalerite[m]> If it works then sure, no problem with using it
<sphalerite[m]> but personally I'd just use runCommand because I actually know what's happening there
<pie_> sphalerite[m], how can i rearrange it so that the let expression doesnt blow up the whole thing?
<sphalerite[m]> is there anything wrong with what you have there?
<sphalerite[m]> Can't you just use it as is?
ThatDocsLady has joined #nixos
<pie_> i can it just feels weird blowing up path = [] with it
takle has quit [(Read error: Connection reset by peer)]
takle has joined #nixos
<pie_> well, its fine i guess
<pie_> thanks
georges-duperon has joined #nixos
bennofs1 has joined #nixos
<cement_> I'm trying to get the haskell library libexpect to build, but it's not downloading or building either of the foreign library deps
<cement_> afaik, this line should grab those: librarySystemDepends = [ expect tcl ];
<yegortimoshenko> does anyone use services.windowManager.exwm? it throws an "get-device-terminal: Display :0 not found" for me
<yegortimoshenko> s/an//
<avn> globin: error: attribute ‘zfsStable’ missing, at /home/avn/nixos/nixpkgs/pkgs/top-level/all-packages.nix:13:2 (looks like you break something ;))
<yegortimoshenko> s/services.windowManager.exwm/services.xserver.windowManager.exwm/
<bennofs1> Is there a recent NixOS on RPi3 image?
<pie_> uhhh...is it possible to pass arguments through nix-shell to --run?
<bennofs1> pie_: oh? what exactly do you want to do?
<pie_> hold on i think i just confused myself. one second.
<pie_> i have a shell.nix with a shebang line, and i want it to call a script similarly to nix-shell --run, but the script takes an argument
<pie_> and i want the first argument to shell.nix to be passed on to that script
<LnL> you can use -i to set the interpreter
<sphalerite[m]> pie_: you could move the let to the top just below with import …
<LnL> and the rest of the arguments should be passed to that like a regular shebang
<pie_> LnL, hmmmm ok, how would i set my interpreter to bash?
<LnL> #! nix-shell -i bash ...
<pie_> that doesnt seem to work
<pie_> $ nix-shell -i bash --run "echo hi"
<pie_> error: getting status of ‘/mnt/data/sync/Sync/crosscode-mod-tools/src/bash’: No such file or directory
<pie_> thats my cwd/bash
<LnL> that only works when you use it as a shebang
<pie_> oh ok
<pie_> so this should work?:
<pie_> #! /usr/bin/env nix-shell -v -I unstable=https://nixos.org/channels/nixpkgs-unstable/nixexprs.tar.xz --run "script.sh" -i bash
<bennofs1> pie_: I don't think you need the --run
<LnL> not sure if you can put everything on the same line
<dhess`> bennofs1: I believe that Dezgeg's aarch64 image works on RPi3. https://www.cs.helsinki.fi/u/tmtynkky/sd-image-aarch64-linux.img
<dhess`> bennofs1: I haven't tested it yet on Rpi3 but it works, more or less, on a Jetson TX1, which is also aarch64. I think that Rpi3 is the primary dev vehicle for that image.
<bennofs1> dhess`: thanks!
<disasm> I should be taking notes :) I have an rpi3 in the closet I've been meaning to install nixos on
* bennofs1 searches for his microSD adapter...
<pie_> bennofs1, LnL, huh, it complains about not finding default.nix
<LnL> hmm, maybe it needs a -p bash?
<pie_> it complains even if i leave out the -i
<pie_> i think it might have something to do with this double shebang thing
<bennofs1> pie_: what nix version are you running?
<gchristensen> pie_: what exactly is your nix-shell shebang line?
<pie_> #! /usr/bin/env nix-shell
<pie_> #! nix-shell -I unstable=https://nixos.org/channels/nixpkgs-unstable/nixexprs.tar.xz
<gchristensen> you need to have a -i bash
<LnL> yeah it needs -p otherwise it tries to use an expression just like nix-shell
<pie_> ok
<pie_> in that case i get these:
<LnL> ^ that works
<pie_> the script itself works in the normal case
<bennofs1> pie_: you want to distribute a script together with a nix expression?
<pie_> i mean the nix expression works in the normal case
<bennofs1> pie_: generally, you put the nix-shell shebang onto a script, not onto a nix expression
darlan has joined #nixos
<pie_> ok apparently i needed to pass --run
<bennofs1> not sure if you can get it to run an arbitrary command...
<pie_> but its not propagating the arguments like that
<pie_> i think im basically clusterf***ing this xD
<pie_> oh yeah i wanst very observant, now i get it
<pie_> yeah im trying to shebang a nix expression
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] hectorj opened pull request #27693: nomad: 0.5.6 -> 0.6.0 (master...nomad-0.6.0) https://git.io/v7ZpL
NixOS_GitHub has left #nixos []
<pie_> not a script
<disasm> pie_: those errors looks like your trying to pass shell.nix to the bash interpreter
<pie_> disasm, yeah thats what was happening, i misunderstood what was meant earlier
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-unstable advanced to https://github.com/NixOS/nixpkgs/commit/a7c8f5e419 (from 24 hours ago, history: https://channels.nix.gsc.io/nixos-unstable)
nix-gsc-io`bot has quit [(Client Quit)]
reinzelmann has joined #nixos
darlan has quit [(Quit: Communi 3.5.0 - http://communi.github.com)]
takle has quit [(Remote host closed the connection)]
<pie_> the couldnt find default.nix problem was because i wasnt running the script from the same directory
<pie_> which seems dumb
bennofs1 has quit [(Ping timeout: 248 seconds)]
zarel has joined #nixos
cpennington has quit [(Ping timeout: 255 seconds)]
<pie_> my problem is that i want to create an environment with nix then run a command in it, but i need to pass arguments to that command
<pie_> so this isnt actually a shebang specific problem i think
<Infinisil> pie_: Okay I just started reading your messages, you're trying to be able to ./file.nix so it runs a command using the declared environment?
nh2 has joined #nixos
<disasm> pie_: can you just add a shellHook with the command you want to run to your file?
<sphalerite[m]> Note to self: unintentional DoS attacks by well-meaning, trusted users should also be considered when securing a system…
alphor has quit [(Quit: Bye!)]
<dash> sphalerite[m]: did someone post a link on hacker news
<seequ> Hey, has anyone here used i3 on nixos? It seems to ignore the config file set with `services.xserver.windowManager.i3.configFile`
alphor has joined #nixos
cpennington has joined #nixos
<LnL> I do, but mainly use that machine headless
<LnL> what release are you using?
sheenobu has joined #nixos
<seequ> How can I check that?
<LnL> sudo nix-channel --list
<sphalerite[m]> dash: no, some people with shells on a server I manage ran a bunch of memory and disk-intensive processes. Caused disk space to run out yesterday, and RAM to run out today (trying to SSH into the machine to fix the issue was a major pain and involved multiple timeouts)
<LnL> or nixos-version
<seequ> 17.03
<dash> sphalerite[m]: ingrates!
<disasm> seequ: are you using writeFile with services.xserver.windowManager.i3.configFile?
zraexy has joined #nixos
<seequ> disasm: I'm using a path to a config in /etc/nixos/i3.config
peel has joined #nixos
stanibanani has quit [(Ping timeout: 276 seconds)]
<sphalerite[m]> dash: it wasn't intentional and it's my fault really
<sphalerite[m]> I should enforce limits on their resource consumption, because they run batch jobs and these shouldn't disrupt normal access to the machine
<LnL> disasm: looks ok for me
rauno has quit [(Remote host closed the connection)]
nh2 has quit [(Ping timeout: 240 seconds)]
<seequ> `services.xserver.windowManager.i3.configFile = /etc/nixos/i3.config;`
alx741_ has joined #nixos
peel has quit [(Ping timeout: 255 seconds)]
lesce has joined #nixos
<Infinisil> Shouldn't the path be quoted?
<Infinisil> Ah no
<LnL> doesn't have to be
<LnL> I'm using services.xserver.windowManager.i3.configFile = "/etc/i3.conf";
alx741 has quit [(Ping timeout: 240 seconds)]
<seequ> Hmm wait, does it not get copied to a store path?
<LnL> and define environment.etc."i3.conf"
<Infinisil> seequ: If you don't quote it it gets copied to the store and the one in the store used
<LnL> have you tried to restart the display manager?
<seequ> LnL: I reeboted a few times while trying to get it to notice it.
<LnL> it might be trying to use an old version since you where using a store path
<seequ> FTr the same config works in ~/.config/i3/config
<Infinisil> LnL: But the store path would update when the file changes right?
<seequ> Hm, that file never had exec i3-config-wizard, which gets run
<LnL> yes but reloading the i3 configuration would continue to use the old version
lesce has quit [(Ping timeout: 260 seconds)]
<seequ> yup
<LnL> since the config file it was started with didn't change
<LnL> that's why I'm using the environment.etc indirection
<seequ> Hmm, how does environment.* work?
<seequ> Ah, that's how. :P
<LnL> environment.etc."i3.conf".srouce = ./i3.config;
<catern> hey #nixpkgs
<catern> oops
<catern> hey #nixos
<LnL> err .source
<catern> I want to reimplement something like callPackages for my own Nix tree thingy
<catern> are there any gotchas here?
<seequ> LnL: I'll try that
<catern> it seems pretty incredibly complicated
<Infinisil> catern: I'd just look at how it's done in nixpkgs
<catern> is there a way to get something simple working quickly?
<LnL> callPackageWith mypkgs
<catern> Infinisil: yeah, I'm looking at it, but it's hard to disentangle from other Nixpkgs features :)
<Infinisil> catern: There are also a ton of other call*Package functions you could look at
<catern> hmm... actually, I guess I could just take a dep on nixpkgs
<catern> and somehow reuse it
ElGoreLoco has joined #nixos
<catern> I suppose I could set my stuff up in the same way as other foreign package systems are currently set up
<catern> like pythonPackages etc.
erictapen has quit [(Ping timeout: 240 seconds)]
<catern> and make a mppsPackages.nix (my proprietary package system) in top-level/
<Infinisil> catern: `rg 'build.+Package = '` in nixpkgs
jgertm has joined #nixos
<catern> yes, I'm looking at them
<seequ> LnL: It actually worked!
<LnL> great :)
<catern> do you think it would be easier to make my own thing independently, or to use the existing infrastructure in nixpkgs?
<catern> I have a use for an overlays-style thing, too...
<seequ> I'm a bit confused why the direct path didn't
<Infinisil> catern: Use nixpkgs of course, there's a whole bunch of maintained everything in there, why wouldn't you wanna use that
<ElGoreLoco> Hello. I'm trying to run a rust project and when I run `cargo run` it prints `error: could not execute process \`target/debug/test\` (never executed)`. I think I understand why it doesn't work: NixOS doesn't let you execute arbitrary binaries, but I don't know how to run my project in other way. Is there a way to use `cargo run` in NixOS or should
<ElGoreLoco> I try other thing?
<dash> catern: any reason you're not doing your thing as a nixpkgs overlay?
<simpson> Does anybody happen to know offhand which part of texlive contains the `xdvi` executable?
<Infinisil> ElGoreLoco: As long as the binaries are executable, you can run them no problem
<ElGoreLoco> then I don't know what I'm doing wrong because I haven't been able to run other binaries
<dash> simpson: looks like it's 'texlive.xdvi'
jonte has joined #nixos
<simpson> dash: So, I thought so too, but it's already part of the scheme and yet there's no xdvi executable in my Nix store.
<Infinisil> simpson: Should be in basic
<niksnut> ElGoreLoco: to run 3rd party binary, you probably need to use patchelf
<niksnut> grep nixpkgs for patchelf --set-interpreter ... --set-rpath ...
<catern> dash: because I want to have more overlays on top of it! :)
<simpson> Infinisil: Yes, it should be. And yet, it is not. What do you get for $(nix-shell -p texlive.combined.scheme-basic --run 'which xdvi')?
<catern> hmm I guess that's possible though
<catern> dash: are overlays used in nixpkgs itself?
<LnL> catern: that's not a problem if you put your things in a separate attrset
<catern> I want to do something as official and goodly as possible
<Infinisil> simpson: Ohh, I think it's in the texlive-xdvi package
<pie_> Infinisil, yeah what you said i think
<dash> simpson: oh, 'texlive.bin.xdvi'
<tilpner> catern - Can you use lib.callPackageWith? What prevents you from using overlays on top of it?
<Infinisil> Hmm, but I can't nix-shell it
<Infinisil> dash: Ahh there we go
<catern> LnL: a separate attrset? like, pkgs.myProprietaryPackageSystem.[names of packages]?
<catern> but yeah, I think I should look at overlays
<simpson> dash, Infinisil: Ha, and now it's compiling. Apparently this is a less-than-always-needed sort of thing.
<pie_> disasm, is there a page where this api stuff is documented? :I i cant find anything explaining shellhook
<Infinisil> catern: If you've used the packageOverlays you already know how nixpkgs overlays work ;)
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
<dash> simpson: i guess everyone just waits to look at ps/pdf now? :)
<LnL> catern: that just adds an extra toplevel attrset to nixpkgs
<Infinisil> simpson: What does this binary even do?
<catern> Infinisil: packageOverlays
<catern> LnL: I see, seems good
<pie_> disasm, can shellhook take arguments from the cli?
sheenobu has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] edolstra pushed 1 new commit to master: https://git.io/v7nkb
<NixOS_GitHub> nixpkgs/master 63d7b6e Eelco Dolstra: makeImageFromDebDist: Add extraDebs arguments...
NixOS_GitHub has left #nixos []
<Infinisil> pie_: Don't think so, you'll probably need to pass them with --arg/--argstr
<catern> see I just want to avoid using features that are only meant for customizations
<sphalerite[m]> pie_: what exactly are you trying to achieve?
<simpson> Infinisil: It's a DVI viewer.
<pie_> Infinisil, ah well that will work
<catern> for example, in Emacs, core Emacs is not allowed to use advice (a way to add extra pre/post-processing to functions), it's restricted to use by the user, because it doesn't compose well
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] edolstra pushed 1 new commit to release-17.03: https://git.io/v7nIf
<NixOS_GitHub> nixpkgs/release-17.03 38f0eaa Eelco Dolstra: makeImageFromDebDist: Add extraDebs arguments...
NixOS_GitHub has left #nixos []
<catern> I want to avoid using such features like that :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] chpatrick opened pull request #27694: Make gcc5 a nativeBuildInput for OpenCV. (master...master-opencv-fix) https://git.io/v7nIk
NixOS_GitHub has left #nixos []
<dash> catern: what are you concerned about not composing well
<seequ> LnL: Do you know of a way to run both the system config and user config for i3?
<dash> there's no need to use overlays within nixpkgs because overlays are a technique for allowing separate maintenance, which isn't needed inside a single repo
<Infinisil> catern: I think packages should only contain config options for things the build output depends on, e.g. support for certain features
<catern> dash: but if overlays are good and fully featured, then wouldn't it be a useful unification to use them both inside and outside nixpkgs?
<pie_> Infinisil, how would i do that
<pie_> Infinisil, this is what i look like right now https://gist.github.com/22459/3350190a771151dae320fb7c2dfc222a
<pie_> um i think you can ignore the -i nix-shell, it doesnt help :P
<catern> but okay, it sounds like overlays are definitely what I want
<catern> or at least, the closest thing out there
ElGoreLoco has quit [(Quit: http://www.kiwiirc.com/ - A hand crafted IRC client)]
<Infinisil> pie_: Just wrote this as a simple demo: https://gist.github.com/124a4048a33d6c9216182db47ea0164c
<Infinisil> You can run it with nix-shell --argstr thing "Test"
<pie_> ok thanks ill give it a shot
nser has joined #nixos
<pie_> \o/
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
<pie_> Infinisil, does shellhook work with buildenv?
<pie_> (whats the difference with mkderivation?)
<nser> I am learning to install hydra by following the link https://nixos.org/hydra/manual/#idm140737315970768
<dash> catern: no? I don't really know how to state this any clearer, overlays are designed for use cases like yours, they would not benefit nixpkgs internally :)
<Infinisil> pie_: I don't know if there's a shellHook for buildEnv
<nser> But it throws DBIx::Class::Storage::DBI::catch {...} (): DBI Connection failed: DBI connect('/var/lib/hydra/hydra.sqlite','',...) failed: unable to open database file at /nix/store/12mhs2h73lx3az5f2gncwsgdvw9lk2b9-hydra-perl-deps/lib/perl5/site_perl/5.24.1/DBIx/Class/Storage/DBI.pm line 1517. at /nix/store/sb802bmaxl1gaq73rxrn94pbfyxvn8dk-hydra-2017-07-24/bin/.hydra-init-wrapped line 12
<nser> when executing `hydra-init` command.
<nser> how to fix this?
joepie91 has quit [(Read error: Connection reset by peer)]
<Infinisil> pie_: buildEnv is really just to build an environment composing multiple paths, mkDerivation can do much more complex stuff
joepie91 has joined #nixos
joepie91 has quit [(Changing host)]
joepie91 has joined #nixos
<pie_> i see
<LnL> nser: you have to set the database url
<pie_> oh wow...half the stuff you guys have said are in the man page.....
<Infinisil> pie_: man pages are pretty handy ;)
sheenobu has joined #nixos
<pie_> oh crap the --args thing takes me back to the same problem though
<nser> variables are added to .pgpass and .profile with host points to 127.0.0.1
<Infinisil> pie_: That is?
<nser> but it still fails
<pie_> im calling the script like: "$progpath/nix-scripts/shell.nix" in a bash script
<nser> can it read ip directly?
<pie_> i might just have to give up on the whole shebang thing :P
<nser> the postgresql is at local.
<pie_> Infinisil, so i cant pass --args to it like this i dont think? :P
<Infinisil> pie_: Oh you mean using --arg in the shebang.. hmm
<pie_> well not necessarily
<pie_> shellHook would work, but i need to pass args through somehow
<pie_> bleh what i said makes no sense
<Infinisil> pie_: Where are you using these args?
<LnL> nser: leave out the host= part or use 127.0.0.1 if it's on the same host, don't remember
<pie_> well id be doing shellHook = "${pathtoscript}/script.sh ${scriptargs}"
<pie_> not that generic, but thats the gist of it
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] florianjacob opened pull request #27695: nixos/systemd-networkd: allow [Link] section in .network files (master...networkd-unmanage-ifs) https://git.io/v7ntW
NixOS_GitHub has left #nixos []
<Infinisil> pie_: Hmm.. I've seen some complicated stuff in shellHook before, hold on
georges-duperon has quit [(Ping timeout: 240 seconds)]
<pie_> Infinisil, the problem is really just with going from getting cli args to having access to them on the inside
<pie_> and afaict there actually isnt a way to do it
<nser> looks like using 127.0.0.1 or leave it out both don't work.
<nser> sad~
<pie_> well, actually i guess the shebang approach is partially at fault too
<pie_> because that makes the nix-shell commandline static
<pie_> hm...how does shebang normally handle cli args?
<Infinisil> pie_: I have no idea, shebangs are kindof a mystery to me
<pie_> i mean if you shebang bash, then arguments get passed through...so its possible
stubborn_d0nkey has quit [(Ping timeout: 240 seconds)]
<Infinisil> pie_: Here is a decent example of something more complicated: https://github.com/mozilla/nixpkgs-mozilla/blob/master/update.nix
<Infinisil> You call it with e.g. nix-shell update.nix --argstr package garbas
<pie_> Infinisil, right but the reason i cant do that is because its called by the shebang line
<pie_> in my case
<Infinisil> And you can also set a default argument, so it's optional to set it
<Infinisil> pie_: Yeah, i don't know about using shebangs
<pie_> i think ill just have to call it normally
<Infinisil> Have only caused confusion and frustration for me
<pie_> obviously passing through the aruments needs to be handled by the interpreter
<pie_> which nix-shell doesnt have a way to do apparently
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
<Infinisil> pie_: I think the best would be to have a ./nix folder where you keep your shells and envs, and have a ./bin folder where you put very simple bash scripts that just call nix-shell ../nix/file.nix --argstr hello test
<pie_> well thats basically what im going to do now
<pie_> so yea
<pie_> yay i got it to work
bennofs1 has joined #nixos
<pie_> (with the simpler method :P)
nser has quit [(Quit: Page closed)]
<Infinisil> pie_: With shebangs?
bennofs has quit [(Ping timeout: 276 seconds)]
<pie_> no, without
<Infinisil> pie_: Nice
<Sonarpulse> I'm not sure what to do about this
stanibanani has joined #nixos
Ivanych has joined #nixos
<Infinisil> Damn, I have 7 copies of ghc.. 3 copies of rust 1.20, 4 times a Go
Isorkin has joined #nixos
Isorkin has quit [(Client Quit)]
<Infinisil> Well I guess that's what you get for using unstable and having generations to roll back to
<LnL> Sonarpulse: I looked at it, but I don't really know enough about the setup hooks to review it
<Sonarpulse> LnL: well it's more conceptual than code nitty-gritty I'm worried about
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] aszlig pushed 1 new commit to master: https://git.io/v7n3m
<NixOS_GitHub> nixpkgs/master 664bbed aszlig: all-packages.nix: Fix evaluation error for zfs...
NixOS_GitHub has left #nixos []
<Sonarpulse> the setup hook stuff we do is bad
<Sonarpulse> and should be changed
<Sonarpulse> so not knowing the status quo is no impediment for coming up with something new!
<gchristensen> ^
<gchristensen> however, do be cautious when doing that close to a release :)
<Drakonis[m]> this is why beta testing exists!
<Infinisil> gchristensen: Wouldn't you just not put it in the release if it's not stable?
<Sonarpulse> gchristensen: yes that's a catch-22
<Drakonis[m]> beta testers died for your sins
<Sonarpulse> especially as I want cross to make 17.09
<gchristensen> Infinisil: no, releases get taken from master
<Sonarpulse> and some cc-wrapper changes are unavoidable
<gchristensen> if it is in master, it will be unpleasant to _undo it_ for release :)
<Infinisil> gchristensen: I see..
phinxy has quit [(Quit: Leaving)]
<gchristensen> our release model is we take master and branch off to release-17.09 and then get it ready to go
<Infinisil> I'm actually amazed how well stdenv and this whole hook stuff has worked so far, even though it's so hacked together
<gchristensen> yeah
<gchristensen> the whole nixpkgs tree gets tested against it each time it changes, so it is hard to break it without noticing quite promptly
josiah has joined #nixos
<josiah> does anybody here have any idea how difficult it would be to get a Hadoop cluster up and running with NixOS as the bare-metal OS for the servers
<josiah> would it be much more difficult or different from what I would do on RedHat or Ubuntu?
ambro718 has joined #nixos
<Infinisil> gchristensen: True, I actually have this going which would require a full rebuild, didn't you just make some issue about full rebuilds stuff so it can be done together?
fikse has quit [(Ping timeout: 248 seconds)]
takle has joined #nixos
<LnL> Sonarpulse: should have read the description first, makes a lot more sense with some context :)
<Sonarpulse> :)
<Infinisil> gchristensen: Ah right, a project
<aszlig> josiah: there is no service module for as far as i can see from a quick grep, so i'd expect it to be more difficult as you probably need to write one
<Infinisil> gchristensen: Could you add my issue there?
<gchristensen> Infinisil: your issue isn't a PR :)
<Infinisil> gchristensen: Ohhh right
<Infinisil> gchristensen: Maybe I'll open one
<gchristensen> also I'm not certain my project is useful
<Infinisil> gchristensen: Why not?
<gchristensen> I dunno, I don't really do much with staging / mass rebuilds
<gchristensen> but there are some old, small mass rebuild PRs I'd like to see merged
<gchristensen> but they're not Really Big Value PRs so nobody has merged them
<LnL> Sonarpulse: so the salt is something like HOST/TARGET when doing a cross build?
<Sonarpulse> it's the platform itself
<Sonarpulse> for better or worse
<Infinisil> gchristensen: So the project you created is just perfect for that
<Sonarpulse> that means when not doing cross
<Sonarpulse> the flags get mixed together like they do today
<LnL> right
<Sonarpulse> the only underlying requirement is the same cc-wraper derivation needs to be used in any context
<Sonarpulse> it would be annoying to have to rebuild context-specific wrappers
sheenobu has joined #nixos
<Sonarpulse> (oh, and by "context" i mean "are we targeting "host" like normal, or "build" and "target" instead)
<Sonarpulse> that said, instead of using salt
<Sonarpulse> I could use ${!something} to choose names on the fly
<Infinisil> gchristensen: How long do you think nix-build -A hello will take on a full rebuild?
<gchristensen> no idea :)
<gchristensen> we can rebuild all of nixpkgs in about 24hrs
<Sonarpulse> Infinisil: not too bad
<Infinisil> Because I'm gonna do it now, to verify my changes work
<Sonarpulse> hour tops?
<Sonarpulse> I forget, but do it a lot
<gchristensen> the trouble is in stdenv you're bootstrapping, so there is no opportunity to fan-out to other build servers
<Infinisil> Well I guess once the base packages are there such as libc, it's gonna be pretty fast
<Infinisil> Sonarpulse: Building an hour, making a single change, building an hour, etc. :P
<Sonarpulse> well, yes
rpifan has joined #nixos
ericsagnes has quit [(Ping timeout: 255 seconds)]
ThatDocsLady has quit [(Quit: Arma-geddin-outta-here!)]
<Infinisil> Another benefit if IPFS ever gets integrated, is that you can cancel at any point during a fetch and it can always resume
<Infinisil> And if something like ninja2nix gets integrated into every build process, then you could even cancel at *any* point during a build and resume
<gchristensen> ninja2nix is definitely interesting
bennofs has joined #nixos
<gchristensen> it highlights the slowness of nix starting a build
bennofs has quit [(Client Quit)]
<Infinisil> gchristensen: Ohh, true, why is that anyways?
<gchristensen> all the sandboxing takes a toll
<gchristensen> building & sending drvs etc
<gchristensen> I dunno what else
seanz has joined #nixos
seanz has quit [(Client Quit)]
<gchristensen> but the purity of nix isn't free
<Infinisil> gchristensen: Hmm, I may check that after my hello compiled
<bennofs1> slowness... reminds me that I wanted to try and patch some sort of profiler into nix for profiling Nix code
<Infinisil> gchristensen: What's the slow part of being pure?
<bennofs1> anybody have suggestions for metrics to profile? eval time by let binding, or eval time by attr binding, ... ?
<gchristensen> all the sandboxing takes a toll
<Infinisil> Ah that
<gchristensen> but I'm no expert at this
<gchristensen> quite novice actually
<bennofs1> also, Nix builds in general may run more slow because of long search paths
<bennofs1> on most distributions, you have ~5 or so paths in include dirs, on Nix it is a lot more
<Infinisil> Maybe the future even holds AST editors in sight and SCID (source code in database), could accelerate evaluation a lot
<bennofs1> not sure how much that matters though
* bennofs1 is just surprised that nixpkgs eval (not building) takes so long right now
<Infinisil> bennofs1: The library paths?
<bennofs1> Infinisil: idk how much it matters in building, but I think I've seen an extreme case (not on a SSD) where some program took ages to start because it needed to look through all the RPATH directories
<Infinisil> Ah or just general paths and env vars are longer
oida has joined #nixos
<bennofs1> Infinisil: yes in general there's more different paths. if you search for "foo.h" on a "normal" distro there are not so many possibilities, on NixOS you have to search a lot more directories
<Infinisil> bennofs1: Hmm, makes me think if there isn't a better way. PATH really doesn't serve it's original purpose in nix, we should really be using stuff like ${pkgs.foo}/bin/<foo> more
<gchristensen> yeah it is easy to have a massive rpath
<Infinisil> what's rpath?
fikse has joined #nixos
erictapen has joined #nixos
<sphalerite[m]> Do we have any sort of solution to the issue of mass rebuilds causing mass redownloads? It would be nice if mass rebuilds that don't have a large effect on the non-roots nodes of the dependency trees in question (which I suspect is frequently the case) could be downloaded as patches from previous versions rather than being redownloaded entirely
<sphalerite[m]> i.e. smarter substitution
<gchristensen> Infinisil: rpath is how a program finds its libraries
<gchristensen> stored in its ELF
reinzelmann has quit [(Quit: Leaving)]
<Infinisil> sphalerite[m]: IPFS :)
<Infinisil> gchristensen: Ah I see
<sphalerite[m]> Infinisil: I don't see how a content-addressed distributed filesystem solves that problem
<bennofs1> Infinisil: i should say runpath. it's stored in the elf header (of libraries too!) and specifies the search path for other libraries
<gchristensen> Infinisil: this chain of open / stat calls is looking in its rpath for its libraries: https://gist.github.com/grahamc/a5566e72b16783f986f7566bbcfa6ac1
oida_ has quit [(Ping timeout: 255 seconds)]
<gchristensen> this of course doesn't have to search a dozen rpath entries, just one
<Infinisil> sphalerite[m]: It's a recursively cached filesystem. If you already have package x with files [ a b c ] and only c changes, then you only need to download c again
<sphalerite[m]> Infinisil: it improves the distribution problems users in Asia seem to have, but it doesn't reduce the absolute amount to download surely
<Infinisil> sphalerite[m]: And this happens down to block-level (4K or something)
<sphalerite[m]> Oh nice
<Infinisil> Or if you already have a package that contains file x and you want to download another package that has file x, you won't download x again
<sphalerite[m]> yeah
<sphalerite[m]> nice
<Infinisil> This also eliminates the need for nix-store --optimize
<bennofs1> Infinisil: only problem is that NARs are generally stored in compressed form
<bennofs1> it would require you to store all NARs in uncompressed form
<Infinisil> bennofs1: I'm not really up-to-date with ipfs and nix, but I thought there was like a compressed ipfs format that could be used
<bennofs1> but perhaps you save more by exploiting similaries between different nars than you do by compressing individual ones? quite likely that this is the case
<Infinisil> bennofs1: Good point
<bennofs1> Infinisil: another nice thing about that would be the ability to download individual files from a NAR without downloading the full NAR
<Infinisil> But still, compression would be appreciated, but maybe this should be done at the IPFS level (as in ipfs handles compressing and uncompressing on transfer)
<bennofs1> Infinisil: it is not only transfer. storage itself costs money, so it should be optimized
<Infinisil> bennofs1: Indeed, I think that's how mounting /ipfs does it, downloads files by hash when they are accessed
<Infinisil> Imagine having a completely lazy nixos, you download files once you need them
<bennofs1> Example why downloading individual files would be nice: getting just build-support/propagated-build-inputs would be nice for tools :)
<Infinisil> bennofs1: Damn, really motivates me to learn more about the internals of nix and ipfs so i could maybe contribute and make it reality
ericsagnes has joined #nixos
<sphalerite[m]> Would it actually be nars that get fetched via ipfs though?
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
<seequ> It's amusing when you make a slight change in vimrc and nix goes "created 5254 symlinks"
<sphalerite[m]> Also, completely lazy nixos sounds nice in principle but kind of terrible in practice, because you have delays the first time you use anything and they'll probably frequently sneak up on you
<pmade> If two overlays both use `haskellPackages.override' then the second one doesn't see the changes from the first. I would expect this to work though. Any ideas?
sheenobu has joined #nixos
<Infinisil> sphalerite[m]: Well it wouldn't be fully lazy i guess, stuff like kernels, big stuff would be prefetched
georges-duperon has joined #nixos
zarel has quit [(Ping timeout: 276 seconds)]
<sphalerite[m]> It would probably be great for some use cases
<sphalerite[m]> something something cloud
<Infinisil> sphalerite[m]: What do you mean?
<sphalerite[m]> but not for interactive use. I think.
<sphalerite[m]> I'm thinking some sort of deployment to a magical nixy PaaS
<sphalerite[m]> mostly for stuff where latency doesn't matter as much as throughput
<pbogdan> pmade: could this issue be relevant https://github.com/NixOS/nixpkgs/issues/25887 ? I don't know much about the details involved but sounds similar though
<gchristensen> my nixos trial at work has cut down hardware provisioning to 1/60th the time of the incumbent system :D
<Infinisil> sphalerite[m]: I'm having a hard time realizing what you mean by that, an example?
<sphalerite[m]> Niiiice!
<LnL> gchristensen: :O
ng0 has joined #nixos
<pmade> pbogdan: Wow, that's exactly it. Thanks!
<Infinisil> gchristensen: Nicuu
<Infinisil> So by hardware provisioning you mean setting up machines which was done imeratively before?
<gchristensen> starting from an empty disk to running the desired configuration
<sphalerite[m]> Infinisil: batch processing sort of stuff. In buzzwords, "big data"
<Infinisil> gchristensen: Ahh, the perfect usecase for nix, nice
<Infinisil> nixos*
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] dtzWill opened pull request #27696: skype: remove deprecated (master...fix/one-skype-to-call-them-all) https://git.io/v7nWc
NixOS_GitHub has left #nixos []
<bennofs1> sphalerite[m]: perhaps also for things like travis-ci? just imagine having every dependency that you'd need appear "automatical"
<bennofs1> but perhaps that's too much magic / auto
<Infinisil> bennofs1: Ohh yes
<Infinisil> no that's exactly what we need
<sphalerite[m]> bennofs1: yeah, that counts as a batch processing sort of thing in my book
<Infinisil> I truly believe that's where the future lies
<bennofs1> Infinisil: well I think you quickly hit some problems with ambiguous versions though
Nobabs27 has joined #nixos
<bennofs1> Like Qt5 vs Qt4 or Python3.5 vs Python3.6
<sphalerite[m]> but nix solves that problem.
<sphalerite[m]> It would be accessing store paths with the (unambiguously identifying) hash in them
<dtzWill> like, "nix-store -r" on attempts to access paths you don't ahve yet? hahaha
<sphalerite[m]> no?
<Infinisil> Yeah, hashes all the way
<bennofs1> oh, yes, you'd need specially compiled binaries / scripts then
dywedir has joined #nixos
<bennofs1> that sounds like a good use case
<bennofs1> "universal binary". autoinstalls dependencies on run
ison111 has joined #nixos
<sphalerite[m]> how so?
<bennofs1> sphalerite[m]: well, they need to refer to store paths and not rely on $PATH etc
<sphalerite[m]> nah, just have a special filesystem mounted on /nix/store
<gchristensen> this sounds insane :o
<dtzWill> seems like could be solved with a special filesystem
<sphalerite[m]> bennofs1: is that really "special" in the nix world?
<sphalerite[m]> referring to store paths, that is
<bennofs1> ah yes it would work for any nix compiled things
drakonis has joined #nixos
<Infinisil> What I imagine is an display server that shows hashes as what they actually are, e.g. a hash for a haskell function gets shown as "name :: type" and maybe some github reverse dns link
<dtzWill> I'm unclear re:use cases where you know the hash/hashes you'd need and /might/ invoke or access one or more but you don't know
<sphalerite[m]> of course they're nix compiled, who in their right mind wouldn't use nix? :p
<bennofs1> i thought for a moment it could perhaps also work for shell scripts that rely on PATH, by creating a NixOS install that just has symlinks to everything in Nix
<LnL> dtzWill: nice job with the queue runner fixes :)
* bennofs1 needs to learn Perl
<dtzWill> sphalerite[m]: a big downside to using Nix is I'm a lot less tolerant of problems that it solves than I used to be :P:P hahaha
<gchristensen> LnL, dtzWill link?
Nobabs27 has quit [(Client Quit)]
<sphalerite[m]> yep same dtzWill
<dtzWill> "well if you just used Nix you wouldn't have any of those problems, you know..."
<sphalerite[m]> yeah
<dtzWill> and what you're trying to do is already on our binary cache...
<dtzWill> >.<
<dtzWill> lol
<Infinisil> I didn't know I had the problems nix solved before I used it..
<dtzWill> if I was at a company I'd be pushing for people to use it, but since I'm in academia ATM it's a bit more free-for-all :):)
<sphalerite[m]> I did. Docker led me towards the light at an angle
xadi has quit [(Ping timeout: 255 seconds)]
<sphalerite[m]> Infinisil: I don't think that your idea is that useful for CI though. CI benefits massively from having well-specified dependencies, which we have with nix expressions and not so much with your idea... I htink?
lesce has joined #nixos
<dtzWill> LnL: thanks! :D edolstra did the initial fix ^_^
<dtzWill> gchristensen: https://github.com/NixOS/hydra/issues/496 is where it started
<gchristensen> nice!
<LnL> oh I thought you did both
<dtzWill> and the commit bennofs1 linked was a fixup for a regression introduced there, well more like an oversight in that impl
takle has quit [(Remote host closed the connection)]
<dtzWill> LnL: I figured out the problem ._.
<dtzWill> and edolstra's been doing a few other improvements too
<dtzWill> better beavhior on queue restart, etc
<Infinisil> sphalerite[m]: Not sure, I feel like the one fragile thing on nixpkgs is that versions aren't fixed, so updating x will update x for everything that uses x
<dtzWill> fingers crossed no more waking up to a huge unprocessed queue lol
<Infinisil> And different versions are truly horrible with nixpkgs let's be honest
<dtzWill> Infinisil: err
<josiah> aszlig: thanks for the insight
<dtzWill> Infinisil: I feel like that's what nix is amazing at dealing with D:
<grahamc> Same
<Infinisil> Hmm..
<dtzWill> Infinisil: nixpkgs, perhaps less so, but for any app you can just keep the same nixpkgs and it'll work forever
<Infinisil> Maybe you're right, it isn't actually much of a problem
<dtzWill> in a way that is more or less unthinkable on other distributions
<dtzWill> well so if you upgrade with nix-env -u what you say is true
<dtzWill> and sometimes it's cumbersome to pin things or override things the way you want
<grahamc> But it is possible which is the magic
<dtzWill> but TBH that could probably be solved with a smidge of tooling if that was thought a big failing
<dtzWill> grahamc: exactly
<Infinisil> nixpkgs just doesn't handle versions, at all
<sphalerite[m]> Yeah exactly, and you can always track nixpkgs channels (thanks to gchristensen's API and webhooks) and rebuild whenever your application or nixpkgs updates
<Infinisil> or just in a hacky way
<sphalerite[m]> Git isn't hacky!
<grahamc> Sure we do, we have openssl_1_1
lesce has quit [(Ping timeout: 240 seconds)]
<Infinisil> sphalerite[m]: But then a package gets updated from 1.1 to 1.7 and you don't have all the versions inbetween
<grahamc> True
<dtzWill> Infinisil: hmm, what would be something nixpkgs could do or facilitate if it handled versions in a different way?
<dtzWill> oh
<Infinisil> grahamc: This is more of adhoc versioning
<dtzWill> *oh*
<dtzWill> nixpkgs is more of a curated set of packages known (mostly) to work properly together
<bennofs1> Infinisil: i don't think this can be solved with tools. it is a human problem
<Infinisil> dtzWill: I don't know, probably it wouldn't even work, because someone has to validate that certain package sets work together
<grahamc> To be honest a huge amount of power of nix comes from the fact that we don't have a dependency solver
<sphalerite[m]> I don't think it's a feasibly solvable problem to handle all these different permutations
<sphalerite[m]> Because everything has dependencies
<Infinisil> Yeah
<bennofs1> nobody can test the combinatoric explosition that results from multiple versions of everything
<bennofs1> and nobody is able to give correct version bounds, so the best solution is to just stick to one and hope it works
<dtzWill> and https://lwn.net/Articles/712318/ which I happened to be reading again early today actually :)
<Infinisil> But then there are problems such as packages requiring older version of other packages, and then you need to keep around multiple versions
<dtzWill> I suppose we could make it easier to replace a package with a diferent version in a more natural way, especially in the case where you want to specify using a library that /used/ to be in-tree but isn't any longer
<dtzWill> Infinisil: keeping around older versions sure seems like the way to go, gc periodically and away you go
josiah has quit [(Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)]
josiah has joined #nixos
<dtzWill> that, and things like nix store optimization (file-level not more granular) keep things working without interfering, which is just so powerful for what seems would be standard haha
<Infinisil> Agreed
<sphalerite[m]> Infinisil: that's a problem with software maintenance, not the tools we have
<dtzWill> and I think loose version bounds don't really make sense for OS-level packages, unlike perhaps worlds of javascript or such
<Infinisil> dtzWill: It makes sense when you want to have bug-fix updates
<grahamc> Are you sure you're not just looking for dpkg or yum? :)
<dtzWill> Infinisil: well one person's bug-fix is another person's feature breakage
<Infinisil> grahamc: I wouldn't wanna switch in a thousand years
<Infinisil> dtzWill: True
<grahamc> Well that is the idea behind those tools
<dtzWill> although the need to "rebuild" all the things to push a security update is a bit of a flaw but it's one we know how to solve but just requires moderate effort that no one seems sufficiently bugged to invest xD
* bennofs1 dreams of a future where nix can be used as just a backend for automatically using the language specific tool
<Infinisil> I guess all I'm trying to say is that all the glory of nix comes with a small prize to pay
<bennofs1> (and language specific tools have enough info to successfully, reproducibly build the app/lib)
<Infinisil> bennofs1: They also have to do it though, compilers just do random stuff sometimes (it's also a kind of optimizing i think)
<Infinisil> But the randoms could be seeded anyways
<dtzWill> Infinisil: I am very interested in discussing these things and understanding people's thoughts on all of these matters, don't misunderstand my opinions as unwillingness to be convinced otherwise O:)
<Infinisil> dtzWill: Same, I really like these kind of open discussions :D
cwre is now known as usr_bin_env
<bennofs1> Infinisil: ah with reproducible i just meant that it has enough info to recreate the build. not necessarily that it'll be bit-for-bit deterministic
<dtzWill> been working on a paper that tackles issues close to these, haha, been writing the intro and working on sounding convincing and confident so people listen xD. Bit of that tone leaked over lol
<Infinisil> bennofs1: Ah right, mixing these terms up sometimes
usr_bin_env is now known as cwre
xadi has joined #nixos
<Infinisil> dtzWill: I'm interested, what's the paper about?
<dtzWill> as far as I know, most compilers consider lack of determinism a serious bug
<bennofs1> I think the Haskell + Nix integration is really close to that future: almost any haskell package can be generated by cabal2nix cabal://package
<dtzWill> problems encountered are often due to impure environments or build systems injecting things and whatnot
<dtzWill> only exception is the use of techniques like PGO and its related sibling, auto-tuning
<sphalerite[m]> What are they?
<Infinisil> sphalerite[m]: The problems?
<sphalerite[m]> PGO and auto-tuning
<dtzWill> Infinisil: well I'm still sorting out which piece to highlight, but basically --
<dtzWill> sphalerite[m]: PGO== profile-guided optimization, or FDO (feedback-driven optimization), and.. yep wiki
<sphalerite[m]> aaah ok
<sphalerite[m]> nice
<dtzWill> auto-tuning is often instal-time and it "searches" through a parameter space to find the best approach on your system
<sphalerite[m]> ah
<Infinisil> dtzWill: This kind of thing really interests me too
<dtzWill> math-y things often do it, I think the classic example is FFTW
sphalerite[m] is now known as sphalerite
<Infinisil> Ah, so auto-tuning is e.g. when sorting that it chooses the best algorithm for the array size
<Infinisil> Right?
<sphalerite> No AFAIU it's for system-specific stuff rather than input-specific stuff
<Infinisil> sphalerite: Hardware acceleration/GPU/special instructions kinda stuff?
<dtzWill> Infinisil: basically I've built a system based on nixpkgs/NixOS that has everything as LLVM IR instead of native code; as a result Software built this way can be analyzed, transformed, and somewhat transcends the normal limitations imposed by rigid binary code formats
<sphalerite> Infinisil: yeah that's how I interpreted it. But I only just heard of it for the first time from dtzWill so I may be wrong
<dtzWill> Infinisil: so as an example you know how before we were talking about wanting two apps X and Y that had deps on A1 and A2 (versions of 'A') and how it's lame to have to keep all of A1 and A2 around?
<Infinisil> dtzWill: Interesting, what do you mean by "system", what's the product?
<sphalerite> Infinisil: but on the topic of adjusting algorithms/data structures to input, I read this rather interesting article recently http://ridiculousfish.com/blog/posts/array.html
<dtzWill> in my system, since you don't ahve to treat them as opaque binary blobs, I can identify and deduplicate (on disk, or in memory) code shared between the two copies of 'A'
<dtzWill> also gives lets you get the best benefits of dynamic/shared linking and static linking, or anywhere inbetween in that design space
<Infinisil> dtzWill: So it's like one giant LLVM module?
<dtzWill> Infinisil: haha, it could be! And sometimes, it is! :) It also lends itself to chunking into a content-addressed store but I've only done prelim experiments with that
<dtzWill> so slightly more practically, this lets you be flexible/dynamic about what code it used but still have the performance and memory footprint of a carefully statically liniked application
<Infinisil> dtzWill: Nice! This seems to be close to SCID
<dtzWill> (and without the security problems of dynamically loading code, at least in the common case where it's not needed)
<dtzWill> Infinisil: yes.
sjouke has joined #nixos
<dtzWill> I can also use this to emit minimal docker containers or whatnot
<dtzWill> actually, most of the software on my system is built this way and is JIT'd with a code-cache or AOT-compiled
<dtzWill> :D
<sphalerite> that's pretty crazy
<sphalerite> Where do I get it? :p
* Infinisil looks up AOT
fikse has quit [(Ping timeout: 240 seconds)]
<dtzWill> Infinisil: ahead-of-time, as opposed to just-in-time (JIT); means compiled before executed, as opposed to JIT'ing which compiles during execution
<Infinisil> Ah, Ahead-of-time
[0x4A6F] has quit [(Ping timeout: 255 seconds)]
<dtzWill> basically it says hey there are lots of problems caused by the way we build, package,and distribute software--especially the requirement that the organization of software be the same across all of those
<Infinisil> dtzWill: So is this a full blown (well let's say a terminal) OS you boot into?
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03-small advanced to https://github.com/NixOS/nixpkgs/commit/38f0eaa570 (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-17.03-small)
nix-gsc-io`bot has quit [(Client Quit)]
<dtzWill> Infinisil: I run NixOS (kernel-level magic is long-term) and install most of my bits from a nix channel that does things this way
<Infinisil> dtzWill: Ohh, so this can enable you to have stuff from everything that compiles to LLVM IR be compiled and linked together without any problems?
<dtzWill> or provides software in self-contained format; it's a bit inefficient ATM but that's just to keep things reliable while still exploring what makes the most sense
<dtzWill> eep one sec, phone call!
<sphalerite> That sounds really cool
<Infinisil> It really does
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
[0x4A6F] has joined #nixos
<Infinisil> Oh and my hello build failed..
phreedom has joined #nixos
andyshinn has joined #nixos
<sphalerite> How can I override a python package, and have the overridden version used for dependents as well?
<sphalerite> (and ideally also override it easily for all versions of python)
<sphalerite> Is that reasonably doable with packageOverrides or an overlay, or should I jsut be editing my copy of nixpkgs?
lesce has joined #nixos
<Infinisil> sphalerite: I think it should be possible to create a new python package set with something like pythonPackages.override { ...}, then you could use that for other dependants
<sphalerite> I want it to affect *everything* inside pythonPackages though
<sphalerite> Looks like editing my nixpkgs is the least painful way to do it
<Infinisil> sphalerite: Doesn't that do that? Every package in the overriden one should use the overriden package, not the old one
<Infinisil> I think
<sphalerite> AFAIK that's what overrideAttrs does (and overrideDerivation doesn't) but pythonPackages only has overrideDerivation which also doesn't actually work by the looks of it
<Infinisil> sphalerite: Does overrideAttrs not work on python ones?
lesce has quit [(Ping timeout: 258 seconds)]
<Infinisil> I'd think it does, since python really just uses mkDerivation underneath
jonte has quit [(Ping timeout: 248 seconds)]
<dtzWill> (phone call over)
sheenobu has joined #nixos
<dtzWill> Infinisil: well somewhat interestingly getting a proper view of a program<-->its libraries is surprisingly dificult; "naive" attempts, for example, to treat shared and static things interchangeably will fail miserably despite build systems that try to provide abstractions that they're interchangeable :)
<dtzWill> Infinisil, sphalerite: really glad you think so--hoping to make the whole thing super-public ASAP, really makes me sad it isn't already
xadi has quit [(Ping timeout: 255 seconds)]
<dtzWill> recently started pushing all my builds to S3/cloudfront, got that all setup so hopefully interested folks can have a field day with it
<sphalerite> Infinisil: overrideAttrs does work on pythonPackages.xyz but not on pythonPackages
<sphalerite> as in the overrideAttrs attribute doesn't even exist on pythonPackages
<dtzWill> if nothign else, it provides the first complete representation of a huge set of legacy software, ready for actual use as you would normally
<Infinisil> dtzWill: Nice! I'll look out for it
<dtzWill> with use cases like easy specialization for a config or at install-time or what-have-you
cement_ has quit [(Ping timeout: 255 seconds)]
<dtzWill> our kinda bad website is here: https://allvm.org
<bennofs1> sphalerite: .override should do it, not .overrideAttrs
sjouke has quit [(Ping timeout: 246 seconds)]
<Infinisil> sphalerite: ^^
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] rycee pushed 5 new commits to master: https://git.io/v7nu2
<NixOS_GitHub> nixpkgs/master 19425c7 Robert Helgesson: python-PyICU: 1.9.6 -> 1.9.7
<NixOS_GitHub> nixpkgs/master 78815d0 Robert Helgesson: mimeo: 2017.2.9 -> 2017.6.6
<NixOS_GitHub> nixpkgs/master fc75595 Robert Helgesson: gmic: remove myself as maintainer
NixOS_GitHub has left #nixos []
<Infinisil> Just found some examples in nixpkgs doing pythonPackages.override { ...
<sphalerite> isn't override just what's generated by callPackage and allows changing what's passed to the package function
<dtzWill> I think it's incredibly awesome haha but TBH would be very interested in hearing thoughts/input/ideas from any/all that wouldn't mind offering their perspective/insights
[0x4A6F] has quit [(Ping timeout: 240 seconds)]
<bennofs1> sphalerite: oh right, you want to override *a* python package, not *the* python package :)
<sphalerite> as opposed to overrideAttrs which is generated by mkDerivation and allows changing what's passed to mkDerivation
<bennofs1> sphalerite: generally, what you want is fixpoint .extends
cpennington has quit [(Remote host closed the connection)]
<dtzWill> current problem re:paper writing is selling it to people who don't understand the problems being solved are problems, aka people who have never tried to run a distro or build any non-trivial amount of software on linux lol
<bennofs1> let's see if pythonPackages uses fixpoints
<sphalerite> exactly!
<dtzWill> err link should be: http://allvm.org
<dtzWill> ..anyway
<dtzWill> thanks for listening folks O:)
<sphalerite> Again, it seems more painless to just edit my nixpkgs checkout and I'm looking for rapid results not the most perfect solution, just this once
fikse has joined #nixos
<dtzWill> haha yeah, there are too many mini-abstractions across all the langauges and whatnot
<bennofs1> sphalerite: well i kinda want to know how to do it anyway though :)
<sphalerite> I need to have some software running on my chromebook and pytest's tests are stopping me
<dtzWill> and once you find yrouself pulling up all those files anyway might as well just ahve your own fork :P
simukis has quit [(Ping timeout: 258 seconds)]
<Infinisil> sphalerite: I think somewhere in here is what you're looking for: https://github.com/NixOS/nixpkgs/blob/master/doc/languages-frameworks/python.md#how-to-override-a-python-package
<dtzWill> maybe we need an RFC on consistent package overrides, wait I think there was one at least related..
<bennofs1> dtzWill: SOS
<sphalerite> yes, that does look like what I'm looking for
stanibanani has quit [(Ping timeout: 248 seconds)]
<sphalerite> but meh, I've edited my nixpkgs checkout and it seems to be building and it was easier
<dtzWill> phone call I had earlier? Amazingly was actually about Nix haha--fellow who was confused why my ".override" example worked and his ".override { doCheck = true; }" didn't work
<sphalerite> (which I'm guessing is an indication that yes, we do need consistent overriding)
<sphalerite> hah, it's even related to doCheck just like what I'm doing
<sphalerite> nice
<dtzWill> and I started to explain the different but then... really I'm not clear why that "must" be so complicated and one-off esp for agreed-upon attributes like doCheck
<Infinisil> dtzWill: He needed overrideAttrs right?
<dtzWill> Infinisil: yeah, believe so. Whichever variant is the currently recommended way to do that
<bennofs1> Infinisil: no, he needed pythonPackages.override { packageOverrides = self: super: ... }
<dtzWill> overrideInDerivation was a thing at some point? Or thereabouts?
<bennofs1> dtzWill: that's not overrideInDerivation. pythonPackages handles packageOverrides for python pkgs
<Infinisil> bennofs1: I meant the { doCheck = true; } thing mentioned by dtzWill
<bennofs1> OH i'm dumb sorry i should read :/
<Infinisil> Np ;)
<dtzWill> bennofs1: sorry I meant for "standard" packages, and certainly didn't mean to contradict your answer re:python
* dtzWill didn't know about pythonOverrides anyway hahaha
<Infinisil> Nixpkgs is full of mysteries
<bennofs1> what's a mistery to me is why the choose to call it "packageOverrides" when haskellPackages already had the exact same thing but calls it just 'overrides' :/
<Infinisil> bennofs1: Probably history related
<bennofs1> Infinisil: pretty sure Haskell was the first :)
<Infinisil> Ah, well then maybe people just didn't notice it, I have written stuff for nixpkgs before without realizing it already exists
willprice94 has joined #nixos
<sphalerite> yeah I think there's generally a lot of duplication of functionality in nixpkgs
<sphalerite> and many different APIs for what is frequently a very similar concept
<sphalerite> well, interfaces. They don't really count as APIs I guess.
<Infinisil> May I share my favorite nix function: https://gist.github.com/Infinisil/61819aba39551bb6cd023ba7913c2e20
<Infinisil> I wrote this a few days ago and I'm so proud/amazed by it
<Infinisil> It transforms a (potentially nested) attribute set into a store tree with files at the end
xadi has joined #nixos
k2s has joined #nixos
xadi has quit [(Client Quit)]
xadi has joined #nixos
silver_hook has joined #nixos
silver_hook has quit [(Changing host)]
silver_hook has joined #nixos
k2s has quit [(Client Quit)]
bennofs1 has quit [(Ping timeout: 260 seconds)]
georges-duperon has quit [(Quit: Leaving)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/v7naE
<NixOS_GitHub> nixpkgs/master 229b249 Jörg Thalheim: sysdig: 0.16.0 -> 0.17.0
NixOS_GitHub has left #nixos []
<catern> if I use super.callPackage in an overlay like this, will my package be evaluated with dependencies from super or from self? https://nixos.org/nixpkgs/manual/#sec-overlays-layout
magnetophon has quit [(Ping timeout: 240 seconds)]
<catern> I want to use callPackage with dependencies on new packages I am adding...
<sphalerite> catern: super.callPackage if you want only original deps, self.callPackage if you want the stuff you've added/changed.
<catern> OK
bennofs has joined #nixos
<catern> it's just that the doc said "This set (super) should be used [...] to access functions defined in Nixpkgs. "
toppler` has quit [(Remote host closed the connection)]
<catern> I guess that clearly doesn't include callPackage
<sphalerite> well it does
<sphalerite> But in a lot of cases it makes sense to use self
<sphalerite> the thing with using self is the risk of infinite recursion, which you don't have using super
<seequ> Infinisil: Hey that's actually pretty nifty.
<catern> sphalerite: ah I see, of course
<dtzWill> haha
xadi has quit [(Ping timeout: 276 seconds)]
erictapen has quit [(Ping timeout: 268 seconds)]
<sphalerite> joepie91: nice
<joepie91> I can generally recommend that book btw, it's well-written and full of really terrible jokes :)
<Infinisil> seequ: Thanks! I used it for putting my ssh keys on https://keys.infinisil.io
[0x4A6F] has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] jfrankenau closed pull request #26963: vaapiIntelG45H264: init at 1.8.2 (master...vaapiIntelG45H264) https://git.io/vQl6E
NixOS_GitHub has left #nixos []
willprice has joined #nixos
willprice has quit [(Max SendQ exceeded)]
peel has joined #nixos
[0x4A6F] has quit [(Ping timeout: 240 seconds)]
willprice94 has quit [(Read error: Connection reset by peer)]
willprice has joined #nixos
ng0 has quit [(Quit: Alexa, when is the end of world?)]
eacameron has quit [(Remote host closed the connection)]
Infinisil has quit [(Remote host closed the connection)]
peel has quit [(Ping timeout: 240 seconds)]
endformationage has quit [(Quit: WeeChat 1.7)]
josiah has quit [(Remote host closed the connection)]
rpifan_ has joined #nixos
hiratara has quit [(Ping timeout: 240 seconds)]
rpifan has quit [(Ping timeout: 240 seconds)]
Ivanych has quit [(Ping timeout: 248 seconds)]
hiratara has joined #nixos
Nobabs27 has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] dywedir opened pull request #27698: rustracer: 2.0.6 -> 2.0.9 (master...rustracer) https://git.io/v7n6o
NixOS_GitHub has left #nixos []
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
Infinisil has joined #nixos
koserge has quit [(Ping timeout: 240 seconds)]
hamishmack has joined #nixos
dejanr has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth opened pull request #27699: nixos/varnish: made compatible with varnish 5.2.1, add modules (master...varnish-fixes-sq) https://git.io/v7ni3
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth closed pull request #27413: nixos/varnish: made compatible with varnish 5.2.1, add modules (master...varnish-fixes) https://git.io/vQd7M
NixOS_GitHub has left #nixos []
willprice has quit [(Ping timeout: 240 seconds)]
eacameron has joined #nixos
sheenobu has joined #nixos
takle has joined #nixos
<Infinisil> Oh and what I'll end up doing regarding the zfs uefi grub thingy, I'll just use multiple partitions, it's not worth the effort to get it potentially working
silver_hook has quit [(Ping timeout: 248 seconds)]
eacameron has quit [(Read error: Connection reset by peer)]
eacameron has joined #nixos
takle has quit [(Remote host closed the connection)]
akaWolf has quit [(Ping timeout: 255 seconds)]
Infinisil has quit [(Quit: leaving)]
k2s has joined #nixos
alphor has quit [(Quit: Bye!)]
eacameron has quit [(Ping timeout: 268 seconds)]
<sphalerite> Right decision IMHO :D
<sphalerite> ANd now I go sleep
<sphalerite> Gnight all!
alphor has joined #nixos
Filystyn has quit [(Remote host closed the connection)]
eacameron has joined #nixos
Wharncliffe has joined #nixos
k2s has quit [(Ping timeout: 240 seconds)]
Nobabs27 has quit [(Quit: Leaving)]
eacamero_ has joined #nixos
radvendii has quit [(Ping timeout: 246 seconds)]
magnetophon has joined #nixos
nh2 has joined #nixos
Nobabs27 has joined #nixos
eacameron has quit [(Ping timeout: 276 seconds)]
eacamero_ has quit [(Ping timeout: 255 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/v7nXr
<NixOS_GitHub> nixpkgs/master 127b262 Jörg Thalheim: vim-yapf: init at 2017-03-21
NixOS_GitHub has left #nixos []
Nobabs27 has quit [(Quit: Leaving)]
magnicida has joined #nixos
eacameron has joined #nixos
<seequ> Has anyone here experienced high CPU load for the X process with the proprietary nvidia drivers?
<seequ> It's as if it's using software rendering.
bennofs has quit [(Ping timeout: 240 seconds)]
hiratara has quit [(Remote host closed the connection)]
Myrl-saki has joined #nixos
ebzzry has joined #nixos
hiratara has joined #nixos
<simpson> seequ: For 2D stuff, that'll sometimes happen. The proprietary drivers have a long history of poor 2D performance.
<seequ> ..huh
eacameron has quit [(Ping timeout: 240 seconds)]
<seequ> Hmm.. Well I guess I can try nouveau safely because it's nix ^^
joehh has joined #nixos
joepie91 has quit [(Excess Flood)]
joepie91 has joined #nixos
joepie91 has quit [(Changing host)]
joepie91 has joined #nixos
watersoul has joined #nixos
Cement has quit [(Ping timeout: 260 seconds)]
<drakonis> is that so?
<drakonis> seequ, which card do you have
justelex_ has joined #nixos
watersoul_ has quit [(Write error: Broken pipe)]
<seequ> What's the videoDrivers string for that?
<seequ> drakonis: GTX 770
cornfeedhobo has quit [(Excess Flood)]
ambro718 has quit [(Remote host closed the connection)]
fresheyeball has joined #nixos
mkoenig_ has joined #nixos
<fresheyeball> hey out there
qmmm has joined #nixos
jbo_ has joined #nixos
mkoenig has quit [(Write error: Broken pipe)]
isHavvy has quit [(Remote host closed the connection)]
ent- has joined #nixos
anderslu1dstedt has joined #nixos
Nazral has quit [(Remote host closed the connection)]
cornfeedhobo_ has joined #nixos
s33se has joined #nixos
mightybyte has quit [(Remote host closed the connection)]
joachifm has quit [(Remote host closed the connection)]
baroncha3lus has joined #nixos
aminechi1haoui has joined #nixos
AtnNn_ has joined #nixos
<fresheyeball> does this create the output directory?
qknight has joined #nixos
aanderse_ has joined #nixos
viric_ has joined #nixos
<fresheyeball> $setupCompilerEnvironmentPhase
exi has joined #nixos
statusfailed has joined #nixos
athan_ has joined #nixos
slyfox_ has joined #nixos
mjacob_ has joined #nixos
socksy_ has joined #nixos
dtzWill_ has joined #nixos
ison111_ has joined #nixos
tnks_ has joined #nixos
danbst1 has joined #nixos
joachifm_ has joined #nixos
josePhoenix has joined #nixos
Nazral has joined #nixos
glines_ has joined #nixos
mightyby1e has joined #nixos
jbo has quit [(Write error: Broken pipe)]
AtnNn has quit [(Write error: Broken pipe)]
ent has quit [(Write error: Broken pipe)]
qknight_ has quit [(Write error: Broken pipe)]
ison111 has quit [(Write error: Broken pipe)]
justelex has quit [(Write error: Broken pipe)]
Neo-- has quit [(Remote host closed the connection)]
markus1189 has joined #nixos
exi_ has quit [(Write error: Broken pipe)]
socksy has quit [(Write error: Broken pipe)]
danbst has quit [(Write error: Broken pipe)]
statusfa1led has quit [(Write error: Broken pipe)]
mounty has quit [(Remote host closed the connection)]
_habnabit has quit [(Excess Flood)]
qmm has quit [(Remote host closed the connection)]
hellrazor has joined #nixos
baroncharlus has quit [(Remote host closed the connection)]
glines has quit [(Remote host closed the connection)]
cornfeedhobo_ is now known as cornfeedhobo
athan has quit [(Remote host closed the connection)]
slyfox has quit [(Remote host closed the connection)]
viric has quit [(Remote host closed the connection)]
josePhoenix_ has quit [(Remote host closed the connection)]
mjacob has quit [(Remote host closed the connection)]
aminechikhaoui has quit [(Write error: Broken pipe)]
katyucha has quit [(Write error: Broken pipe)]
tnks has quit [(Write error: Broken pipe)]
aanderse has quit [(Write error: Broken pipe)]
hellrazo1 has quit [(Remote host closed the connection)]
s33se_ has quit [(Remote host closed the connection)]
markus1199 has quit [(Remote host closed the connection)]
dtzWill has quit [(Remote host closed the connection)]
<fresheyeball> is there an eval step the usually creates the output directory?
mounty has joined #nixos
_habnabit has joined #nixos
Neo-- has joined #nixos
sheenobu has quit [(Ping timeout: 247 seconds)]
Fuuzetsu has quit [(Ping timeout: 247 seconds)]
mjacob_ has quit [(Changing host)]
mjacob_ has joined #nixos
danl1240 has quit [(Ping timeout: 269 seconds)]
Bane^ has quit [(Ping timeout: 269 seconds)]
anderslundstedt has quit [(Ping timeout: 240 seconds)]
obadz- has joined #nixos
<seequ> I tried nouveau.
<seequ> Isn't any better.
Fuuzetsu has joined #nixos
Wizek_ has joined #nixos
Myrl-saki has quit [(Ping timeout: 260 seconds)]
sheenobu has joined #nixos
Bane^ has joined #nixos
lesce has joined #nixos
katyucha has joined #nixos
obadz has quit [(Ping timeout: 255 seconds)]
obadz- is now known as obadz
k2s has joined #nixos
Sonarpulse has quit [(Ping timeout: 268 seconds)]
hellrazor has quit [(Quit: WeeChat 1.9)]
<seequ> simpson: So, this isn't about the proprietary drivers.
<simpson> seequ: Go figure.
lesce has quit [(Ping timeout: 240 seconds)]
k2s has quit [(Ping timeout: 240 seconds)]
indi_ has joined #nixos
ison111_ has quit [(Quit: WeeChat 1.7.1)]
<seequ> drakonis: Any ideas?
<drakonis> seequ, should work?
<drakonis> rather
<drakonis> one momnet
<drakonis> moment.
<drakonis> nouveau runs on kepler cards properly
<seequ> glxinfo would suggest direct rendering is used and the drivers properly loaded
<drakonis> nvidia's drivers should work as well as in other platforms
<drakonis> ie: windows
<seequ> I switched back to proprietary
xadi has joined #nixos
<simpson> seequ: What's the driver version? These days, even software rendering is direct rendering.
<seequ> As said, this doesn't seem like a drivef issue after all, rather it seems like X isn't using the drivers.
<seequ> simpson: 375.66
<simpson> So glxinfo might say "software rasterizer" or something like that.
<simpson> Ah, that's an nVidia version. Never mind.
<seequ> That's the OpenGL version
<fresheyeball> should I expect `eval $buildPhase` to make the $out?
<seequ> GLX is 1.4
rpifan has joined #nixos
hellrazor has joined #nixos
rpifan_ has quit [(Ping timeout: 275 seconds)]
rpifan has quit [(Remote host closed the connection)]
fikse has quit [(Ping timeout: 240 seconds)]
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
taktoa has joined #nixos
markus1199 has joined #nixos
<taktoa> I had another crazy Nix idea: what if there were a builtin that memoized evaluation of a pure value, such that it would be retrieved from a special cache (one that is much cheaper than the nix store) if the hash of the expression is in the cache. if the hash of the expression isn't in the cache, we do a quick check for impurity (e.g.: builtins.getEnv), evaluate it, and cache it
<taktoa> I think this would massively improve our evaluation times
hydraz has quit [(Read error: Connection reset by peer)]
<catern> why is the store so expensive?
<taktoa> catern: security? you can do arbitrary things in a nix build, so we need to chroot
sheenobu has joined #nixos
<taktoa> also you need to talk to the nix-daemon
<taktoa> I'm talking about a sqlite database that would live in ~/.cache/nix or something
<taktoa> though idk if contention between concurrently-running nix processes would cause problems with that
<fresheyeball> catern: it's a store.
thc202 has quit [(Ping timeout: 255 seconds)]
markus1189 has quit [(Ping timeout: 268 seconds)]
<taktoa> also it's on the filesystem, so if we tried to do this with the nix store we'd probably be generating a godawful number of store paths
<taktoa> memoization as a way to improve eval times has seemed obvious to me for a while, but I was thinking about having the Nix runtime do it automatically
<taktoa> this builtins.memoize approach is much easier to implement and lightweight
hydraz has joined #nixos
hydraz has quit [(Changing host)]
hydraz has joined #nixos
joehh has quit [(Ping timeout: 268 seconds)]
eacameron has joined #nixos
<catern> taktoa: eh? why is it expensive just to query the store?
<catern> is what I meant
<taktoa> catern: you need to IPC with the nix-daemon
<catern> that can be cheap :)
<catern> microkernels prove it (:
<taktoa> yeah, too bad we're not all running seL4
<taktoa> (I was typing that before you mentioned microkernels lol)
<catern> it can be cheap even on conventional operating systems!
<catern> a unix socket write then read is like, no cost
dywedir has quit [(Ping timeout: 240 seconds)]
<catern> (well, assuming you have an in-memory cache after the first retrieval)
<taktoa> I wonder if you could preload all the stuff that's likely to be needed for a file
<taktoa> like, have a SQL column for the file in which the `builtins.memoize` was used, then preload all those rows when you start evaluating something in that file
<taktoa> for that matter, we could also cache parsing. I suspect that computing the SHA256 of a file and checking for it in a cache is much quicker than actually parsing it
<taktoa> (at least because AFAIK a SHA256 is a linear traversal over a file with no backtracking, though I don't know if the Nix parser does much backtracking currently)
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
<taktoa> wait actually you can do it in constant time: hash the first k bytes of the file, then use that to determine if you should hash the rest (though caching file hash computation is slightly off the deep end)
<catern> this is all to optimize IFD right?
<taktoa> this is to optimize Nix evaluation, which can be quite slow
<taktoa> well really the reason I want it is so I can have "zero cost" abstraction in Nix
sheenobu has joined #nixos
sigmundv_ has joined #nixos
<taktoa> e.g.: for the BNF parser thing I was talking about, it might be nice to have the builtin take a structured BNF instead of a string. then you could use the BNF machinery itself to parse BNFs that you want to use, but we pay a cost for that
<taktoa> with `builtins.memoize`, you'd only pay the cost of compiling the BNF the first time
erasmas has quit [(Quit: leaving)]
<tilpner> Shouldn't $ nix-shell -p lua5_2 lua52Packages.cjson --command 'lua -e "require \"cjson\""' work? It fails with module 'cjson' not found for me
joehh has joined #nixos
glines_ is now known as glines
joehh has quit [(Ping timeout: 240 seconds)]
sheenobu has quit [(Quit: My Mac has gone to sleep. ZZZzzz…)]
sheenobu has joined #nixos
sheenobu has quit [(Client Quit)]
m0rphism has quit [(Quit: WeeChat 1.9)]
mudri has quit [(Ping timeout: 246 seconds)]
sheenobu has joined #nixos
sheenobu has quit [(Client Quit)]
romildo has joined #nixos
jasom has joined #nixos
lesce has joined #nixos
jasom has quit [(Client Quit)]