worldofpeace changed the topic of #nixos-dev to: NixOS Development (#nixos for questions) | NixOS 20.09 Nightingale ✨ https://discourse.nixos.org/t/nixos-20-09-release/9668 | https://hydra.nixos.org/jobset/nixos/trunk-combined https://channels.nix.gsc.io/graph.html | https://r13y.com | 20.09 RMs: worldofpeace, jonringer | https://logs.nix.samueldr.com/nixos-dev
b42 has quit [Ping timeout: 240 seconds]
b42 has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
supersandro2000 has quit [Disconnected by services]
supersandro20004 has joined #nixos-dev
rj has joined #nixos-dev
<gchristensen> I don't think build-hook has anything to do with pre/post-build hook... iirc build-hook is what used to do distributed build selection
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
evils has joined #nixos-dev
<catern> indeed
<catern> and some used it to implement their own distributed build mechanism
<catern> (although I never finished mine before it was removed)
<gchristensen> the option still exists and points to a binary ...
<gchristensen> I wanted to play with it too
<catern> oh, well, in that case nevermind, I'll just use build-hook indeed
<gchristensen> I don't know if it is still used
<catern> it does seem to be from looking at tryToBuild in build.cc (which calls tryBuildHook)
<gchristensen> tell me about your mechanism?
<catern> oh it's only just some plans
rajivr has joined #nixos-dev
<catern> but it was some ideas about how to integrate with $DAYJOB; the idea was either to link into the existing proprietary build farm $DAYJOB uses, or spin up Kubernetes containers for each build task, or something like that
<gchristensen> cool
<gchristensen> I've seen some uses of ssh proxies to do that, I go the route of dynamically maintaining a machines file
<catern> how would an ssh proxy help with that? are there ssh proxies that connect you to a fresh machine each time you connect, magically?
<gchristensen> right
<gchristensen> could be as simple as a shim `ssh` executable to do it
<catern> I suppose that would work for some kubernetes integration, but integrating with proprietary build farm would probably be easier with a build-hook that calls build farm APIs to launch builds
<gchristensen> probably yes
BaughnLogBot has quit [Ping timeout: 260 seconds]
BaughnLogBot has joined #nixos-dev
endocrimes has quit [Ping timeout: 260 seconds]
endocrimes has joined #nixos-dev
makefu has quit [Ping timeout: 260 seconds]
makefu has joined #nixos-dev
pmy_ is now known as pmy
WilliButz has quit [Ping timeout: 256 seconds]
WilliButz has joined #nixos-dev
tokudan has quit [Ping timeout: 240 seconds]
srk has quit [Ping timeout: 268 seconds]
mkaito has quit [Quit: WeeChat 3.0.1]
tokudan has joined #nixos-dev
<siraben> What's the difference between `$out`, `$(out)` and `${placeholder "out"}` in flags and phases?
srk has joined #nixos-dev
<samueldr> > placeholder out
<{^_^}> undefined variable 'out' at (string):488:13
<samueldr> > placeholder "out"
<samueldr> duh
<{^_^}> "/1rz4g4znpzjwh1xymhjpm42vipw92pr73vdgl6xs1hycac8kf2n9"
<samueldr> this is a special string that Nix knows to replace *on the derivation*
* samueldr digs up manual chapter
<samueldr> >> Return a placeholder string for the specified output that will be substituted by the corresponding output path at build time. Typical outputs would be "out", "bin" or "dev".
<samueldr> placeholder is replaced by nix with the value of $out so there is no escaping to do
<samueldr> when the build runs, it _is_ the value for $out
<samueldr> $(out) I would assume is in something related to make
<samueldr> just a different way to access environment variables
<samueldr> well, that is really the better link: https://www.gnu.org/software/make/manual/make.html#Environment
<siraben> Ok I see.
<siraben> samueldr: so `out` is an environment variable, whereas `placeholder "out"` is evaluated at the Nix level to the out directory, and they are the same, right?
<samueldr> they should be yes
<samueldr> placeholder "lib" could be used to refer to $lib if there was a separate "lib" output
<siraben> ok I see
orivej has quit [Ping timeout: 240 seconds]
jonringer has quit [Ping timeout: 240 seconds]
orivej has joined #nixos-dev
ajs124 has quit [Ping timeout: 240 seconds]
das_j has quit [Ping timeout: 265 seconds]
Scriptkiddi has quit [Ping timeout: 264 seconds]
ajs124 has joined #nixos-dev
das_j has joined #nixos-dev
Scriptkiddi has joined #nixos-dev
danderson has quit [Remote host closed the connection]
danderson has joined #nixos-dev
orivej has quit [Ping timeout: 264 seconds]
Raito_Bezarius has quit [Ping timeout: 272 seconds]
cole-h has quit [Quit: Goodbye]
FRidh has joined #nixos-dev
cole-h has joined #nixos-dev
cole-h has quit [Ping timeout: 245 seconds]
orivej has joined #nixos-dev
teto has joined #nixos-dev
BaughnLogBot has quit [Ping timeout: 260 seconds]
BaughnLogBot has joined #nixos-dev
__monty__ has joined #nixos-dev
<sterni> anyone care to merge #114290? it fixes some eval errors in places not evaluated by ofborg and the diff is pretty small so should be quick to review
<{^_^}> https://github.com/NixOS/nixpkgs/pull/114290 (by sternenseemann, 5 days ago, open): treewide: add missing lib inputs
<sterni> I'll follow up on it with adding a few missing recurseIntoAttrs which were revealed by this
edwtjo has quit [Ping timeout: 264 seconds]
edwtjo has joined #nixos-dev
edwtjo has joined #nixos-dev
edwtjo has quit [Changing host]
orivej has quit [Ping timeout: 240 seconds]
hexa- has quit [Quit: WeeChat 2.9]
hexa- has joined #nixos-dev
<gchristensen> sterni: why not add them as part of this pr?
<sterni> gchristensen: I was assuming it makes reviewing more annoying also there's a build failure in magnetophonDSP iirc which needs fixing up
<sterni> but could push them again
orivej has joined #nixos-dev
<gchristensen> yeah, better to make one PR I think, not all builds have to be fixed when the overall problem is fixed
<sterni> gchristensen: it's not eval errors, just ofborg not evaluating magnetophonDSP.* and chickenPackages_*.*
<sterni> but yeah, I guess I could
<gchristensen> nor hydra
<sterni> yep
<sterni> wonder how many people use magnetophonDSP, the compile times must be infuriating
<sterni> (source: trying to find the build error again)
<gchristensen> d'you need a big machine to work with?
<sterni> my server is alright for doing builds mostly it being an old desktop cpu, but I always just don't build remotely because copying store paths over ssh just takes ages somehow
<gchristensen> sure
<sterni> I wonder if it is roughly twice as slow which would imply my upload is the limiting factor
<sterni> or is ssh just slow?
<gchristensen> ssh isn't so slow
<gchristensen> the nix remote build protocol is not optimised for speed, though
<sterni> I see
<gchristensen> but my offer was for a machine you could log in to the box and work on the machine
<sterni> substituting on the remote machine would be neat
<gchristensen> yeah you can do that with the nix option builders-use-substitutes
<sterni> gchristensen: that's nice :) but I'm almost through here only two builds left
<gchristensen> cool
<sterni> ah, neat gonna try that
<sterni> on a related note, we probably should expose libelf-freebsd as a top-level attribute right? currently libelf = if stdenv.isFreeBSD then callPackage ... else callPackage ...
<sterni> which means that evaluation errors are not caught if done on linux
<sterni> we could, however keep the conditional switch for backwards compatibility
<gchristensen> no, if we want to expose freebsd errors we should first have maintainers who use it, and then add it as an exercised target in ofborg and hydra
<sterni> last non treewide change to libelf-freebsd 2016 🤔
<gchristensen> yeah, people used to use nix + freebsd, but petered out and since it has been "freebsd would be cool"-level of commitment
<sterni> now for another round of git log -G to figure out when / if attributes where removed
<sterni> don't really trust grepping for the filename to confirm a file is really imported nowhere
<gchristensen> why not?
<sterni> relative paths
<sterni> although the dir name should be in the source as a literal if the directory has no children
<sterni> and no file in the same directory includes the file
<sterni> and no readDir and similar dynamic features are used
mkaito has joined #nixos-dev
<sterni> well if it evaluates I can't have broken anything :p
evanjs has quit [Ping timeout: 276 seconds]
<sterni> lol the two lua packages files I ran into have been lying around in nixpkgs unused for 6 years
jonringer has joined #nixos-dev
<gchristensen> yeah sometimes you swat a small hornets nest and find a large hornets nest :P
evanjs has joined #nixos-dev
<sterni> I wonder how many unused files there are overall
<sterni> I'm just finding some because they fail on nix-instantiate --parse
<sterni> but others could be perfectly parseable and still unused
<ajs124> gchristensen: RE: FreeBSD https://github.com/NixOS/nixpkgs/commit/1c39662e6304f6c8d9a0984bed0bf7b57ceeb8b3 was pushed only a few weeks ago
<gchristensen> cool
<sterni> gchristensen: by now I've restarted the build on my server and discovered why it takes ages: the build system can only utilize one core
<gchristensen> d'oh!
rj has joined #nixos-dev
rj has quit [Remote host closed the connection]
rj has joined #nixos-dev
<supersandro20004> sterni: do you need a FreeBSD host to build it?
<supersandro20004> if not I can offer some build infrastructure if you need some debugging
supersandro20004 is now known as supersandro2000
<sterni> supersandro2000: nope, unrelated
<sterni> the freebsd issue is libelf-freebsd not being evaluated unless you are on freebsd
<sterni> I guess you can run the ofborg check for #114290 on freebsd, but it should evaluate again now
<{^_^}> https://github.com/NixOS/nixpkgs/pull/114290 (by sternenseemann, 5 days ago, open): treewide: add missing lib inputs
<supersandro2000> I don't have a freebsd ready. Just linux build power.
<sterni> np, I don't think there's much to test
rj has quit [Ping timeout: 268 seconds]
<sterni> callPackage pkgs/development/libraries/libelf-freebsd/default.nix {}
<sterni> error: hash '' has wrong length for hash type 'sha256'
<sterni> oh boy
<sterni> what happened there
<sterni> > fetchsvn without a pinned hash
<{^_^}> undefined variable 'without' at (string):488:10
rj has joined #nixos-dev
orivej has quit [Quit: orivej]
rj has quit [Ping timeout: 268 seconds]
orivej has joined #nixos-dev
cole-h has joined #nixos-dev
rj has joined #nixos-dev
orivej has quit [Ping timeout: 276 seconds]
BaughnLogBot has quit [Ping timeout: 260 seconds]
orivej has joined #nixos-dev
BaughnLogBot has joined #nixos-dev
BaughnLogBot has quit [Ping timeout: 240 seconds]
BaughnLogBot has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
FRidh has quit [Ping timeout: 276 seconds]
FRidh has joined #nixos-dev
<siraben> sterni: nice on finding the remaining breakages from stdenv.lib → lib
<siraben> So those files were not evaluated at all?
<supersandro2000> or are old and should be removed
<sterni> siraben: yep
<sterni> I only discovered it by chance when I was doing something else
<sterni> I thought somebody had done it because aszlig actually proposed it in a thread iirc
rj has quit [Ping timeout: 268 seconds]
<rmcgibbo[m]> Is it expected that there are x86_64-linux derivations (i.e. env.system == x86_64-linux in the .drv file) that depend on i686-linux derivations?
<rmcgibbo[m]> (In normal nixpkgs, without anything explicitly cross. I'm looking at the output of nix-store --query --graphml.)
rj has joined #nixos-dev
<adisbladis> rmcgibbo[m]: Sure, multilib stuff like steam for example
<rmcgibbo[m]> multilib = same binary can work on platforms?
<rmcgibbo[m]> or same .drv i guess.
<adisbladis> rmcgibbo[m]: Not necessarily
<adisbladis> A lot of steam games rely on 32bit i686 libraries even though steam itself is 64bit
<adisbladis> At least afaik (steam might be entirely 32bit)
<adisbladis> In any case, just grep nixpkgs for pkgsi686Linux and you'll find some examples
<rmcgibbo[m]> alright. TIL. thanks.
evils has quit [Ping timeout: 240 seconds]
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
evanjs has quit [Ping timeout: 245 seconds]
evanjs has joined #nixos-dev
rajivr has quit [Quit: Connection closed for inactivity]
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
orivej has quit [Ping timeout: 264 seconds]
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
FRidh has quit [Quit: Konversation terminated!]
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
energizer has quit [Ping timeout: 256 seconds]
energizer has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
teto has quit [Quit: WeeChat 3.0.1]
adisbladis is now known as ADISBLADIS
tazjin is now known as TAZJIN
Profpatsch is now known as PROFPATSCH
sterni is now known as STERNI
asbachb has joined #nixos-dev
evanjs has quit [Read error: Connection reset by peer]
evanjs has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
asbachb has quit [Quit: Connection closed]
V is now known as v
rj has joined #nixos-dev
v is now known as V
edef is now known as EDEF
cole-h is now known as COLE-H
lassulus is now known as LASSULUS
hexa- is now known as H
H is now known as hexa-
tv is now known as TV
asbachb has joined #nixos-dev
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
__monty__ has quit [Quit: leaving]
rj has quit [Ping timeout: 268 seconds]
rj has joined #nixos-dev
worldofpeace is now known as WORLDofPEACE
ashkitten is now known as ASHKITTEN
mkaito has quit [Quit: WeeChat 3.0.1]
rj has quit [Ping timeout: 268 seconds]
mkaito has joined #nixos-dev
mkaito has joined #nixos-dev
asbachb has quit [Quit: Connection closed]