<cole-h>
supersandro2000: FWIW, ofborg has 5 machines (at the moment) to eval on. They're pretty good. Things might take a while when a larger volume of PRs come in, but it'll get done eventually. I don't think any one eval is more important than another :)
<cole-h>
(Though I do agree with "Please do not use ofborg to generate checksums")
<cole-h>
(Mostly because the roundtrip time is much longer than building locally, though)
<supersandro2000>
not only the roundtrip but the package can't really be tested by the updater
<cole-h>
Well, it's a checklist item but not required. Sometimes it's hard to test (e.g. it's a library; though that's not the case for the referenced PR).
jared-w has quit [Ping timeout: 246 seconds]
vdemeester has quit [Ping timeout: 244 seconds]
claudiii has quit [Read error: Connection reset by peer]
<siraben>
cole-h: so if I revert the change to ant-build.nix and remove the inherit lib for ant-build in pkgs/build-support/release/default.nix, it works fine
<siraben>
but as soon as I add lib to the imports list in ant-build.nix and inherit lib, it tries to convert set to string???
<cole-h>
Otherwise it would try to make `lib` available as an env var (which won't work because it's an attrset, and Nix doesn't know how to stringify an attrset) :D
<siraben>
samueldr: but that commit does not belong to any commit in nixpkgs
<samueldr>
ah
<siraben>
kvtb sent a few patches this way already somehow
<siraben>
I know that a .patch file is accessible when a PR is made, but this person doesn't seem to be using PRs to make the patches visible? I must be confused
FRidh has joined #nixos-dev
<samueldr>
any commit can be accessed "as a patch" by adding .patch
<samueldr>
then it just requires someone to push that to a fork
<siraben>
supersandro2000: ok, what's a fast way to check if say makeWrapper is in buildINputs?
<siraben>
maybe multiline rg
<supersandro2000>
rg on the file?
halfbit has joined #nixos-dev
<siraben>
`rg "buildInputs.*unzip"` returns a good amount already but fails on multiline inputs
<supersandro2000>
unzip is a special case
<supersandro2000>
sometimes it used to unpack files fetched with fechurl
<supersandro2000>
in those cases fethchzip should be used
<supersandro2000>
which also work for compressed tar balls
<siraben>
oh TIL fetchzip works with tarballs
bk1603[m] has quit [Quit: Idle for 30+ days]
<raboof>
nixpkgs-review now fails on master (so basically will fail everywhere AFAICS?), possibly because of the zigbee2mqtt change in https://github.com/NixOS/nixpkgs/pull/110545
<{^_^}>
#110545 (by svanderburg, 2 days ago, merged): nodePackages: regenerate with node2nix 1.9.0
teto has quit [Ping timeout: 264 seconds]
teto has joined #nixos-dev
<Gaelan>
I'd appreciate some advice from someone with better git-fu than me: I've got a staging PR (110571), with a merge conflict. I'd expect this to be solvable by merging in the output of `git merge-base origin/master origin/staging`, but for some reason that pulls a bunch of unrelated commits into the PR.
<Gaelan>
Any idea what could be going on?
<supersandro2000>
raboof: I am going to revert that
<supersandro2000>
if it is not already
<symphorien[m]>
what is the password of the nixos virutalbox ova user ?
<symphorien[m]>
ah demo
<supersandro2000>
Does anyone know any method of checking if commits on github belong to the repo or a fork?
<supersandro2000>
I couldn't find anything in the rest/graphql api
<supersandro2000>
and when searching for this I only get results for how to manage forks on github
<supersandro2000>
I want to check if someone tries to sneak in fork commits in vimPackages and I have no idea how to do that without a headless browser
<sorear>
all commits belong to both the repo and the fork (try it - load any commit on the web interface, then change the repo name in the URL)
<siraben>
how would that not cause a collision eventually?
<supersandro2000>
sorear: thats the problem I want to fix
<sorear>
remember that every time you merge a PR every *intermediate* commit transitively becomes part of history
<sorear>
read the message carefully - there's no concept of a commit being part of a repo, but there is a concept of a commit being part of a branch
<sorear>
but you can't derive any trust information from whether a commit is in a branch, because I can PR something with malicious commits hidden under innocuous commits, and I don't think your tooling checks for that
__monty__ has joined #nixos-dev
<siraben>
supersandro2000: i added the i686 logs
<supersandro2000>
sorear: that is not the problem. I want to catch commits which are not merged at all and just point to some random repository
<supersandro2000>
everything that is merged should fall through
<tilpner>
The #spoof-warning element is unhidden by JS, so there's probably at least an undocumented way, but trawling through minified JS to find the caller is pain
FRidh has quit [Quit: Konversation terminated!]
teto has quit [Ping timeout: 265 seconds]
globin has quit [Ping timeout: 260 seconds]
harrow` has quit [Ping timeout: 260 seconds]
terrorjack1 has joined #nixos-dev
dstzd has quit [Ping timeout: 246 seconds]
harrow has joined #nixos-dev
terrorjack has quit [Ping timeout: 260 seconds]
terrorjack1 is now known as terrorjack
globin has joined #nixos-dev
<rajivr>
Is it the case that `localSystem` and `crossSystem` parameters to `nixpkgs` are mutually exclusive?
teto has joined #nixos-dev
<gchristensen>
I think you can cross compile to your local target
<gchristensen>
yeah, the first link is showing a commit in somebody else's repository
<supersandro2000>
I think I try to hack something together later
<gchristensen>
what for?
<supersandro2000>
to check if we download commits from forks
<gchristensen>
oh neat
<supersandro2000>
and add it to nixpkgs-review-checks. If it is useful we can integrate it into something else later.
<gchristensen>
github didn't used to show this message at all, so you could write and push a malicious commit authored by Linus Torvalds, and show it in the Linux repo as a spooky thing
<etu>
Don't we do that by design whenever a merge commit is created?
<supersandro2000>
like some of the things are being added to nixpkgs-hammering
<etu>
I mean, that's what a merge commit is.
<gchristensen>
etu: what is?
<etu>
gchristensen: When a commit is created in another fork/branch, then that commit is merged through a PR, we get that same commit, by the same ID and gpg signature and everything into nixpkgs.
<supersandro2000>
merged commits show as being part of master and the PR
<gchristensen>
they're part of the repository
* etu
might be missing what the point of the links was showing to begin with
<edef>
etu: consider eg a fetchFromGitHub that fetches from github.com/torvalds/linux
<edef>
etu: that is in fact not referring to a commit that is reachable from that repository's refs
<supersandro2000>
etu: I want to find fetchFromGitHub which fetch commits from forks without us knowing this
<supersandro2000>
this could be a security risk that someone sneaks in a malicious commit into maybe vimPackages
<etu>
ah
<etu>
That's handy!
<supersandro2000>
and right now I am not sure how to check this at all.
<jtojnar>
siraben: the aspellDicts are either up to date or their update scripts do not update them correctly
<siraben>
supersandro2000: how do we know if it hasn't happened already
<siraben>
perhaps someone should attempt such an attack and see if it gets through or not
<siraben>
Jan Tojnar: yeah some of them are up to date and some of them say they're updating
<siraben>
but no changes to the files :/
<jtojnar>
updating just means running update script
<jtojnar>
the update script might find it is already the latest version and do nothing
<siraben>
there's several that report back "updating..." though
<jtojnar>
every package should report "updating..."
<jtojnar>
update.nix has no way of knowing whether the package is up to date
<jtojnar>
it just runs update scripts and lets them decide
<jtojnar>
the message should probably be changed to make it clearer
<siraben>
Yes, that would be good
<siraben>
Profpatsch: lol imagine hlint but for Nix
<siraben>
What's the way to benchmark Nix functions? I'd like to check performance and memory usage between foldr and foldl'
<{^_^}>
error: cannot open connection to remote store 'daemon': could not set permissions on '/nix/var/nix/profiles/per-user' to 755: No space left on device
<siraben>
Is `foldr (a: b: a // b) {}` equivalent to `foldl' (a: b: a // b) {}`?
* siraben
wishes he could just QuickCheck it
<infinisil>
foldr (a: b: a // b) {} [ x y ] == {} // (x // y)
<infinisil>
foldl (a: b: a // b) {} [ x y ] == ({} // x) // y
<siraben>
hmm for that it's equivalent
<siraben>
infinisil: wait in the foldr case isn't it x // (y // {})?
<siraben>
foldr f (x:xs) = f x (foldr f xs)
<infinisil>
Oh hmm
<siraben>
a // (b // (c // {})) =?= ((({} // a) // b) // c)
dstzd has joined #nixos-dev
<infinisil>
> :p foldr (a: b: { inherit a b; }) {} [ "x" "y" ]
<{^_^}>
{ a = "x"; b = { a = "y"; b = { }; }; }
<infinisil>
> :p foldl (a: b: { inherit a b; }) {} [ "x" "y" ]
<{^_^}>
{ a = { a = { }; b = "x"; }; b = "y"; }
<infinisil>
Yeah so `foldr = x // (y // {})`
jonringer has joined #nixos-dev
<siraben>
I think // is associative because merging is associative and being right-biased is associative as well
<siraben>
{} is the unit
spacekookie_ has joined #nixos-dev
spacekookie has quit [Quit: No Ping reply in 60 seconds.]
qyliss has quit [Quit: bye]
qyliss has joined #nixos-dev
<supersandro2000>
siraben: in the issue that someone earlier linked is a snipped which might help test against the entire repo
<Profpatsch>
siraben: that would be a fun project
<Profpatsch>
infinisil: foldl' also is strict over the operator arguments
<Profpatsch>
At least if it’s like it is in Haskell
<infinisil>
Yea it is
<Profpatsch>
So the idea is that we can save some thunk buildup if we change most foldrs in the lib to foldl'
<Profpatsch>
Which should save us some memory
<infinisil>
Btw, sometimes foldl' by itself isn't enough strict
<infinisil>
Especially with nested structures
<Profpatsch>
yes, it only forces whnf
<infinisil>
And it can be very efficient to force evaluation a bit deeper (though sometimes builtins.deepSeq is too much)
<Profpatsch>
But at least it doesn’t cause thunk buildup like foldl would
<infinisil>
It can
<Profpatsch>
sure
<Profpatsch>
but not by default
<Profpatsch>
e.g. foldl' (+) also builds up thunks
<infinisil>
It depends on whatever the folding function is, whether or not foldl' builds up thunks
<Profpatsch>
Although it might make no difference in nix since lists are strict
<Profpatsch>
err, foldl (+)
<Profpatsch>
My muscle memory adds the ' by default
<gchristensen>
on nixos-unstable, does mixing nix stable and nix unstable client/daemons cause build logs to be not printed? that seems to be the case on stable
<gchristensen>
that seems to be the case on 20.09
<gchristensen>
I've been running with `-vvv` to get building of '/nix/store/xxx.drv!out' from .drv file: read 66 bytes output, just to know it is doing thinsg :P
<gchristensen>
my laptop is running Nix 2.4pre20201201_5a6ddb3, the remote builder is running 2.3.10, which is producing these builds which have no printed log
<gchristensen>
this is actually the opposite direction
<gchristensen>
2.3.10 sending logs to 2.4
<domenkozar[m]>
seems like that requires another fix then :)
<roberth>
gchristensen: my PR suggests a "similar" fix for the opposite problem, but that's for the issue of duplicate logs.
<roberth>
did you check that you're not accidentally running a 2.3 client locally because of a nix-shell or something?
<gchristensen>
doubel checked: daemon is 2.4, remote builder's daemon is 2.3.10, remote builder's `nix-store` for root is 2.3.10, local nix client in my shell is 2.4
<rnhmjoj>
<siraben "How is volth going to answer now"> have you tried using the email in the patch?
<V>
I believe this was attempted
<gchristensen>
I just wish github hadn't disappeared the content of their messages
<immae>
Was it a "legitimate" break or did they delete it by being overcautious after a claim from some big company like they did for youtube-dl? (not to justify the action from github, I’m just wondering how "bad" it is)
<gchristensen>
as far as I know, it was fairly legitimate
<drakonis>
thanks github for spiriting away with all user data
<{^_^}>
#110623 (by yurrriq, 1 day ago, open): maintainers/teams: add beam team
<siraben>
frustrated that the discourse thread got siderailed
<drakonis>
moving away from github still wouldnt solve anything, would it?
saschagrunert has quit [Remote host closed the connection]
<drakonis>
ie: using gitlab would only change the landlord and have a different set of rules?
<V>
It's less the moving away and more who is being moved to
<V>
e.g. blocking a user wouldn't result in a mailing list losing their contributions
<V>
If things are self-hosted (e.g. an own-run gitlab or gitea instance) this wouldn't be possible
<drakonis>
not having the service provider poke holes on the archive
<V>
mailing lists revolve around everybody having a copy of the content, too. so this would at worst affect the canonical archive (which can be recovered from local copies)
<immae>
integrating issues and PR’s into the "main" tree is another way to make sure it cannot happen (thankfully github didn’ rewrite history to remove his commits :p )
<V>
yeah, if the bug tracker exists through git etc
<drakonis>
the actual badness is whenever someone nukes their own account, github replaces with "deleted account"
<drakonis>
so you can no longer identify who posted a comment
tilpner has quit [Read error: Connection reset by peer]
<V>
The lines are a bit misleading due to the low and inconsistent sample count
<gchristensen>
yea
<V>
By inconsistent I mean distance, not that the samples are incorrect ofc
<gchristensen>
of course
<gchristensen>
I would make a more proper graph but I don't feel like waiting the several hours it would take
<V>
oof
<gchristensen>
(counting the rows with just an index scan takes ~20 minutes)
mkaito has joined #nixos-dev
mkaito has joined #nixos-dev
mkaito has quit [Changing host]
ericnoan has joined #nixos-dev
<ehmry>
Ericson2314: I'm getting a `cycle detected in build of '…' in the references of output 'bin' from output 'dev', do you have advice on how to deal with this?
<Ericson2314>
ehmry: well it means bin has the hash of dev, and dev has the hash of bin
<Ericson2314>
is this witth lowdown?
__Sander__ has joined #nixos-dev
<andi->
just build nix from master and apparently there is only a single `nix` binary in the output now. Where the other commands removed?
<ehmry>
Ericson2314: no, tkrzw, some database library
<Ericson2314>
andi-: i didn't think so? they are symlinks
* andi-
checks the hacking guide again
<Ericson2314>
ehmry: ah ok whew, cause I just made lowdown have more outputs
<andi->
oh, have to run make install :D
<ehmry>
strange that dev would reference bin
<ehmry>
but thats a helpful explaination
<Ericson2314>
ehmry: pkg-config file might have bindir
<Ericson2314>
why would bin reference dead?
<ehmry>
this is a strange one
cole-h has joined #nixos-dev
copumpkin has quit [Remote host closed the connection]
copumpkin has joined #nixos-dev
srk has joined #nixos-dev
asbachb has joined #nixos-dev
asbachb has quit [Ping timeout: 248 seconds]
orivej has quit [Ping timeout: 265 seconds]
halfbit has quit [Quit: WeeChat 3.0]
orivej has joined #nixos-dev
orivej has quit [Ping timeout: 246 seconds]
orivej has joined #nixos-dev
<samueldr>
can we figure out the cross-compilation story of "simple Rust programs" before we think about adding those to the base closure of NixOS?
teozkr_ has quit [Ping timeout: 240 seconds]
<cole-h>
^
srhb has quit [Ping timeout: 264 seconds]
typetetris has quit [Read error: Connection reset by peer]
<samueldr>
that would be a severe regression with cross-compiling NixOS, which flokli had managed to manage without workarounds for a few generations
<samueldr>
(before a regression in upstream programs broke things anew)
taktoa[c] has quit [Ping timeout: 260 seconds]
jkkm has quit [Ping timeout: 265 seconds]
srhb has joined #nixos-dev
jkkm has joined #nixos-dev
taktoa[c] has joined #nixos-dev
sorear has quit [Ping timeout: 265 seconds]
typetetris has joined #nixos-dev
<samueldr>
I guess the basic milestone would be that `pkgs.pkgsCross.aarch64-multiplatform.writers.writeRustBin "hellors" {} ./hello.rs` works
teozkr_ has joined #nixos-dev
sorear has joined #nixos-dev
<gchristensen>
+1
<samueldr>
hm... pkgs/build-support/writers/test.nix has per-writer tests, but does not expose them it seems
<samueldr>
ah no
<samueldr>
passthru
<samueldr>
nix-build -A tests.writers.bin.rust -A tests.writers.bin.rust # built-in test to test
<samueldr>
uh
<samueldr>
copy fail
<samueldr>
nix-build -A pkgsCross.aarch64-multiplatform.tests.writers.bin.rust # obviously
orivej has quit [Ping timeout: 256 seconds]
<supersandro2000>
We still have an stackoverflow somewhere I think
<supersandro2000>
nvm I had ulimit -s on 4096
<supersandro2000>
nix should check this tbh
__Sander__ has quit [Quit: Konversation terminated!]