<
samueldr>
hmm, what if errors also stated, as best as they could, what it tried to do when failing
<
samueldr>
I had the error "cannot coerce a list to a string, at ..."
<
samueldr>
a message that would have helped in that case is "cannot coerce a list to a string, when concatenating lists"
<
samueldr>
it was a typo, + instead of ++
<
samueldr>
> [] + []
<
{^_^}>
cannot coerce a list to a string, at (string):266:1
<
samueldr>
oops, here it wouldn't be concatenating lists, it would be using the arithmetic addition or something like that...
<
samueldr>
or uh, string concatenation, yeah, (two distinct operators in the table, same symbol)
<
samueldr>
(kind of rubber ducking the idea by explaining it, sorry)
<
clever>
samueldr: any time you have 2 exprs seperated by a +, it turns into an ExprConcatStrings node in the AST
<
clever>
-, *, and / all turn into ExprApp (function application) against __sub, __mul, and __div
<
samueldr>
yeah, I was starting to think more about "does it make sense in all cases" to explain the reason it was coerced
<
samueldr>
like, can we even?
<
samueldr>
> "a" - 1 # when attempting subtraction
<
{^_^}>
value is a string while an integer was expected, at (string):266:1
<
clever>
if the first thing is an int, and the 2nd thing is an int or float, it will add the numbers
<
clever>
samueldr: that calls __sub, which expects 2 numbers
<
clever>
i think its complicated by + being overloaded, for both string and int
<
samueldr>
though, would it make sense, and can we, help the programmer reason about the coercion?
<
samueldr>
ignoring + for now
<
samueldr>
(which is why I switched to -)
<
clever>
also, why do we have an __add, if + doesnt use it?
<
clever>
__sub, will check if either side is a float, and if so, cast both to float, and -
<
clever>
if neither is a float, it will cast both to an int and -
<
clever>
throwTypeError("value is %1% while an integer was expected, at %2%", v, pos);
<
samueldr>
heh, right, if I override __add to __mul, "+" doesn't multiply, while the same for sub works
<
clever>
yep, i ran into that trouble when trying to have fun with scopedImport
<
samueldr>
right, so from a really cursory look, the errors themselves don't have the context required to "just" throw in that info
<
clever>
> [] + "foo"
<
{^_^}>
cannot coerce a list to a string, at (string):266:1
<
clever>
> "bar" + []
<
{^_^}>
cannot coerce a list to a string, at (string):266:1
<
clever>
ah, i think i see whats going on
<
clever>
neither side had an int or a float
<
clever>
so it fell back to the only other thing + can do, concat a pair of strings
<
clever>
and then coerceToString threw the error
<
samueldr>
yeah, looking a the source the change required would be invasive
ris has quit [Ping timeout: 265 seconds]
<
disasm>
I deployed a run key and set the user to the same user the systemd service runs as but it errors with permission denied reading the key.
<
disasm>
wrong channel, sorry
harrow has quit [Ping timeout: 240 seconds]
ivan has quit [Ping timeout: 276 seconds]
harrow has joined #nixos-dev
ivan__ has joined #nixos-dev
ivan__ is now known as ivan
drakonis has joined #nixos-dev
ixxie has joined #nixos-dev
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #nixos-dev
init_6 has joined #nixos-dev
init_6 has quit [Read error: Connection reset by peer]
orivej has quit [Ping timeout: 240 seconds]
orivej has joined #nixos-dev
ixxie has quit [Ping timeout: 265 seconds]
__monty__ has joined #nixos-dev
misuzu has quit [Remote host closed the connection]
misuzu has joined #nixos-dev
ris has joined #nixos-dev
orivej has quit [Ping timeout: 240 seconds]
<
tazjin>
hmm, do we have a tool for diffing two nixpkgs sets?
<
tilpner>
tazjin: If derivations, nix-diff
<
tilpner>
tazjin: If actually sets, print as json/xml, diff those (can diffoscope help?)
<
tazjin>
tilpner: I want to diff two entire package sets (i.e. "the following keys are different")
<
tazjin>
gonna experiment a bit
drakonis_ has joined #nixos-dev
drakonis1 has joined #nixos-dev
drakonis has quit [Ping timeout: 240 seconds]
drakonis_ has quit [Ping timeout: 240 seconds]
drakonis has joined #nixos-dev
drakonis1 has quit [Ping timeout: 240 seconds]
drakonis_ has joined #nixos-dev
drakonis has quit [Ping timeout: 276 seconds]
johanot has joined #nixos-dev
johanot has joined #nixos-dev
ixxie has joined #nixos-dev
eraserhd has joined #nixos-dev
drakonis_ has quit [Ping timeout: 268 seconds]
<
tazjin>
how did nixpkgs' callPackage idiom arise?
<
tazjin>
Why function headers with deps instead of NixOS-module-like fixed points?
pie__ has joined #nixos-dev
lassulus has quit [Read error: Connection reset by peer]
lassulus has joined #nixos-dev
orivej has joined #nixos-dev
<
jtojnar>
uugh, 8000 lines of changelogs for GNOME 3.34 came from just GNOME Maps
<
jtojnar>
they included the changelogs for older versions for some reason
<
jtojnar>
so I did not have to go through most of them
pie__ has quit [Ping timeout: 276 seconds]
pie_ has joined #nixos-dev
<
worldofpeace>
lol, more and more stuff
<
andi->
tazjin: I'd say one just predates the other?
<
gchristensen>
woohoo, the macs have been upgraded
justanotheruser has quit [Ping timeout: 276 seconds]
evanjs has joined #nixos-dev
<
worldofpeace>
Does anyone have any opinions on nouveau being blacklisted in the iso-image?
<
samueldr>
why was it blacklisted, that may sway opinions one way or another
<
samueldr>
(and when?)
<
samueldr>
>> Yes. Actually the nomodeset was enough, so we could get rid of the blacklisting of nouveau.
<
samueldr>
then enabling nouveau seems good to me
<
samueldr>
or there, as it's more a quirk
<
samueldr>
though I dislike how we can't easily combine quirks and accessibility features together
<
samueldr>
grub would have benefitted from a kind of checkbox-driven menu
<
samueldr>
options can't really compose nicely; other than building all possible combination of options as submenus
<
worldofpeace>
Though last time I checked in other distros people just use nomodeset
<
samueldr>
yeah, nomodeset is likely fine
<
samueldr>
You have booted with nomodeset. This means your GPU drivers are DISABLED\n
<
samueldr>
short circuits a bunch of things
<
worldofpeace>
lol, TBH nvidia users can frequently exist in text mode :P
<
samueldr>
updated the PR with the latest findings
<
worldofpeace>
^ manjaro doing cool looking things
tv has quit [Ping timeout: 245 seconds]
lassulus has quit [Ping timeout: 276 seconds]
<
samueldr>
that's isolinux, right?
tv has joined #nixos-dev
lassulus has joined #nixos-dev
__monty__ has quit [Quit: leaving]
<
worldofpeace>
Lol, you tell me
<
samueldr>
grub it is
lassulus has quit [Ping timeout: 245 seconds]
tv has quit [Ping timeout: 276 seconds]
lassulus has joined #nixos-dev
tv has joined #nixos-dev
aanderse has joined #nixos-dev
tv has quit [Ping timeout: 240 seconds]
lassulus has quit [Ping timeout: 265 seconds]
tv has joined #nixos-dev
lassulus has joined #nixos-dev
<
tazjin>
what is the role of `build-remote` if the build is executed locally?
tv has quit [Ping timeout: 240 seconds]
lassulus has quit [Ping timeout: 240 seconds]
tv has joined #nixos-dev
lassulus has joined #nixos-dev
lassulus has quit [Ping timeout: 240 seconds]
tv has quit [Ping timeout: 245 seconds]
lassulus has joined #nixos-dev
tv has joined #nixos-dev
phreedom has quit [Remote host closed the connection]
phreedom has joined #nixos-dev