<yuken>
I'm reading through Nix Pills & manual first.
<samueldr>
sounds fine, it's a lot to take in since working with nix, especially nixos, reigns in the nix language, general package management theory, and how posixish/linux systems are built :)
<yuken>
... oh, functions are easier than I thought.
<{^_^}>
[nixos-weekly] @TravisWhitaker opened pull request #92 → Add Anduril Industries job post. → https://git.io/fjswo
<yuken>
I'm still iffed at no options in Nix for setting GTK themes in, say, XFCE
jackdk has joined #nixos
<yuken>
can't do desktopManager.xfce.theme = "THEME_NAME" or something? :P
work_ has quit [Quit: Connection closed for inactivity]
<samueldr>
currently nixos assumes that "user settings" are managed any other way than through nixos options; though one could also say "but an xfce theme could be a global setting"
<samueldr>
so maybe for this specific case it is as simple as "no one had the need yet"
<yuken>
maybe, if it isn't an option I can just run a bash script to do it I assume.
<yuken>
which should be pretty simple, just replace the theme value in xsettings.xml with the appropriate name.
<yuken>
though that is user config, so it would need to apply just to created users, hmm
<samueldr>
maybe there's also a way to do it system-wide, something through generating the right xml file in /etc/xdg
<samueldr>
from my stint in xfce years ago, I seem to remember it using /etc/xdg for defaults
<yuken>
hm, that was apparently a while ago, dunno if it still applies. It might though, I'll duckduckgo it
<yuken>
it still is, that's nice. I guess I can learn more about Nix symlinks like that, then...
<yuken>
I noticed NixOS has a nixos-build-vms - is that just for NixOS VMs, and I should grab QEMU/etc for other VMs?
<samueldr>
yeah, nixos-rebuild build-vm builds a nixos configuration, it wouldn't be able to handle another distro or OS, I presume
<samueldr>
(I say I presume because we never know with the talent around here what misuse they do of things!)
<yuken>
oh, NixOS' QEMU comes with PPC64 and such, I didn't even realise QEMU had those options
grischeg has quit [Read error: Connection reset by peer]
<aswanson>
yuken: I see that there is a xfce.extraSessionCommands option available, I don't know how theming is actually applied in xfce but it may get you what you're after, eventually
<samueldr>
from what I know, some default qemu packages in distros bring in the host's arch only, and either split per-arch or through a full qemu package
grischeg has joined #nixos
<yuken>
samueldr, well, just "qemu" is all of them, qemu_kvm or qemu_host or something is just host.
stepcut has quit [Ping timeout: 250 seconds]
<yuken>
I actually wanted different archs available though.
<samueldr>
talking about other distros :)
stepcut has joined #nixos
<yuken>
ah
<yuken>
Yeah, Arch only brings in host arch by default
oida has quit [Ping timeout: 256 seconds]
bikes has joined #nixos
ris has quit [Ping timeout: 260 seconds]
kisonecat has joined #nixos
<{^_^}>
[nixpkgs] @NeQuissimus merged pull request #60172 → Fix kernel oops on boot due to bug in i2c driver. → https://git.io/fjsLJ
<{^_^}>
[nixpkgs] @NeQuissimus pushed commit from @ambrop72 to release-19.03 « Fix kernel oops on boot due to bug in i2c driver. »: https://git.io/fjsw1
oida has joined #nixos
Rusty1 has quit [Quit: Konversation terminated!]
xent has joined #nixos
<{^_^}>
[nixpkgs] @NeQuissimus pushed commit from @ambrop72 to master « Fix kernel oops on boot due to bug in i2c driver. »: https://git.io/fjswD
<{^_^}>
[nixpkgs] @NeQuissimus pushed commit from @ambrop72 to release-18.09 « Fix kernel oops on boot due to bug in i2c driver. »: https://git.io/fjswy
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/fjswQ
qubasa_ has joined #nixos
<jackdk>
when does all-cabal-hashes get updated? I've been hanging out for the ability to callHackage for reflex-0.6, as nixpkgs only has 0.5.1 with broken = true;
<jackdk>
correction, 0.5.0.1
Qubasa has quit [Ping timeout: 255 seconds]
ferriswheel has joined #nixos
jasongrossman has quit [Ping timeout: 258 seconds]
<infinisil>
Um, is there anything to prevent nix's GC from just deleting all of nixops system builds?
<aanderse>
oh gosh... when people say stuff like that it makes me nervous -_-
<infinisil>
Because I don't see anything that would prevent it..
<aanderse>
i think srhb convinced me this wasn't a problem recently
<samueldr>
at least the currently running system should stay alive through memory roots I hope?
<samueldr>
I know next to nothing about nixops
<aanderse>
i just ran some cleanups recently
<gchristensen>
locally or remotely?
<aanderse>
machines are still running :p
Shouou has joined #nixos
<gchristensen>
all of the nixos infra is run with nixops and super regular GC, so yes definitely
bikes has quit [Ping timeout: 276 seconds]
<gchristensen>
nixops creates profiles just like nixos-rebuild
<infinisil>
Where are those profiles?
<infinisil>
They're not in /nix/var/nix/profiles
<aanderse>
infinisil: if you find out anything please let me know as i just finished upgrading all prod boxes to 19.03 today and will likely run cleanups soon :p
<gchristensen>
querying about 30 machines, all 30 have profiles in /nix/var/nix/profiles/
<infinisil>
Huh
<gchristensen>
system-*-link
<infinisil>
Yeah I only have my local machine there
<infinisil>
I have 4 in nixops
<infinisil>
No trace of them in there
mconstant has joined #nixos
<gchristensen>
do you mean *locally* on your deploy machine?
<infinisil>
Yeah
<gchristensen>
you want enableRollbacks
lovesegfault has quit [Ping timeout: 264 seconds]
<infinisil>
Huh
bvdw6 has joined #nixos
lassulus has quit [Read error: Connection reset by peer]
hedning__ has left #nixos [#nixos]
<infinisil>
Well I don't need rollbacks, I just need to have the last generation in a profile, but I guess this will do
<infinisil>
aanderse: ^
<aanderse>
ohh gchristensen has 30 nixops machines! now i really regret not being able to come for office hours!
lassulus has joined #nixos
<aanderse>
gchristensen: are you gonna livestream so i can listen in?
Synthetica has quit [Quit: Connection closed for inactivity]
<gchristensen>
people have asked that .... I don't know yet!
<gchristensen>
:D
hellrazo1 has joined #nixos
<DigitalKiwi>
twitch it!
hellrazor has quit [Ping timeout: 258 seconds]
bikes has joined #nixos
buffet has quit [Ping timeout: 245 seconds]
mconstant has quit [Ping timeout: 258 seconds]
buffet has joined #nixos
thc202 has quit [Ping timeout: 250 seconds]
kisonecat has quit [Ping timeout: 246 seconds]
kleisli has joined #nixos
bikes has quit [Ping timeout: 258 seconds]
<infinisil>
Lol, I was wondering why my build was causing constant freezes
<infinisil>
Turns out when you compile 9 versions of the same package all for different GHC versions, it needs about (size of GHC) * 9 of RAM, because all those dependencies are interleaved
<infinisil>
And I don't have 9GB or what of RAM, so it constantly hit swap
<gchristensen>
hah
<infinisil>
I'm gonna try building each of them in series now
<gchristensen>
-j 1? :)
Mark__ has joined #nixos
<infinisil>
gchristensen: Nah, like each of the 9 versions in series with a bash loop
<infinisil>
Because with -j 1 it would still have to load/unload GHC versions in and out of RAM all the time
<infinisil>
As dependencies of each version get compiled
<infinisil>
I'm actually not sure why nix decides to interleave everything
lordcirth__ has quit [Ping timeout: 276 seconds]
<infinisil>
I wonder how it decides the order
Shouou has quit [Ping timeout: 246 seconds]
Shouou has joined #nixos
silver has quit [Read error: Connection reset by peer]
mexisme has quit [Ping timeout: 250 seconds]
lord| has quit [Quit: WeeChat 2.4]
lord| has joined #nixos
<clever>
infinisil: if you try to build 2 copies of X, with difference ghcs, then they dont have any deps in common, so building both versions at once lets it meet your -j even when they hit bottlenecks and both stall on 1 thing
<clever>
a lot of build systems need a load detecting -j
orivej has quit [Ping timeout: 245 seconds]
fusion809 has joined #nixos
o1lo01ol1o has joined #nixos
o1lo01ol1o has quit [Remote host closed the connection]
o1lo01ol1o has joined #nixos
stepcut_ has joined #nixos
mconstant has joined #nixos
stepcut has quit [Ping timeout: 258 seconds]
rajivr___ has joined #nixos
Supersonic112 has joined #nixos
Supersonic has quit [Disconnected by services]
luciandesozay33[ has joined #nixos
Supersonic112 is now known as Supersonic
<luciandesozay33[>
Hey
<luciandesozay33[>
Hey
<infinisil>
gchristensen: enableRollback worked, but the profiles are in /nix/var/nix/profiles/per-user/root/nixops for me, not /nix/var/nix/profiles directly
Glider_IRC has quit [Ping timeout: 245 seconds]
<gchristensen>
yeah
<infinisil>
And I only have a single profile, a single symlink for all machines, not one for each machine
<clever>
infinisil: within that profile, will be symlinks for each machine
<infinisil>
Yeah I know
<clever>
sadly, if you deploy with --include, the new generation will be partial
<infinisil>
Just wanted to mentioned because gchristensen said "all 30 [of his machines] have profiles in /nix/var/nix/profiles/"
<clever>
so if you --include a lot, you need to go backwards thru profiles to piece together the full state
<gchristensen>
infinisil: at the time I thought we were discussion profiles on the target system
<infinisil>
clever: Ah darn
<infinisil>
I'm using --include/--exclude a lot
<infinisil>
gchristensen: Oh I see
<infinisil>
clever: I guess I could at least use deployment.alwaysActivate = false to avoid deploying to machines without changes
<gchristensen>
O.o :o
<infinisil>
I did use that in the past actually, but I think there was a problem with nixops not knowing that it didn't actually activate it yet
<infinisil>
actually actually actually
<infinisil>
Which could occur if you Ctrl-C during a deploy
<infinisil>
clever: Oh but I'm not using enableRollback to rollback, so this is fine
<infinisil>
I just need it for Nix to not gc my paths
mconstant has quit [Ping timeout: 245 seconds]
<infinisil>
And because I use target = "other" for all machines, I can roll them back like a normal NixOS if I need it
<gchristensen>
s/other/none/? I've not heard of other
<infinisil>
Ah yeah none
<gchristensen>
cool
mconstant has joined #nixos
<{^_^}>
[nixos-weekly] @domenkozar pushed 2 commits to master: https://git.io/fjsrr
<simpson>
DigitalKiwi: Okay, so AFAICT I was pretty wrong. It appears that we *do* kind-of-support DKMS, in that we *could* set the relevant kernel config flags. But we don't, because we don't ever need to allow kernel module rebuilds under conditions where we don't have all of the pieces at once.\
sb0 has joined #nixos
<drakonis1>
yuken: its okay, we've all been there
<yuken>
I'm too used to OOP and such
InFlames has quit [Ping timeout: 258 seconds]
alexherbo26 has joined #nixos
alexherbo2 has quit [Ping timeout: 246 seconds]
justan0theruser has joined #nixos
justanotheruser has quit [Disconnected by services]
justan0theruser is now known as justanotheruser
<samueldr>
there is DKMS support, but both time I tried it was relatively trivial getting a DKMS module working
<samueldr>
there is no** DKM support
<yuken>
This jsut seems like hell to get anything working :P
<samueldr>
from memory, these were the general things to look out for
<samueldr>
patching the kernel version, then installing to the proper dir
<samueldr>
a bunch of what's under linuxPackages is made the same way, as out of tree kernel modules
<yuken>
I assume stdenv, fetchgit, fetchpatch, etc, are all just arguments for the function in this case?
<samueldr>
kinda
<samueldr>
,callpackage
<{^_^}>
If a Nix file foo.nix starts with something like `{ stdenv, cmake }:`, you can build it with `nix-build -E '(import <nixpkgs> {}).callPackage ./foo.nix {}'`
ddellacosta has quit [Ping timeout: 245 seconds]
<samueldr>
it's how dependency injection is handled throughout nixpkgs
<yuken>
so what, it's basically saying
<yuken>
"I depend on this stuff, import it", and that stuff comes from <nixpkgs> (aka. the installed packages you got/the packages nix has available)?
Guest16 has quit [Ping timeout: 255 seconds]
<samueldr>
yeah
<samueldr>
though, not "the installed packages", but really "what's in nixpkgs"
<yuken>
well, what is in nixpkgs? Is that just a list of all packages that Nix has?
<yuken>
In whatever repositories/channels you're using
<samueldr>
some parameters, here `kernel` are replaced depending on which linuxPackages package set is being built
<samueldr>
there is no real concept of "repositories", which is a departure from the usual distro setup
<samueldr>
the channel represents, in some way, a tested commit of nixpkgs at a specific time
<samueldr>
so you end up building against a commit of the nixpkgs repo
<samueldr>
pre-built artifacts here are from the cache, and not from a repo, they are cached build artifacts, different semantics, but ends up working mosty like a repo in the end
<yuken>
well that makes sense.
<samueldr>
so, "what's in nixpkgs" is "whatever is in that commit in the nixpkgs repo"*
kleisli has joined #nixos
<samueldr>
* and if you extend it using overlays or do other things then those overlays or other things will affect what's in nixpkgs
<yuken>
and then anyone could setup their own packages I assume, which would just be name.packages
<yuken>
/s/packages/channel-etc
MinceR_ has joined #nixos
<samueldr>
generally what happens (AFAIK) is users build an overlay with whatever additional stuff or tweaks they need, I don't know if there are people havinga a non-nixpkgs channel
<samueldr>
again, a departure from the common distribution setups :)
<yuken>
maybe North Korea will use their own channel, ez pz
<yuken>
can build all packages the way they want for their fellow comrades.
<samueldr>
not-os is more a non-nixos distro, but based on nixpkgs
<clever>
not-os is more of an overlay then a fork, it just uses bits of nixpkgs to create a bootable image, thats not nixos
ddellacosta has quit [Ping timeout: 246 seconds]
<tdeo>
yuken: what tablet are you trying to get working?
<yuken>
An H640p, cheapo thing.
Guest16 has joined #nixos
ddellacosta has joined #nixos
<Guest16>
Hello, I am having some trouble with packaging two packages.
<tdeo>
i see. i had digimend working for my G640 but I don't have the derivation anymore, because i ended up just switching to linux 5.1 since the support was added there
<tdeo>
i'll see if i can make one quickly
<Guest16>
sorry for the incomplete message. I typed shift-enter. I am having trouble with packaging two projects. In both cases, it seems that C++ headers are not being found. The first is https://pastebin.com/7FGYdaCk where scons fails to detect gtk. The gtk version in the build satisfies the required version requirement so my guess is that scons has failed
<Guest16>
to see it altogether. The second is https://pastebin.com/ujjednXn where scons fails to find a header file. When I do a nix-shell with the same dependencies, I see NIX_CFLAGS_COMPILE having the path to header. I intend to publish both these projects to the official nixpkgs github if somebody could kindly help me out.
<samueldr>
do you know how scons usually checks for gtk? does it use pkg-config?
<yuken>
tdeo, wait, support exists in 5.1?
<tdeo>
sorry if i was unclear, support for my G640 is in 5.1
<yuken>
ah
<yuken>
Right now, I'm trying to figure out how to make my own derivation, which is difficult to learn coming from OOP and not knowing how Nix works.
lovesegfault has quit [Quit: WeeChat 2.4]
lovesegfault has joined #nixos
mkoenig has quit [Quit: Lost terminal]
mkoenig has joined #nixos
ddellacosta has quit [Ping timeout: 250 seconds]
<Guest16>
samueldr: I do not know it. There is no such mention. Would it help you to know the truncated relevant output? "scons: Reading SConscript files" ...... "Checking for library gtk+-2.0 >= 2.24.0... no"
<tdeo>
not sure exactly how to add it to the configuration
<tdeo>
oh, it didn't add the non-module stuff, oops
<yuken>
tdeo, oh, that's pretty similar to what I have so far, good to knwo I'm doing it right-ish :P
<samueldr>
Guest16: just tested, it seems to use pkg-config, so adding pkgconfig to buildinputs will make it work
<samueldr>
Guest16: also looked at other scons using packages, it uses a hook so if you remove buildPhase entirely it should still build using scons
o1lo01ol1o has quit [Remote host closed the connection]
kaliumxyz has joined #nixos
shibboleth has quit [Quit: shibboleth]
<kaliumxyz>
ping
<kaliumxyz>
something needs updating on the pkgslist, do I fork it and make a PR?
<kaliumxyz>
or do I need to tell someone?
<tdeo>
yuken: i've updated it to also install the other parts, this package should theoretically work now
<samueldr>
kaliumxyz: yes, making a PR is appropriate, also check beforehand in case someone else did it first :)
<tdeo>
gah, it hardcodes /usr/share
<tdeo>
the upstream makefile
<samueldr>
(like, search using the search box in the PRs page, sometimes someone did the hard work!)
<tdeo>
updated again
<tdeo>
if you get this to work, i could try to make it a nixos module and make a PR so you'd be able to do something like `hardware.digimend.enable = true;` in the future
<yuken>
That'd be nice, tdeo, thanks.
alexherbo26 has quit [Ping timeout: 246 seconds]
<tdeo>
what's the process to add a package to linuxPackages to an overlay? from what i can tell you'd have to `linuxPackages = super.linuxPackages // {...};` for every linuxPackages there is
justanotheruser has quit [Ping timeout: 258 seconds]
<Guest16>
samueldr: That worked. I may bother you again if I need help figuring out how to get the binaries in the "install" location. Thank you :)
<yuken>
tdeo, now I just have to figure out how exactly this works, how to run it, and how to make my own - I'll use your's as a base, thanks.
<samueldr>
Guest16: I won't be around like about now, so ask around, and maybe grep for scons in the nixpkgs repo, that's how I found about how it doesn't need the buildPhase
<Guest16>
That's a good tip. I will find out who else uses scons and proceed from there. You've been very kind. THank you again :)
<tdeo>
yuken: it'll need to go in boot.extraModulePackages and possibly services.udev.packages and services.xserver.modules
<Guest16>
samueldr: In the off chance you still happen to be around- I'll need your help getting the binaries to install.
<Guest16>
(sorry, incomplete message)
<clever>
tdeo: it checks both
<Guest16>
samueldr: In the off chance you still happen to be around- I'll need your help getting the binaries to install. I've tried a few things but none seem to work. On github it seems that nobody even has a buildPhase or installPhase (that feels relevant) with scons but I get 'make: *** No rule to make target 'install'. Stop.' for both the packages. Wou
<Guest16>
ld you have any quick tips on how to proceed? (I'm still continuously scouring through github)
<Guest16>
samueldr: Please don't bother answering- I'm not here frequently. I will come back tomorrow.
Guest16 has quit [Remote host closed the connection]
reinhardt has quit [Quit: Leaving]
Lears has joined #nixos
<CMCDragonkai>
In the latest `buildPythonApplication` for 19.03, it no longer has pip available inside the environment. How do I get pip as well there? I added pip as an explicit dependency but it's not there.
<CMCDragonkai>
Not there inside then nix-shell that is.
<{^_^}>
[nixpkgs] @Amar1729 opened pull request #60241 → init: sd at 0.5.0 → https://git.io/fjsoa
justanotheruser has quit [Ping timeout: 255 seconds]
<CMCDragonkai>
It appears that in 19.03, there buildPythonPackage and buildPythonApplication no longer exports CLI executables in buildInputs nor propagatedBuildInputs, you have to use nativeBuildInputs or propagatedNativeBuildInputs. And you have to pip there as well.
<teto>
I wonder about that too, I've added some programs in the buildInputs of vim plugins, but these plugins can't seem to find the binaries on PATH
<{^_^}>
[nixpkgs] @dfordivam opened pull request #60246 → nixos/modules/virtualization: Options to add an extra disk in virtualbox VM → https://git.io/fjsoh
<iqubic>
Really, what I'd like is the ability to take one or more audio sources and combine them to make a new source, which I can then feed to whatever sink I want.
marusich has joined #nixos
phreedom has joined #nixos
phreedom_ has quit [Ping timeout: 256 seconds]
slyfox has quit [Quit: \o/]
palo1 has joined #nixos
<teto>
iqubic: seems like PA was designed for this usecase but maybe ask a pulseaudio channel they should know more ?
<{^_^}>
[nixpkgs] @dotlambda pushed commit from @risicle to master « pythonPackages.serversyncstorage: mark as broken if cornice.version != 0.17 (#59884) »: https://git.io/fjsKV
hhes has quit [Ping timeout: 240 seconds]
lmarks has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @dotlambda merged pull request #59975 → pythonPackages.ColanderAlchemy: fix build by pinning to colander 1.6.0 → https://git.io/fj3vU
<{^_^}>
[nixpkgs] @dotlambda pushed commit from @risicle to master « pythonPackages.ColanderAlchemy: mark as broken for colander >1.6.0 (#59975) »: https://git.io/fjs6I
alter-schjetne has quit [Ping timeout: 258 seconds]
NixGuest has joined #nixos
<NixGuest>
Hello, I have an error, my gcc cannot find pthread, I did run `nix-shell -p glibc`
civodul has joined #nixos
<teto>
dtz: peterhoeg: if you race as fast as you merge PRs I am in a bit of a bind for our supertuxkart competition (dtz interested in competing ? and anyone really :D )
<sphalerite>
NixGuest: within `nix-shell -p` (glibc is an implicit input to all stdenv builds), `gcc -pthread` works for me…
<sphalerite>
NixGuest: do you have gcc installedi n your profile maybe?
<JaakkoLuttinen[m>
Anyone having problems with KDE on nixos-unstable? I upgraded yesterday and now desktop switching slide animation doesn't work and if I enable "Show on-screen display when switching", kwin_x11 crashes every time I switch desktop. I wonder if this is KDE or NixOS issue.
<infinisil>
JaakkoLuttinen[m: Do you have an error message?
<infinisil>
JaakkoLuttinen[m: Did you reboot after upgrading?
<JaakkoLuttinen[m>
infinisil: yes.
<JaakkoLuttinen[m>
i even ran `nixos-rebuild boot` so it wouldn't mess up the running system
ixxie has joined #nixos
Soo_Slow has joined #nixos
<infinisil>
I have no idea what the problem is, but if you're willing to spend some time to figure it out, you could bisect the problem
<infinisil>
To find out which commit broke it
<JaakkoLuttinen[m>
infinisil: ok.. :) i'll probably try around some kde plasma/frameworks upgrade commits, those are likely candidates, i guess
<infinisil>
Yeah
PirBoazo has joined #nixos
<PirBoazo>
Bonjour le monde
<__monty__>
Comment ça-va?
pauline has quit [Ping timeout: 246 seconds]
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
NickSeagull has joined #nixos
tboston_ has joined #nixos
cfricke has quit [Quit: WeeChat 2.4]
kai_w has quit [Quit: Konversation terminated!]
Fulgen has joined #nixos
linarcx1 has quit [Ping timeout: 245 seconds]
kai_w has joined #nixos
tboston_ has quit [Ping timeout: 250 seconds]
<{^_^}>
[nixpkgs] @ambrop72 opened pull request #60254 → gdk-pixbuf: Use a different GDK_PIXBUF_MODULE_FILE environment variable on 32-bit and 64-bit systems. → https://git.io/fjsXU
<buffet>
hey, when i `nixos-rebuild build-vm`; whats the password in the resulting vm?
<Taneb>
Has anyone used AWS machines as remote builders for nix?
<Taneb>
Such that they're provisioned as needed
NickSeagull has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
NickSeagull has joined #nixos
<infinisil>
buffet: Try "!"
<infinisil>
As root
<buffet>
infinisil: doesnt work
ambro718 has joined #nixos
<infinisil>
buffet: Ah, there is none
<buffet>
infinisil: how do i log in then?
<infinisil>
You don't!
<infinisil>
You need to set one
<buffet>
whats the use then?
<infinisil>
You specify your user with users.users
<infinisil>
I don't see the problem
<infinisil>
Set password = "foo" for the user you want
<buffet>
not a fan of keeping my passwords in a config
<infinisil>
Then use hashedPassword
<buffet>
still not a fan
<buffet>
but yeah
<buffet>
thats the only way then i guess
<infinisil>
Well it is a stateless VM
<buffet>
i feel like it should ask for a root password, similar to nixos-install
<infinisil>
And anyways, it's a VM, just use whatever password you want
<__monty__>
Not a fan of hashedPassword? But that's how any linux distro I know stores your password.
<buffet>
__monty__: not any distro pushes that into a public git repo like i do with my nix conig thogh
<__monty__>
buffet: You can have the file not under version control and import it?
<{^_^}>
#59985 (by Lassulus, 4 days ago, open): nixos/syncthing: add options for declarative device/folder config
baum_ has joined #nixos
<baum_>
i just updated to 19.03 and my graphics driver seems to be glitching, do i have to remove the newly added channel before performing a rollback?
alexherbo26 has joined #nixos
<LnL>
depens if you want yo rollback temporally or not
grischeg has joined #nixos
<baum_>
LnL: for now i'd like to rollback permanently
<baum_>
LnL: means 1) remove the channel 2) rollback?
<LnL>
no you want to add the previous channel again
alexherbo266 has joined #nixos
<LnL>
same as you performed the upgrade
<baum_>
alright thanks, assuming i have multiple channels, which one takes priority?
<LnL>
only the one named nixos is used
alexherbo26 has quit [Ping timeout: 245 seconds]
<LnL>
unless you explicitly import others somewhere
pauline has quit [Ping timeout: 245 seconds]
<pie_>
anyone know how to fix "waiting for the big garbage collector lock..."?
romildo has joined #nixos
<baum_>
alright, thanks!
pauline has joined #nixos
romildo_ has joined #nixos
romildo__ has joined #nixos
baum_ has quit [Remote host closed the connection]
<{^_^}>
[nixops] @PsyanticY opened pull request #1139 → vault: strip token of new line → https://git.io/fjs1p
Glider_IRC_ has joined #nixos
<{^_^}>
[nixos-org-configurations] @grahamc opened pull request #84 → Macs on Linux → https://git.io/fjs1j
romildo has quit [Ping timeout: 276 seconds]
romildo_ has quit [Ping timeout: 276 seconds]
romildo__ has quit [Ping timeout: 258 seconds]
mconstant has quit [Ping timeout: 250 seconds]
Glider_IRC has quit [Ping timeout: 246 seconds]
ThatDocsLady has quit [Remote host closed the connection]
ardumont has quit [Ping timeout: 245 seconds]
lovesegfault has quit [Ping timeout: 276 seconds]
lovesegfault has joined #nixos
<grischeg>
How do I specify a simple iptables rule like the following in my configuration.nix? "iptables -A INPUT -i eth0 -j DROP"
NickSeagull has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<clever>
this lets you nix-env -iA foo.hello
<xorAxAx>
ok
<Philonous_>
I have a js project with complex build dependencies. Somehow it pulls in phantomjs-prebuilt as a node module which includes an executable with hard-coded fhs paths (interpreter and shared objects). I work around this by replacing it with a symlink to the phantomjs in th enevironment, but that's a terribly hack. How do I solve this properly?
Neo-- has joined #nixos
<Philonous_>
I don't think fixelf-ing a binary that npm pulled in is a much better approach.
<exarkun>
the tahoe-lafs test suite fails a lot on nixos right now so I tried to disable the check phase
<exarkun>
`checkPhase = null`
<exarkun>
but the tahoe-lafs test suite still runs while building the shell
<exarkun>
how do I make the test suite not run?
<infinisil>
Maybe doCheck = false
<exarkun>
behaves the same way
tdbgamer has quit [Remote host closed the connection]
<infinisil>
Try setting checkPhase = ''echo I AM HERE'' and seeing if it executes that
<xorAxAx>
hmm, how do i assign the same string to two variables in my configuration.nix?
<xorAxAx>
by pulling it out into a let at the top?
<exarkun>
xorAxAx: probably that, yea
ckoparkar has joined #nixos
<exarkun>
infinisil: doesn't seem to be executed
jasongrossman has quit [Remote host closed the connection]
<exarkun>
my tahoe-lafs.nix _seems_ to be used. eg, if I change src to the path to some other pile of python, `nix-shell` fails complaining about a patch failing to apply.
romildo has joined #nixos
<exarkun>
it echos "running install tests" before it starts the test suite. is that a nix...pkgs thing?
romildo_ has joined #nixos
pauline has quit []
ixxie has quit [Ping timeout: 250 seconds]
<infinisil>
exarkun: Oh that's installCheckPhase
<infinisil>
Try doInstallCheck = false
romildo__ has joined #nixos
<exarkun>
tyvm
<exarkun>
fixed (now just failing because of some collision)
romildo has quit [Ping timeout: 245 seconds]
romildo has joined #nixos
romildo_ has quit [Ping timeout: 245 seconds]
romildo_ has joined #nixos
romildo__ has quit [Ping timeout: 245 seconds]
romildo has quit [Ping timeout: 246 seconds]
romildo_ has quit [Ping timeout: 246 seconds]
_d0t has joined #nixos
reinhardt has quit [Quit: Leaving]
srid0 has quit [Ping timeout: 276 seconds]
mexisme has joined #nixos
justanotheruser has joined #nixos
srid0 has joined #nixos
orivej has joined #nixos
shibboleth has joined #nixos
<grischeg>
sphalerite: I tried both of the following options and neither seem to work, because the extraCommand is put too far down in the chain and the per-interface override doesn't seem to have any effect: https://gist.github.com/grische/a7325d60b27abb2c32a8f79e036ee12c
<justanotheruser>
hi, after moving to 19.03, I tried to run `xbacklight -2`, but I get the error `No outputs have backlight property`. Any idea what might be causing this?
rauno has quit [Remote host closed the connection]
<{^_^}>
[nixos-org-configurations] @grahamc merged pull request #84 → Macs on Linux → https://git.io/fjs1j
<{^_^}>
[nixos-org-configurations] @grahamc pushed 19 commits to master: https://git.io/fjsDP
jasongrossman has joined #nixos
<gchristensen>
justanotheruser:I think the release notes have something about this
<gchristensen>
let's see ...
sb0 has joined #nixos
<andi->
the default video driver is now `modesetting` I guess?
<gchristensen>
justanotheruser:https://nixos.org/nixos/manual/release-notes.html#sec-release-19.03-notable-changes check out "The intel driver has been removed from the default list..."
<{^_^}>
[nixpkgs] @mtrsk opened pull request #60265 → Update home manager 2019 04 23 → https://git.io/fjsDX
<clever>
this works for adjusting my screen brightness
<clever>
i suspect it will even work when X isnt running (plain text mode)
o1lo01ol1o has joined #nixos
Rusty1 has joined #nixos
srid0 is now known as srid
kisonecat has joined #nixos
cfricke has quit [Quit: WeeChat 2.4]
jabranham has joined #nixos
<jabranham>
I updated a package in nixpkgs, then ran "nix-build -A <pkg>". However, it failed the check phase. Where can I find the binary that was built so I can see what went wrong?
<Twey>
jabranham: If you use -K the build directory will be kept around
<{^_^}>
hydra#649 (by globin, 2 weeks ago, open): Create a gitlab status plugin
Makaveli7 has joined #nixos
<exarkun>
How should I configure emacs with the location of flake8 on nixos?
acarrico has joined #nixos
<gchristensen>
I use lorri + direnv
shabius_ has quit [Ping timeout: 257 seconds]
<exarkun>
oh right direnv
* exarkun
reads about lorri
<exarkun>
thanks
Synthetica has quit [Quit: Connection closed for inactivity]
<ambro718>
So I made a custom change in some library that causes many packages to be rebuilt, when I do nix-collect-garbage lots of stuff that was built locally and was only needed at build time was deleted, and will need to be re-built next time.
<ambro718>
How to make nix-collect-garbage preserve those things?
astrofog has joined #nixos
<immae>
ambro718: you can set keep-outputs = true and/or keep-derivations = true
<ambro718>
I can't find how to set that in system configuration.
mog has quit [Read error: Connection reset by peer]
<Twey>
ambro718: You'll need to use nix.extraOptions
romildo has quit [Quit: Leaving]
mog has joined #nixos
<ambro718>
thanks
<{^_^}>
[nixpkgs] @worldofpeace merged pull request #59915 → crawl: add .desktop file and use high-res app icon → https://git.io/fjOwF
<{^_^}>
[nixpkgs] @worldofpeace pushed 2 commits to master: https://git.io/fjsyV
<leotaku>
How can I put files in "/var/lib" for services? I see some nixos service descriptions just putting that stuff in "preStart", so is that the way to go?
linarcx1 has quit [Ping timeout: 250 seconds]
<ambro718>
I think so, because it is impossible to do that at build time.
<immae>
leotaku: you can also use activationScripts, but don’t do too much there (usually: creating directories is fine, but doing maintenance task belongs to preStart)
<leotaku>
thanks
fl0_id has quit [Ping timeout: 245 seconds]
linarcx1 has joined #nixos
<immae>
(and yes, as ambro718 pointed out, nothing can happen in /var/lib at build time, only when activating)
mog has quit [Quit: im quiting!]
jabranham has quit [Quit: ERC (IRC client for Emacs 27.0.50)]
mog has joined #nixos
zupo has joined #nixos
work_ has joined #nixos
Shouou has quit [Ping timeout: 246 seconds]
<aminechikhaoui>
,locate libopenjp2.so
<{^_^}>
Found in packages: openjpeg_2_1
NickSeagull has joined #nixos
JD_ has joined #nixos
kisonecat has quit [Ping timeout: 250 seconds]
nix_bnn has joined #nixos
<nix_bnn>
hello, i get a black screen on boot
<nix_bnn>
how do i boot into single user mode?
alexherbo2668 has joined #nixos
<nix_bnn>
i tried adding single to kernel cmdline in grub but it still doesn't boot into rescue
<JD_>
,locate ibopenjp2.so
<{^_^}>
Couldn't find in any packages
<lassulus>
nix_bnn: have you tried booting with nomodeset?
<{^_^}>
[nixpkgs] @worldofpeace pushed 2 commits to master: https://git.io/fjsSE
Shouou has joined #nixos
fl0_id has joined #nixos
o1lo01ol1o has quit [Remote host closed the connection]
o1lo01ol1o has joined #nixos
<ambro718>
There is currently no mechanism for a package to declare that when it is to be included in a user profile, it wants specific paths, from that package or other packages, to also be included?
ixxie has joined #nixos
<ambro718>
I mean system profile, nix-env user profile or anything like that.
<nix_bnn>
lassulus: thanks for the help i fixed the problem :)
<nix_bnn>
now it boots :)
Shouou has quit [Ping timeout: 250 seconds]
Shouou has joined #nixos
o1lo01ol1o has quit [Ping timeout: 246 seconds]
npmccallum has quit [Ping timeout: 250 seconds]
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ambro718>
Does anyone get the feeling that packages are relying on shell scripts too much instead of preferring nix expressions and passthru data in particular?
<ambro718>
I mean all the builder code
<ambro718>
Like the setup hooks, that could handled via passthru.
fl0_id has quit [Read error: Connection reset by peer]
<jabranham>
How can I force nix-build to build if the output is already in my nix store?
sb0 has quit [Quit: Leaving]
<lassulus>
--check will build it again and check if the output hash differs
<jabranham>
thanks
<lassulus>
or was it check? can't find it in the man page :D
<jabranham>
--check seems to be working
NickSeagull has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ambro718>
Where is the documentation on what can be done with a derivation within nix expressions? What is the exact logic for the meaning of X.attribute when X is a derivation?
alexherbo2668 is now known as alex2``
<ambro718>
For example, how does X.output_name or X.passthru_attribute work
<ambro718>
and what kind of entity X.output_name is
<avn>
Hello folks. Does anyone integraded splunk (forwarder) to nixos? or have open source alternative to splunk's own forwarder? (last part is offtopic a bit)
<clever>
> { outPath = "foo"; } // { a=42; }
<{^_^}>
{ a = 42; outPath = "foo"; }
<clever>
> let x = { outPath = "foo"; } // { a=42; }; in "${x}"
<{^_^}>
"foo"
<clever>
avn: any attribute set with a .outPath attr, can be cast to a string
o1lo01ol1o has joined #nixos
<clever>
ambro718: derivations are just sets with an outPath
jerrytgarcia has quit [Quit: jerrytgarcia]
jerrytgarcia has joined #nixos
<lassulus>
avn: splunk forwarder does not seem to be packaged and there is no PR for it
freddie-freeload has joined #nixos
<avn>
lassulus: I interesting in open forwarders (if any of them exists), or at least of requirements of this one (I hope, I capable make own package if need)
<lassulus>
I don't know anything about splunk forwarders. You can try packaging it yourself if you want to.
<ambro718>
clever: apparently, pkgs.coreutils and pkgs.coreutils.info are both the same thing, yet are not (one has .outputUnspecified defined, the other does not)
JD_ has quit [Quit: Page closed]
kisonecat has quit [Ping timeout: 246 seconds]
<Twey>
ambro718: It's a multi-output derivation
<ambro718>
clever: evidently, there is a derivation object, and derivation output object, though nix-repl cannot distihguish
npmccallum has joined #nixos
<Twey>
ambro718: One derivation (dd2xn…) produces two outputs, `out` and `info`
<ambro718>
Twey: yes, I would like to find documentation on what derivation.<output> is, by its nature. Where is .outputUnspecified documented?
<Twey>
ambro718: They're different things, they just happen to both stringify to the path of their derivation
<Twey>
There's some stuff on outputs in the manual; not sure about outputUnspecified
<ambro718>
pkgs.coreutils.info.info.info is a valid thing - fun :)
<Twey>
ambro718: It looks like outputUnspecified might be a thing set on multi-output derivations to indicate that they don't correspond to a particular output and you should look at an attribute on them
<{^_^}>
error: syntax error, unexpected EQ, at (string):252:70
<immae>
hey there! There are some repositories that have default.nix files (for instance yarn2nix), which is quite useful to avoid rewritting the expressions. What is the recommended way to include them in my nix expressions as dependencies? I tried to include them as "let foo = import (fetchurl { (repository) });" but they get garbage collected everytime I run nix-store --gc, how should I do it?
<ambro718>
Twey: yeah, when you do a .output, you get a "derivation with output specified" object, that is almost exactly like the original derivation object, but differs in that it has "output specified"
<{^_^}>
[nixpkgs] @kalbasit pushed commit from @NickHu to master « tmuxPlugins.vim-tmux-navigator: fix runtimepath (#60165) »: https://git.io/fjs9S
meck has joined #nixos
<ambro718>
so extendDerivation is essentially doing: (derivation { original drv attrs }) // add stuff // and more stuff
<ambro718>
and this supposedly does not actually change the derivation itself (i.e. what Nix would build)
<ambro718>
it must be a magic Nix feature then
<ambro718>
i.e. this semantic of existing derivation // stuff
<clever>
ambro718: the // is just adding things to the attrset, the .outPath is based on the original arguments to builtins.derivation, which are unchanged
<clever>
> rec { a=1; b=2; c = a+b; } // { a = 42; }
<{^_^}>
{ a = 42; b = 2; c = <CODE>; }
<clever>
> :p rec { a=1; b=2; c = a+b; } // { a = 42; }
<{^_^}>
{ a = 42; b = 2; c = 3; }
<clever>
changing a, didnt change c, because c depends on the old a
<ambro718>
yeah, though it's probably more complicated in the implementation (the drv path still remains the same as well)
<samueldr>
infinisil: thanks, but no, I've been using tmux instead of emulator-specific tabs for years, jumping between emulators depending on what grinds my gears that the moment
<edef>
0x00007fc57efad27d in el_print_columns (ac=ac@entry=10194, av=0x153b7c0) at editline.c:296
Shouou has joined #nixos
<samueldr>
(with the added benefit of ssh + attach to continue working on remote stuff!)
kipari has quit [Ping timeout: 245 seconds]
<infinisil>
I see
<edef>
296 for (j = i; j < ac; j += skip) {
<edef>
…i should maybe build this without optimisations
<edef>
that or the source gets patched
<edef>
oh it does get patched
<edef>
yep
<edef>
296 for (skip = ac / cols + 1, i = 0; i < skip; i++) {
Ariakenom has joined #nixos
<edef>
so our patch breaks it, although the comment with it says it'll be in the next release
<edef>
nix edit + nix-shell made that pretty easy to find at lesat
<edef>
*least
mconstant has joined #nixos
<edef>
the patch already exists upstream so i guess this is editline's fault
kipari has joined #nixos
Makaveli7 has quit [Quit: WeeChat 2.4]
endformationage has joined #nixos
kipari has quit [Quit: ZNC 1.6.5+deb1 - http://znc.in]
<edef>
and editline has had that line for 11 years
<dtz>
i don't know about that, but if you have q's may want to try over on #home-manager and I'm sure someone will have an answer for you :)
zupo has quit [Ping timeout: 258 seconds]
erasmas has joined #nixos
drakonis has quit [Ping timeout: 258 seconds]
jophish has quit [Ping timeout: 264 seconds]
<makefu>
ambro718: home-manager is the to-go way to manage user environments. i am using it on non-nixos Operating systems and i am quite happy with that setup
kisonecat has joined #nixos
jophish has joined #nixos
shabius_ has joined #nixos
linarcx has joined #nixos
judson_ has joined #nixos
jabranham has quit [Ping timeout: 250 seconds]
drakonis_ has quit [Read error: Connection reset by peer]
drakonis_ has joined #nixos
shabius has quit [Ping timeout: 257 seconds]
kisonecat has quit [Ping timeout: 255 seconds]
rauno has joined #nixos
drakonis_ has quit [Read error: Connection reset by peer]
drakonis has joined #nixos
civodul has quit [Quit: ERC (IRC client for Emacs 26.2)]
drakonis has quit [Read error: Connection reset by peer]
drakonis has joined #nixos
kisonecat has joined #nixos
ardumont has quit [Ping timeout: 246 seconds]
<ambro718>
the readme says to enable a channel, I don't like this, can't they just give me a nix expression?
<gchristensen>
the channel is a mode of distributing the nix expression
<gchristensen>
you can fetch it however other ways you want
<dtz>
edef: can you file a bug report, or link to one if you already did? Unsure where your diagnosis left things, with troglobit's editline or our patching of it or elsewhere...
<dtz>
and regardless sure sounds like something to see fixed :)
<{^_^}>
[nixos-org-configurations] @grahamc pushed 2 commits to master: https://git.io/fjsQt
<ambro718>
I'm just a little scared what will happen. I want it to just manage the local ~/.nix-profile or whatever, not my dotfiles or anything else.
<makefu>
ambro718: if you want just that you could also create a systemd service which activates, or an activationScriptt
<ambro718>
what does this have to do with systemd?
<AlexRice[m]>
ambro718: home manager doesn't overwrite dotfiles that are already in place
<ambro718>
AlexRice[m]: I don't want it to modify any dotfile, at all. Just setup the environment (i.e. build it and link it to the right place).
<AlexRice[m]>
I'm mean you shouldn't be able to accidently modify dotfiles
<ambro718>
okay
kisonecat has quit [Ping timeout: 246 seconds]
drakonis has quit [Ping timeout: 258 seconds]
MichaelRaskin has joined #nixos
drakonis has joined #nixos
drakonis has quit [Ping timeout: 276 seconds]
<kalbasit>
is there an environment variable equivalent of `--option binary-caches` ?
mexisme has joined #nixos
biopandemic has joined #nixos
mexisme has quit [Ping timeout: 246 seconds]
<infinisil>
kalbasit: There is NIX_CONF_DIR you could probably use
<kalbasit>
interesting!
<kalbasit>
infinisil: does that completely overrdies the user settings?
<infinisil>
Probably
<kalbasit>
to give you a bit of context, I want to use our cachix cache when the environment is being prepared by nix-instantiate/nix-shell
<kalbasit>
should I just pass the options in this case?
tboston_ has joined #nixos
<infinisil>
If you can pass the options easily I'd suggest that yeah
<kalbasit>
sounds good, thank you!
englishm has quit []
kisonecat has joined #nixos
biopandemic has quit [Quit: biopandemic]
englishm has joined #nixos
<kalbasit>
`cachix use` did not work across os and installation modes BTW. Even `cachix use <...> || sudo "$(which cachix)" use <...>` did not work either. (the which was necessary because sudo did not find the command installed for the user vira nix-env)
JD_ has joined #nixos
<JD_>
,locate libstdc++.so.6
<{^_^}>
Found in packages: robo3t, gcc-unwrapped.lib
<xorAxAx>
,locate ping
<{^_^}>
Found in packages: axis2, cheat, cjdns, grass, irssi, toybox, busybox, iputils, charybdis, inetutils, ircdHybrid, factor-lang, silc_client, unixtools.ping, bash-completion
<infinisil>
I feel like cachix should have a `cachix use --args` command you can use like `nix-build -A foo $(cachix use --args)`
<infinisil>
kalbasit:^
<xorAxAx>
,locate usr/bin/ping
<{^_^}>
Couldn't find in any packages
<infinisil>
,locate bin ping
<{^_^}>
Found in packages: toybox, busybox, iputils, inetutils, unixtools.ping
<kalbasit>
infinisil: that would actually be wonderful yes!
<itorres>
Hi, anyone has experience with nix-bundle (https://github.com/matthewbauer/nix-bundle)? Mainly I want to know if I can use it with a default.nix environment or I need to create a named derivation (as the docs seem to imply)
<hlolli>
can someone, just by looking at this stacktrace from gcc compilation, why these standard c library files aren't found? https://pastebin.com/mBCDyJ2n
<hlolli>
I run this in nix-shell -p graalvm8 glibc. And the -L paths are showing collect2 directories where these .so files are at, this is actually a static compilation, and I think there's .a file there as well
<ambro718>
What value of pathsToLink does nix-env use to build the user profile?
kisonecat has joined #nixos
nixy has joined #nixos
<ambro718>
Which package exactly does nix-env build?
<hlolli>
going to try to add this to java.library.path `/nix/store/681354n3k44r8z90m35hm8945vsp95h1-glibc-2.27/lib/libc_nonshared.a` maybe it's the nameing. nix-shell glibc.static doesn't work either somehow... it's maybe a nieche case of compilation.
<dtz>
edef: I intend to credit you for (indirectly) reporting the issue, is that okay and if so would you prefer something other than "edef from #nixos on freenode"?
alex2``33 has joined #nixos
alex2``3 has quit [Ping timeout: 250 seconds]
<gchristensen>
they're edef1c on github fwiw
<dtz>
kk ty
mconstant has quit [Ping timeout: 268 seconds]
<{^_^}>
[nixpkgs] @dtzWill opened pull request #60279 → editline: fix crash with term narrower than completions → https://git.io/fjs7K
<{^_^}>
[nixpkgs] @samdoshi opened pull request #60281 → peco: fix incorrect termbox-go rev in deps.nix → https://git.io/fjs7h
zupo has joined #nixos
<andi->
ooohh
<lucus16>
escape''
<lucus16>
,escape''
<{^_^}>
'' two single quotes: ''' bash curly bois: ''${} newline: ''\n tab: ''\t any character x: ''\x ''
<andi->
gchristensen: you think that is it?
ris has joined #nixos
<gchristensen>
sure looks related
<lucus16>
My code generated an indented string ending in a single quote
<{^_^}>
[nixpkgs] @Infinisil opened pull request #60282 → browserpass: Remove v2 and switch to buildGoModule → https://git.io/fjs5f
<andi->
let me compare that with current upstream code..
smhow has joined #nixos
<lucus16>
So it didn't parse anymore, guess I'll have to special case that to ''foo''\'''
<gchristensen>
I don't see a bug in their tracker for this issue
Jonathan_ has joined #nixos
<andi->
yeah the code also isn't >there< maybe fixed elsewehere in 8.0
<andi->
let me try to port the patch to 7.9
<gchristensen>
andi-: you're the best <3
<andi->
I am just lacking motivation for anything else at this friday evening ;D
<palo>
it is not working for me
<gchristensen>
:)
phaebz has joined #nixos
<smhow>
hello, I'm trying to install a GoG game like this steam-run ./installer.sh but I get the follow error https://pastebin.com/ipKKarP4 the installer launch but every chars are squares
cosmo_ has quit [Ping timeout: 252 seconds]
<smhow>
following*
<gchristensen>
palo: I'm confused by why you continue to say that, because I think we all know it isn't working for you, and we're working on finding a solution
lordcirth has quit [Remote host closed the connection]
lordcirth has joined #nixos
<smhow>
I just found out about steam-run-native and now it works :D good evening everyone
ardumont has quit [Ping timeout: 255 seconds]
lordcirth__ has joined #nixos
lordcirth has quit [Read error: Connection reset by peer]
domogled has quit [Ping timeout: 246 seconds]
<Jonathan_>
I am trying to get a grasp of some of nix. I am reading the manual. It say that NixOS has 2 ways of package management: "declarative" and "ad hoc".
<Jonathan_>
Using the declarative system makes sense to me but it implies that you cannot mixing packages from different Nixpkgs versions.
<Jonathan_>
Is that correct?
<gchristensen>
you sure can
<gchristensen>
you can import many nixpkgs revisions in to one expression and use them together
<Jonathan_>
Okay, cool, the manual is misleading then...
<Jonathan_>
How would you do it?
<gchristensen>
oh?
<Jonathan_>
"""Ad hoc, where you install, upgrade and uninstall packages via the nix-env command. This style allows mixing packages from different Nixpkgs versions. It’s the only choice for non-root users."""
<gchristensen>
andi-:I don't know if this will reproduce it for you, but my scenario was ...
stepcut has joined #nixos
<gchristensen>
andi-: I had a remote machine with an ed25519 host key which I had already put in to the global known hosts file. after this upgrade, ssh was ignoring that key and trying to load a ecdsa-sha2-nistp256 host key and telling me it was not matching
<Jonathan_>
Thanks, that is just what I needed!
<gchristensen>
andi-:I think you should be able to reproduce simply by adding `HostKeyAlgorithms +ssh-dss` and that'll make nothing else work
<andi->
interesting, the way I understood the code so far it orders the keys by matches...
<andi->
I'll give it a try
<palo>
would be great if you find a solution.
ayerhart has quit [Read error: Connection reset by peer]
ayerhart has joined #nixos
erasmas has quit [Quit: leaving]
<Jonathan_>
Is this correct? When nix-rebuild builds the system it evaluates the `/etc/nixos/configuration.nix` function giving it whatever that `config` variable is and the channel `nix-channel` has names `nixos`?
<gchristensen>
mostly
aanderse-work has joined #nixos
<Jonathan_>
(:
<gchristensen>
`pkgs` comes from `nixpkgs` which is found in NIX_PATH
<gchristensen>
in your NIX_PATH you probably have a nixpkgs=...
iceypoi has joined #nixos
<Jonathan_>
And nix-channel is just the tool to help manage it?
<gchristensen>
right
wfranzini has quit [Remote host closed the connection]
wfranzini has joined #nixos
<Jonathan_>
Nice!
<iceypoi>
I'm trying to run some home-manager config on WSL and I'm getting a "cannot set i686-linux personality". Looking at the repo, it doesn't seem to have anything to do with home-manager
<iceypoi>
any idea?
<rycee>
Hmm, I've never seen anything like that before.
shibboleth has joined #nixos
<sphalerite>
iceypoi: hmm, what does `nix eval nixpkgs.system` say?
<{^_^}>
[nixpkgs] @telotortium opened pull request #60285 → Point exec_prefix to installed location of fcitx-remote → https://git.io/fjs5z
<iceypoi>
sphalerite: x86_86-linux
<sphalerite>
iceypoi: it sounds like it's trying to build 32-bit stuff
<sphalerite>
iceypoi: is there a "building …" line before it?
<iceypoi>
sphalerite: yes
<sphalerite>
what's the path it tries to build?
<iceypoi>
it's trying to build hm-session-vars
<infinisil>
Is there a nice way to make a derivation with 2 files? E.g. having two scripts in $out/bin/{foo,bar}
manjaro-user has joined #nixos
<gchristensen>
like with runCommand?
<sphalerite>
iceypoi: can you `nix show-derivation /nix/store/…-sessions-vars.drv` and see what "system" is in it?
manjaro-user has quit [Client Quit]
<infinisil>
gchristensen: I don't want any ugly heredoc strings
<Taneb>
I'm trying to enable proprietary nvidia drivers and it's telling me to add nixpkgs.config.allowUnfree = true even though I already have this
<infinisil>
Ah, I guess I could use passAsFile with runCommand
<iceypoi>
it's x86_64
<gchristensen>
and these files are defined in strings inside nix?
<infinisil>
sphalerite: linkFarm would need 3 derivations
<infinisil>
Which is a bit much for just 2 files
<sphalerite>
so?
<infinisil>
derivations aren't free!
<sphalerite>
BUT you can reuse them!
<gchristensen>
anyway
<gchristensen>
passAsFile is pretty sweet
<infinisil>
Yeah
<infinisil>
And it's reusable too
Shouou has joined #nixos
<infinisil>
Oh, I actually implemented a function that converts an attrset tree into a directory tree, with string becoming file contents
<Vitalii>
Hello everyone and <gchristensen>. Yesterday I asked does nix have releases mirrored on S3... So, I put the release on my bucket and was able to download it and start nix installation. But I have other issue, the installator script tries to download https://nixos.org/channels/nixpkgs-unstable which is not accessible from my environment (my instances don't have access to the internet). How can I install the nix package manager if I do
<gchristensen>
O.O
* infinisil
tries to find it
<sphalerite>
infinisil: pls put in pkgs/build-support
<infinisil>
That's like the first really useful usage of pushd and popd :P
<gchristensen>
you could also replace the pushd / popd with ( / ) :)
<sphalerite>
infinisil: I usually prefer subshells over pushd and popd
<sphalerite>
gchristensen: great minds… ;)
<infinisil>
Darn yeah
<gchristensen>
but yeah, recursive things like that
civodul has joined #nixos
<sphalerite>
what's nice about subshells is that it doesn't let you forget or misplace the ) unlike with pushd/popd
<Shouou>
What's the de-facto way of adding a ton of node dependencies for a package? Add them all to `pkgs/development/node-packages`, or run `node2nix` in the project directory and use the generated stuff + the `node-env.nix` from the first suggestion?
<sphalerite>
what may not be desirable is that it "pushes" *all* the shell state
<gchristensen>
vitalii: you're maybe better off patching the installer for your own needs, since that isn't really something the upstream installer handles very nicely
<gchristensen>
vitalii: and also, it'd be cool if you would open an issue on nixos/nix describing your use case
<Vitalii>
gchristensen: thanks, what additional do you want to hear to make it more clear? Will create the issue.
domogled has quit [Client Quit]
<gchristensen>
vitalii: describe as much about your environment as you can, and your ideal method of using the installer, and the ideal end result of running the installer
hellrazo1 has quit [Ping timeout: 250 seconds]
<xorAxAx>
is there any tool that can automatically clean up .nix files? i.e. gather attributes of similar path in a common one etc.
psyanticy has quit [Quit: Connection closed for inactivity]
<Vitalii>
gchristensen: Basically I want to install nix-package manages on the instance which doesn't have internet access. and what ways do you see to accomplish this?
Thra11 has quit [Quit: WeeChat 1.9.1]
<gchristensen>
if you can explain as much as you can in a ticket, I'll be able to help better
<Vitalii>
gchristensen: ok, will do it, thanks
<gchristensen>
thanks!
ckauhaus has quit [Quit: WeeChat 2.4]
<andi->
gchristensen: can't reproduce with that option. Also according to `ssh -vvvv` the code does what we execpt (append to (the end) of the list)
hedning_ has joined #nixos
<gchristensen>
I could break hydra to help you debug
<andi->
nah
hedning_ has quit [Client Quit]
<gchristensen>
it wouldn't be a big deal :)
<andi->
palo: can you give me an ssh -vvvvv log ?
hedning_ has joined #nixos
<Taneb>
What could I be doing wrong to prevent nixpkgs.config.allowUnfre = true; taking affect?
<andi->
Taneb: where are you seeing issues? With nix-shell ?
<buckley310>
is that typo part of your config?
<Taneb>
buckley310: no
<Taneb>
andi-: nixos-rebuild
<andi->
Taneb: are you importing <nixos> / <SomeChannel> by chance?
<gchristensen>
b
<gchristensen>
oops
<Taneb>
andi-: ah, yes... I don't know why I'm doing that
<andi->
Taneb: either remove that or pass the config to the imported pkgset
<Taneb>
andi-++
<{^_^}>
andi-'s karma got increased to 10
ixxie has joined #nixos
<buckley310>
"-++" invalid syntax :P
<buckley310>
actually, what happens if your name ends in ++?
<andi->
you cause an overflow?
<xorAxAx>
c++++
<sphalerite>
IRC nicks can't have a + :)
someguy-- has joined #nixos
<buckley310>
someguy----
<buckley310>
someguy--
someguy-- has quit [Client Quit]
<xorAxAx>
sphalerite, depends on the network ;-)
judson_ has quit [Read error: Connection reset by peer]
<xorAxAx>
hmm, anybody knows a working nix beautifier that does more than indentation?
<sphalerite>
buckley310: try ++ing yourself ;)
Myhlamaeus has joined #nixos
judson_ has joined #nixos
<buckley310>
nah i've seen that before :)
<sphalerite>
xorAxAx: the closest we have, afaik, is hnix, but that still can't preserve comments (again afaik)
<gchristensen>
how about rnix
ggpeti has joined #nixos
aanderse-work has quit []
<sphalerite>
I think it can parse preserving comments, but not actually format code?
<gchristensen>
ah
<samueldr>
don't we have the new one based on tree-sitter?
npmccallum has quit [Ping timeout: 250 seconds]
<xorAxAx>
samueldr, yeah, found that one, currently trying
<samueldr>
AFAIK it's the only one which has formatting in, and also preserves comments; work in progress AFAIUI
astrofog has quit [Remote host closed the connection]
<sphalerite>
oh wait, apparently rnix does formatting?
ggpeti has quit [Ping timeout: 246 seconds]
<xorAxAx>
does it?
jasongrossman has quit [Ping timeout: 250 seconds]
<Jonathan_>
Blaaa! (: I am trying (for sake of learning (which I am (nix is cool!))) to evaluate a nix file. I got it to work with `nix eval -f file ""`. The quote thing is weird but okay. The problem is how do I call it if the file is a lambda?
<Jonathan_>
Okay... weird... but I see why. Thanks!
<sphalerite>
Jonathan_: or you can use --arg in some cases, not sure exactly which ones though
Havvy has joined #nixos
kisonecat has joined #nixos
<Jonathan_>
That is what I was trying and I could not get it to work.
<sphalerite>
ah ok.
<andi->
Jonathan_: there is some auto-calling magic happening. If the file is a lambda with an attrset that has all attributes defaulted (or filled in from the cmdline) it is called.
<Taneb>
The wiki page for Steam says "Patch the script/binary if you can". How would I go about patching a binary?
<Jonathan_>
`attrset` is when the function parameter is the `{namedArg,...}` thing?
<andi->
Jonathan_: yes
<Jonathan_>
Ah, thanks!
<andi->
> { foo ? "bar" }: foo # Jonathan_ is some very simple version of such a function/lambda
<{^_^}>
<LAMBDA>
hlolli has quit [Ping timeout: 264 seconds]
kleisli has joined #nixos
<justanotheruser>
how do I check the value of an option?
<tdeo>
config.option?
<justanotheruser>
within which tool?
<justanotheruser>
I want to see what is currently set for services.xserver.videoDrivers
<xorAxAx>
sphalerite, i am currently trying to build format-nix
<{^_^}>
[nixpkgs] @Infinisil opened pull request #60289 → [Experiment] Separate security wrappers from NixOS → https://git.io/fjsdk
<symphorien>
justanotheruser: you can use nixos-option
fendor has joined #nixos
<justanotheruser>
thanks!
ggpeti has joined #nixos
<NemesisD>
if i'm writing a derivation for some tool that expects a file in `/usr/local/etc`, should i be creating that in `$out/usr/local/etc`?
jtojnar_ has joined #nixos
tboston_ has quit [Ping timeout: 245 seconds]
<tdeo>
well, nix shouldn't have /usr at all, but the program might hard-code that
jtojnar has quit [Ping timeout: 245 seconds]
Guanin has joined #nixos
<NemesisD>
tdeo: i think it takes a flag. should i advise all users to explicifly specify a config?
<tdeo>
nixos users can actually set files in the global /etc with environment.etc, and the program might actually look there. what program is it?
n_db has quit [Remote host closed the connection]
jtojnar_ is now known as jtojnar
<justanotheruser>
how can I set services.xserver.videoDrivers as "intel" + default value for services.xserver.videoDrivers?
<justanotheruser>
sorry for the basic questions, I read the docs but I don't have the best grasp on nix still
<NemesisD>
tdeo: its geoipupdate from maxmind. i may at some point submit this as a derivation but for the time being the intent is for this to be a dependency that i can bake into a docker image
drvirgilio_ has quit [Quit: No Ping reply in 180 seconds.]
ggpeti has quit [Ping timeout: 245 seconds]
<tdeo>
NemesisD: `makeFlags = [ "CONFFILE=/etc/GeoIP.conf" ]` possibly, if you want it to be modifiable (note that this won't allow you to install a default one)
<NemesisD>
tdeo: so i'm not sure how to configure it. i would like the user to be able to specify a config but i'd like it to use the default if they don't, and that's probably hardcoded to /usr/local/etc.
<tdeo>
that's specifically for the geoipupdate makefile
<andi->
justanotheruser: it is a `listOf string` so that means whenever you assing it you just append to the list
<NemesisD>
tdeo: there doesn't seem to be a makefile. it ships a precompiled exe. oof dynamically linked according to `file`. wonder if that will bite me
<NemesisD>
tdeo: that's what i'm looking at too, but i grabbed a tarball from their release page. should i instead be doing a fetchGit at a particular revision and building from source?
n_db has joined #nixos
<tdeo>
yeah, ideally
<tdeo>
this is a go package though, so it /should/ be pretty simple
<Guanin>
andi-, that does not work. I've just assigned ["amdgpu"] to it and nixos-options also just shows that, not the defaults with "amdgpu" appended
<justanotheruser>
hmm, mkOptionDefault results in an infinite recursion error if I do `videoDrivers = mkOptionDefault [ "intel" ];`
<justanotheruser>
however the solution at the bottom of the page may work
<NemesisD>
tdeo: ok i'll give it a shot. what should my pattern be in general for writing derivations for tools that have runtime data and configuration. is the idea that the bin will run from the nix store but then it will expect stuff in the host machine's /etc, /var, etc etc?
<tdeo>
but my makeflags solution above won't actually work for this style package
<tdeo>
NemesisD: yeah, that's generally the case
<tdeo>
config and data should never be in the actual derivation itself
<tdeo>
other than like compile-time options
<NemesisD>
tdeo: ok, i guess i don't have to worry much about the config then if i'm building from source. i'll rig that up in my dockerTools step
kisik21 has quit [Read error: Connection reset by peer]
kisik21 has joined #nixos
Anton-Latukha has quit [Quit: Leaving.]
<Guanin>
Is there a way to check two configuration.nix for similarity/differences? They are not related to the configuration.nix of my system. I just want to restructure and rewrite the config of my first nixOS system
justanotheruser has quit [Ping timeout: 246 seconds]
<xorAxAx>
samueldr, i am trying format-nix right now, it seems to spend more than a minute to read/reformat my configuration.nix, so not very working
sindrip has joined #nixos
<xorAxAx>
and still hasnt finished
kisik21 has quit [Ping timeout: 246 seconds]
<samueldr>
actually have no experience with it, only knew about it
<xorAxAx>
yep
<xorAxAx>
now you have second hand experience :-)
shibboleth has quit [Remote host closed the connection]
justanotheruser has joined #nixos
ggpeti has joined #nixos
mexisme has joined #nixos
tboston_ has joined #nixos
travelion has quit [Quit: bye]
<sindrip>
Any dropbox alternative recommendations?
<gchristensen>
syncthing iirc
Vitalii has quit [Ping timeout: 256 seconds]
<andi->
works reasonably well
Copenhagen_Bram has joined #nixos
<Copenhagen_Bram>
hello!
<srhb>
Copenhagen_Bram: Hi!
fl0_id_ has joined #nixos
<Copenhagen_Bram>
I have installed nix on Debian stretch, I get a locale error when trying to run nicotine-plus and hyperrogue has some other sort of error
travelion has joined #nixos
<sindrip>
Anything not self managed? I mostly use dropbox to store and read pdfs synced to my phone and computer
<srhb>
Copenhagen_Bram: It would probably be helpful to pastebin both errors.
fl0_id has quit [Ping timeout: 276 seconds]
<rycee>
Anybody know if there is some special reason why isString is strict in its argument? I.e. why would not `isString "${does-not-exist}" == true`?
tboston_ has quit [Ping timeout: 255 seconds]
justanotheruser has quit [Quit: WeeChat 2.4]
<rycee>
Or, more useful. `isString "${exists-but-will-cause-infinite-loop-if-i-evaluate-it-right-now}"` or `isString "${exists-but-takes-long-to-evaluate-and-may-not-be-necessary-anyway}"…
awygle has quit [Quit: No Ping reply in 180 seconds.]
fl0_id_ has quit [Read error: Connection reset by peer]
justanotheruser has joined #nixos
glowpelt has quit [Max SendQ exceeded]
<rycee>
I'll forever be annoyed with myself that I forget the last ` above :-(
glowpelt has joined #nixos
awygle has joined #nixos
evil-olive has quit [Ping timeout: 250 seconds]
<srhb>
rycee: I don't follow. Why would it not be?
evil-olive has joined #nixos
<pie_>
rycee, dont worry, you added it right there! :P
<neonfuz2>
Hey, is it unsafe to link or bindmount a nixos install's /nix/ directory to /nix/ on a different linux os and then run the nix install script?
<rycee>
srhb: `isString "${does-not-exist}"` results in "undefined variable 'does-not-exist' at (string):1:22"
<srhb>
This does not immediately to me seem like a strictness issue.
<pie_>
neonfuz2, why not just tell the nix install script to use the other place
sindrip has quit [Quit: WeeChat 2.4]
<iceypoi>
objectively speaking... we've got one of the biggest package collections around, right?
<srhb>
> if true || "${does-not-exist}" then 42 else 43
<{^_^}>
42
<srhb>
Wrong, {^_^} !
<srhb>
:(
<neonfuz2>
what's the real difference
glowpelt has quit [Max SendQ exceeded]
<{^_^}>
[nixos-org-configurations] @grahamc opened pull request #85 → Automatically import Packet.net spot instances to Hydra → https://git.io/fjsFL
<neonfuz2>
the other place is long
<pie_>
iceypoi, something something repology?
fl0_id has joined #nixos
glowpelt has joined #nixos
<neonfuz2>
it's like /media/<user>/<long drive uuid>/nix/
<Ralith>
rycee: does Nix strongly guarantee specific laziness like that to begin with?
<neonfuz2>
I'm mostly just asking if the nix install script will clobber my nixos install lol
<srhb>
rycee: I don't know why {^_^} got that wrong, but this should _still_ fail with an undefined variable.
<srhb>
rycee: (ie. it's not about laziness)
<pie_>
neonfuz2, nevermind i dont know enough about whats going on to give good input
<iceypoi>
pie_: according to that's we're within 2% of AUR
<pie_>
iceypoi, wait only 2%?
<iceypoi>
pie_: and way bigger than any competitor
<iceypoi>
pie_: ya, 46619 vs 45104
<iceypoi>
pie_: that's VERY much on par
<iceypoi>
pie_: some packages are probably duplicated, but it's fairly impressive still
<pie_>
infinisil, oh wait i completely misread xD
colemickens[m] has joined #nixos
<pie_>
i was like "we are only 2% of AUR? wat"
<pie_>
* iceypoi
<pie_>
sorry infinisil bad highlight
<iceypoi>
no, lol more like 98%
<rycee>
Ralith: Unfortunately I don't know such details about the Nix language. But right now I really would want to find a way to check whether a variable is a string without expanding embedded variables.
<xorAxAx>
apt list | wc -l : 97929
<pie_>
srhb, why isnt it about laziness
<pie_>
srhb, id expect || to short circuit
<pie_>
srhb, err
<pie_>
doh
<pie_>
does || shrot circuit?
<pie_>
though...hm i guess the question is when the variable name is checked to exist in "${whatever}"
<iceypoi>
xorAxAx: I went by repology who lists ubuntu at 30479
<Jonathan_>
In the manual it explains the declarative package management approach. It that in cannot be used by non-root users. Is this true?
<srhb>
pie_: That's exactly it.
<iceypoi>
pie_: apt list seems to have a lot of duplication
<Jonathan_>
Can I not just import a file from a users directory for what packages to include for that user?
<pie_>
srhb, i cant remember if i get name errors for code i dont run
<srhb>
pie_: Yes, || should (and does) short-circuit, therefore true || "${does-not-exist}" should never be an error iff name/scope resolution is subject to normal evaluation rules
<NemesisD>
tdeo: actually, how would this dep2nix work in a derivation? it has to reach out to the internet to create a deps.nix file
<srhb>
pie_: Which it is not, except, it seems it is in {^_^}, which appears to me to be a bug.
<pie_>
srhb, hence presumably it is not subject
<pie_>
srhb, but the result seems fine? 42 is in the true branch
<tdeo>
you generate deps.nix while creating the package and updating it
<pie_>
and it doesnt error
<tdeo>
it's part of the derivation
<srhb>
pie_: That should not happen
linarcx has quit [Quit: WeeChat 2.4]
<xorAxAx>
iceypoi, hmm, then there must be a difference
<srhb>
pie_: It should be "error: undefined variable ... "
sindrip has joined #nixos
<pie_>
wait, no. it should be an error iff names are resoved prior to evaluation no?
<iceypoi>
xorAxAx: is it so inconceivable that nixos actually does have a huge collection?
<srhb>
pie_: That *really* should be the proper behaviour.
devalot has joined #nixos
<srhb>
I don't know why the bot does something wrong.
<pie_>
srhb, but i have a trick
<pie_>
srhb, try with {}; if true || "${does-not-exist}" then 42 else 43
<xorAxAx>
iceypoi, no, but otoh i have been missing some older packages
<srhb>
Ah, yes, that's probably why.
<srhb>
with; is broken. :-P
<xorAxAx>
e.g. there is no ytree package
<pie_>
srhb, i think you brought up a problem i had earlier
<pie_>
srhb, now im thinking with is fucked up again :D
<pie_>
or something
<srhb>
No, you're right, it really does make it terribly difficult to reason about this..
<pie_>
ok yeah thats hella weird
<nh2>
matthewbauer clever: Should this work, given that it has seen some cross-compilation love already? `nix-build '<nixpkgs>' -A pkgsStatic.kexectools`
<nh2>
For me it gives `ld: cannot find -lc`
<srhb>
And that's probably exactly why the bot gives the intuitively wrong answer.
<pie_>
with somehow forces name resolution to happen at eval time? so then the shor tcircuiting happens
<pie_>
ok THATS a niche interaction
jd823592 has joined #nixos
justanotheruser has quit [Ping timeout: 258 seconds]
<srhb>
nix3: Now without `with` :)
eddyb has joined #nixos
eddyb has quit [Changing host]
eddyb has joined #nixos
eddyb has quit [Changing host]
<pie_>
srhb, hm?
<srhb>
I mean, it's really difficult to even start to imagine what the cost of `with` is in eg. nixpkgs.
<srhb>
Cut it out and begone with that concern.
<pie_>
i mean i didnt get this: <srhb> nix3: Now without `with` :)
<iceypoi>
xorAxAx: fair enough. So far, I was missing one package and that one has an (old) pr open
<pie_>
srhb, i think its nice sometimes
<pie_>
like if youre getting a lot of things from an attrset
<srhb>
It's "nice" practically, but not when you try to explain the consequences.
<srhb>
(Most people cannot)
<xorAxAx>
iceypoi, i like the experience, though :)
<pie_>
like python.withpackages (s: with s; [ a b c ...])
<srhb>
Yep, agreed.
<NemesisD>
tdeo: so if i were to hypothetically PR this derivation, i'd commit deps.nix and submit that, along with a default.nix that imports it?
dycan has joined #nixos
<iceypoi>
xorAxAx: it's definitely much better than I was afraid it might be when I started with nixos. Originally I thought NixOS was quite niche and might be missing a lot
<pie_>
srhb, but yeah i mean i only recently learned with doesnt shadow let
<iceypoi>
xorAxAx: very positively surprised
<pie_>
and this runtime stuff would explain why
<tdeo>
NemesisD: yep
<xorAxAx>
iceypoi, yeah
<NemesisD>
tdeo: understood. thanks!
<pie_>
srhb, maybe the docs didnt say it when i started but thats very unexpected.
wfranzini has quit [Remote host closed the connection]
<pie_>
srhb, ok yeah so coupled with lazy evaluation thats basically python levels of nonetype foot shooting
wfranzini has joined #nixos
<pie_>
actually
<pie_>
> with {}; if false || "${does-not-exist}" then 42 else 43
<{^_^}>
undefined variable 'does-not-exist' at (string):252:25
<jd823592>
how would i make a nix function from a shell command? i would like to convert json to yaml in particular
<pie_>
ok its not that bad i guess
<srhb>
It's not bad in the false case. But how do you justify the true case? Maybe I'm just not seeing it.
<srhb>
(again, the bot does the wrong thing)
<pie_>
srhb, the bot has an implicit with somewhere probably
<pie_>
> a
<{^_^}>
10
<srhb>
It does
<srhb>
But how do you intuit the "limit" of the outer "with" ?
<samueldr>
jd823592: json is a compatible subset of yaml IIRC, maybe you can directly use the json
<pie_>
(Actually neverind that > a doesnt help)
<pie_>
srhb, what do you mean
<srhb>
Like, how far out from a given expression that you are looking at could you expect it to affect the evaluation rules?
<pie_>
srhb, oh...anywhere i guess
<srhb>
;-)
o1lo01ol1o has quit [Remote host closed the connection]
<srhb>
I'm not okay with that.
anpryl has quit [Ping timeout: 250 seconds]
<pie_>
wait...hmmm
<jd823592>
samueldr: i was aiming for user experiance, thus the brevity of yaml notation is preferred to json
<matthewbauer>
nh2: yeah i've seen that before. the issue is that the native compiler is not getting the right LDFLAGS. This is the ticket I made regarding that: https://github.com/NixOS/nixpkgs/issues/54502
<{^_^}>
#54502 (by matthewbauer, 13 weeks ago, open): Get rid of "infixSalt" hacks, use proper roles
<pie_>
srhb, yeah i think any code you run would try to resolve variables from any scope availible to it?
shabius_ has quit [Quit: Leaving]
tboston_ has joined #nixos
colemickens[m] has joined #nixos
colemickens[m] has quit [Changing host]
o1lo01ol1o has joined #nixos
<srhb>
pie_: Can you intuit whether this is an evaluation error or not? let foo = with {}; true; in if foo || "${non-existant}" then 42 else 43
<matthewbauer>
nh2: basically the "static" flags are being applied in the depsBuildBuild compiler! so it can't find libc because no static one exists
<ambro718>
fun, the nix code uses a class called ExprConcatStrings to implement integer addition as well
<matthewbauer>
nh2: it might work if you use the musl-based localSystem
<pie_>
srhb, hold on first i have to even parse it xD
<srhb>
pie_: Hint: If you get it right, you've broken referential transparency. :-P
shabius has joined #nixos
<pie_>
srhb, s-...still 42?
<pie_>
i mena
<pie_>
im assuming || goes from left to right
<pie_>
dont expect me to pull amazing insights out of my hat im just some dude :P
<nh2>
matthewbauer: in this case, I can also work around it by overriding the `"BUILD_CC=${buildPackages.stdenv.cc.targetPrefix}cc"` that the package uses to `"BUILD_CC=${pkgs.pkgsStatic.stdenv.cc.targetPrefix}cc"`, but I don't *really* understand why that helps
tboston_ has quit [Ping timeout: 250 seconds]
<srhb>
pie: let foo = with {}; true; in if foo || "${nope}" then 42 else 43 -- is an eval error.
<srhb>
pie: if with {}; true || "${nope}" then 42 else 43 -- is 42
<pie_>
srhb wow thats bullshit :PP
<matthewbauer>
nh2: the second one will link the build deps statically. it doesn't really matter in this case, but in cross it's important to have the first one
<srhb>
pie_: Right. :)
<srhb>
pie_: Hence my complaint about the unsoundness of with
colemickens[m] is now known as colemickens[m]1
<srhb>
Whether or not it's practical it's currently intuitively broken.
<pie_>
:(
<srhb>
And diagnosing eval errors is, in the context of nixpkgs, a big thign.
<srhb>
So, I'd kill it off. It's cheap. It only costs a bunch of (really annoying, repetitious) characters :P
<pie_>
srhb, and its still broken even if with {nope=1;}
justanotheruser has joined #nixos
<pie_>
i cant see offhand how it works, but it makes sense that its still broken
colemickens[m]1 is now known as colemickens[m]2
<pie_>
and it kind of makes sense that its broken at all
Jetien has joined #nixos
m0rphism has quit [Ping timeout: 246 seconds]
justanotheruser has quit [Client Quit]
<pie_>
muh referential transparency :(
<srhb>
There's some really horrible scope escapage that sort of transcends the syntax/parse/eval borders.
kisonecat has quit [Ping timeout: 245 seconds]
<pie_>
yeah
justanotheruser has joined #nixos
<pie_>
with can only have a runtime semantics
<pie_>
so..
<pie_>
but i like with :ccc
azdle has quit [Read error: Connection reset by peer]
ggpeti has quit [Ping timeout: 246 seconds]
<srhb>
pie_: No, you like how you think it should work, you hate how it works :-P
<pie_>
yeah
<Ralith>
the language is easily the worst thing about nix
* srhb
corrupts everyone absolutely
<pie_>
i dont Hate it but im transitionning from beginning to moderate dislike
<srhb>
haha
<pie_>
i will hate it when it blows my leg off
<srhb>
Foot is fine, leg is no-go. Got it. :P
<pie_>
just let it ferment a bit
<ambro718>
I read the Nix code for string interpolation, and I see that it is parsed into an Expr of type ExprConcatStrings (which is also used for the + operator), and eval() on that will do the concatenation to produce a string Value. On the other hand builtins.isString is a function taking a Value. So there is no way for isString to not evaluate a ConcatStringsExpr because there is no concept of a Value that represents unevaluated string interpolation.
<pie_>
come back in a few hours when my "fix bug classes not bugs" circuits kick in again
<ambro718>
rycee: ^ :)
Kim has quit [Ping timeout: 240 seconds]
<Ralith>
it's really a shame guix is a fork rather than an evolution
<pie_>
Ralith, b-but its not purely functional - is it?
<pie_>
also yeah i guess
mikeplus64 has quit [Ping timeout: 240 seconds]
Kim has joined #nixos
<pie_>
im half way through watching a talk and i think we might want to steal some things from guix :P
<pie_>
involving ux and tooling
<Ralith>
it's a purely functional package manager, which is thte important thing
<colemickens[m]2>
pie_: what talk?
<matthewbauer>
nh2: actually that might be the wrong answer
<pie_>
colemickens[m]2, some debconf thing i think, its on my other device
<srhb>
pie_: They do have some nice tooling. I'm not sure I'd agree with anything else.
<rycee>
ambro718: Thanks! Yeah, I saw something similar in the hnix code. It's a bit unfortunate.
<srhb>
... that's obviously very defensive of me :P
<pie_>
Ralith, yeah but *i* prefer pure languages in any case :P
mexisme has quit [Ping timeout: 258 seconds]
<pie_>
s/in any case//
<pie_>
though the idea of a full stack lisp system taunts me
<Ralith>
pie_: sure, purity is nice, and it even makes particularly large amounts of sense for a massive collaboratively maintained codebase
<{^_^}>
#60291 (by matthewbauer, 38 seconds ago, open): kexec-tools: use depsBuildBuild to get the right compiler
<pie_>
assuming there was even a possibility of having some hope of some sort of transition
<ambro718>
rycee: Of course it it this way because it's coded this way. It could be coded differently. But everything has its limits. How far do you go? Should isString ("${a}"+"${b}") work without evaluating a and b? Should builtins.substr 0 3 ("aaa"+a) work without evaluating a?
<pie_>
ambro718, weak head normal form?
<ambro718>
basically the current implementation wants to evaluate a string before it exists as a string value, and it seems generally sane to me
<Ralith>
pie_: backwards compatibility would require some care, but is not impossible
<Ralith>
prsonally I'd approach it as an FFI problem
<pie_>
Ralith, i watched the talk on the gradual type system for nix
<pie_>
but that seems to have stalled a lot :(
<Ralith>
have some other language that can easily evaluate Nix expressions and manipulate results
<ambro718>
pie_: what?
<pie_>
ambro718, any haskell experience?
<Ralith>
adding gradual typing to Nix itself strikes me as a bandaid
<ambro718>
not much
<Ralith>
Nix is fundemantally not a terribly well planned language
<Ralith>
could be a lot worse, but that's not a high bar :P
<pie_>
Ralith, well i suppose if you had gradual typing that could bootstrap transitioning to a different type system later
<pie_>
but that sounds...unlikely
<srhb>
I think that's slightly contentious. There are some things very relevant to nixpkgs that nix-the-language does extraordinarily well though.
jtojnar_ has joined #nixos
<srhb>
Like, manipulating massive attrsets.
jtojnar has quit [Ping timeout: 246 seconds]
<Ralith>
it's certainly not without its nice parts
<pie_>
ambro718, on second thougt...im not sure. we dont have types like in haskell. i somehow in the back of my mind thought you could see that "..."+".." is a string
<pie_>
and would not have to evaluate the contents
o1lo01ol1o has quit [Remote host closed the connection]
<nh2>
pie_: I think have a quite clear idea of how I'd like a types transition to happen: (1) add optional types (2) add language pragma to enable types per file (3) split effort over the community to translate file by file (4) make types default
o1lo01ol1o has joined #nixos
<ambro718>
pie_: you could if you caught it at the parser level (which is even simpler for string interpolation, you simply know it's a string)
<pie_>
nh2, that seems reasonable
<nh2>
pie_: on the "stalled" problem: That problem usually solves itself with paying somebody full time to work on it until it's done
<pie_>
ambro718, though in theory i think + only applies to strings so even that would arguably suffice if youre laty
<pie_>
lazy
<pie_>
nh2, i cant help with that :(
<nh2>
pie_: yeah, not suggesting it's on you, only that the fact that it's stalled might be related to whoever worked on that not working full-time on that (vs it not working as an idea)
<pie_>
the guy was doing it as an internship at tweag and then the internship ended
<nh2>
yep
<pie_>
i mean i dont have such a good overview of whats going on but like this seems really important?
<ambro718>
pie_: but the current Nix implementation is such that before you can call a builtinn on an Expr (the result of parsing), it needs to be turned (evaluated) into a Value, and evaluating a string interpolation does just that. It could be changed such that evaluating a string interpolation makes an UnevaluatedStringInterpolation Value on which isString would return true, but other functions would further evaluate it ....
<ambro718>
pie_: + applies to numbers as well
<pie_>
nh2, unless "well uhhh we actually probably want to just build a different language"
<pie_>
ambro718, ah right, numbers. those things. they exist too.
<pie_>
ambro718, so you mean bultins are strict
<ambro718>
pie_: no builtins just need a Value, a value can be more or less evaluated. There's just nothing in the nix code currently that would allow an unevaluated string interpolation to be represented as a value.
NickSeagull has joined #nixos
o1lo01ol1o has quit [Read error: Connection reset by peer]
<ambro718>
it could be changed, I suppose
<{^_^}>
[nixpkgs] @matthewbauer merged pull request #60291 → kexec-tools: use depsBuildBuild to get the right compiler → https://git.io/fjsFV
<{^_^}>
[nixpkgs] @matthewbauer pushed 2 commits to master: https://git.io/fjsFM
<ambro718>
false operand here means "don't force to string"
<nh2>
pie_: many important problems don't get solved until it's somebody's job to do it if they are large. For example, I'm quite sure I can make ghc deterministic, and bit-reproducible Haskell builds are super important, but so far nobody wanted to make me do it
<pie_>
ambro718, i have no idea whats going on xD sorry
<pie_>
nh2, that makes sense i guess :( starting to wish i was rich
<pie_>
maybe theres something to all those cryptocoin fad companies :p
<nh2>
pie_: well I can tell you that even those that use Haskell have not agreed on me working on this yet :)
<{^_^}>
[nixpkgs] @srhb opened pull request #60292 → openjdk8: Try to remove host kernel version impurity → https://git.io/fjsbk
<pie_>
on the note of type systems, im guessing the type system might not be happy about with
<pie_>
though the guy did solve .${} somehow so what do i kno
<pie_>
or ${}. idk
<nh2>
pie_: apart from that, I think yes, pretty much all tooling problems can be solved with money
<ambro718>
making a dynamically-typed functional language is really not hard
<srhb>
[citation needed]
<nh2>
pie_: look at TypeScript and Rust: a team of full-time people over multiple years -> very fast and steady progress
<pie_>
nh2, that would explain that
<pie_>
srhb, lmao
<pie_>
well builtins.head doesnt work on nix strings so there goes that idea :P
<pie_>
does nix have a way to check if a string starts with another string or something like that
<nh2>
pie_: but in absence of being rich, making small and steady improvements is also good; nix will grow until money depends on it, and then more improvements will flow. That's always how it works
<Havvy>
Do you know how many man-hours have been put into TypeScript and Rust?
<pie_>
i...im not sure i want to know
<simpson>
Havvy: Maybe five? Probably more.
<pie_>
like...two? :P
<pie_>
if i find out ill be envious
colemickens[m] is now known as colemicken4
<pie_>
cant be as good as c or c++ though. those have way more than two man hours.
colemickens has quit []
colemicken4 is now known as colemickens
<yuken>
well, NixOS may just be too complicated for me x-x
hiroshi has joined #nixos
<simpson>
yuken: No worries. Maybe a break from the computer is in order?
<jd823592>
i am completely lost and no amount of doc seems to clarify to me how nix actually works...
<pie_>
preferably not break-ing the computer
<pie_>
jd823592, its ok there is more than one pieces
<Havvy>
NixOS is kind of like git in terms of tool quality.
<jd823592>
i have written a .nix file that should write a json file but cant make it produce that file
<yuken>
simpson, maybe, but I am sick and got some back pain, so I can't do much else :p
<Ralith>
Havvy: all the more reason to find a way to make a more mature language work for nix than to try to add "build a programming language" to the list of things involved in maintaining nix
<simpson>
Ralith: Hm, but Nix expression language is already built, isn't it? What are the specific features that you're imagining would be appropriate? I think that two things that would be useful are recursive/IFD support, and a more builtin understanding of packages-as-capabilities, but I'm not sure how Guile furthers either of those goals. (Bluntly, I don't think Guile *does*; I think that it's a poor choice,
<ambro718>
I think Nix is fine having its own programming language. All the existing potential languages don't seem like a good fit.
<simpson>
justified by being the GNU/FSF official scripting language.)
<pie_>
Ralith, tbf i think thats fundamentally a valid view but idk still attrsets seem pretty nice
<Ralith>
colemickens: I don't have personal experience with Guix, but I am fairly confident that adapting an existing programming language to the task is the correct way to architect such a system
<Ralith>
simpson: Nix is built, but it has numerous issues (such as the wackiness that kicked off this convo) that can be attributed to its immaturity and hasty design
<nh2>
matthewbauer: thanks, that seems to work for me
<Ralith>
some of them could theoretically be addressed by investing large amounts of resources
<pie_>
i guess id prefer to be on a solid base
<pie_>
dhall isnt meant/not suitable as a full nix replacement AFAIU?
<Ralith>
I don't have any opinions on Guile-the-language other than that I recognize that it's a more mature language
Rusty1 has quit [Quit: Konversation terminated!]
<pie_>
maybe we could get a haskell EDSL but then the whole deal is ooh nooo GHC closure size :P
<simpson>
Ralith: Sure. But, from that POV, Guile is *totally unacceptable* since, while mature, in its maturity it does not have a sufficiently POLA approach to the filesystem, which means that we must *tame* it.
<pie_>
(which is not completely unreasonable)
<pie_>
simpson, whats POLA?
<infinisil>
P*** of least authority is my guess
<simpson>
pie_: The Principle of Least Authority.
<pie_>
ah
<infinisil>
Ahh
<nh2>
well, if you want practicality, purity, and a solid type system, there is really only one language available for that, and that laguage too has many remaining issues where "investing large amounts of resources" would help a lot
<pie_>
nh2, hehehe
<Ralith>
simpson: I don't think the filesystem access paradigm is inextricable from Guile (or from practically any language, for that matter)
<pie_>
maybe we dont need to completely throw nix away to fix it though?
<simpson>
Ralith: Yes, but at the same time, surely a language like E is preferable to a language like Scheme, *just* based on already being abstracted and not needing taming.
<Ralith>
nh2: I don't think internal purity is strictly necessary for Nix to work, though I do agree that it suits it
<Ralith>
simpson: perhaps! I don't know the first thing about E.
<ambro718>
what the hell do you all think is wrong with nix?
<Ralith>
I certainly am not advocating scheme in particular
<Ralith>
ambro718: it is all the worst kinds of dynamic
<pie_>
ambro718, the points seem to be lack of a type system, immaturity, lack of a solid foundation (?)
<pie_>
*soli dtheoretical
<pie_>
maybe the first and the lastone are the same and i botched that
<pie_>
nevermind im just oging to be quiet now
<ambro718>
it is dynamically typed, doesn't mean it doesn't have a type system
<simpson>
The dynamic scoping is easily the worst problem. We could fix it by considering the removal of `inherit` and `with`.
<ambro718>
just like Python has a type system
<pie_>
sorry, should have said lack of static types, thanks for the correction
<Ralith>
it is very difficult to reason about Nix code in a remotely rigorous fashion; encapsulation is weak; it is nearly impossible to guess what a Nix expression does if you are not intimiately familiar with everything it references
mexisme has quit [Ping timeout: 246 seconds]
<infinisil>
simpson: inherit is dynamic scoping? How?
<infinisil>
It can just be desugared to a let in
<Ralith>
and it is easy to misjudge what indeed it references, thanks to painfully dynamic scoping
<infinisil>
I suggest switching to #nix-lang for this discussion
<pie_>
ok, so. with the very big if that we could have good type inference, most expressions people write arent going to be top level one
<Ralith>
pie_: some values are hard :P
<pie_>
the top level stuff would be mkDerivation or whatever?
<Havvy>
I find it hard writing in Nix due to the lack of types TBH.
<colemickens>
"relatively easily", I'm not sure I'd describe authoring nix packages that way, even as someone who has done so many times.
fl0_id has joined #nixos
<pie_>
Havvy, but it *is* hard for people that arent functional programmers already
<pie_>
overall im very very confused about how i feel about nix
<pie_>
and forcing type systems on people who havent used them before
<pie_>
are they worth it? fundamentally yes
<pie_>
but how many people is it going to turn away, idk
<pie_>
im a helluva noob
<simpson>
Manifest types are crutches in languages like Nix, I think.
<simpson>
Either the type of a value is obvious, or it's bespoke (a derivation or configuring attrset).
<pie_>
also i may have had some haskell edward kmett syndrome and someone told me you dont NEED to use complicated types
<pie_>
it might have helped to hear that recently
<nh2>
pie_: I think that'll become a non-problem, as dynamic typing will simply die out and every programmer will be familiar with at least basic types. Consider Python, Ruby, Javascript; even thoese hardliners are all moving towards types as people see that that they are required to build solid stuff
<pie_>
nh2, i mean, i dont need to have types static argued to me, really, i agree
<pie_>
sorry maybe im just ranting now :p
<nh2>
pie_: I'm just saying that I don't worry about adoption loss, because people will learn the types from other places already
<pie_>
makes snese
<pie_>
sense
<nh2>
otherwise adoption loss would be a good argument
Glider_IRC has joined #nixos
<simpson>
nh2: Kind of. Consider the following feature, called *guards* in languages that have it, in some of the cousins of Python, Ruby, ES, etc., where a name declared like `i :int` is not only *annotated* with the type, but *checked* at runtime for the value to have the correct type.
<pie_>
nix was pretty niche to begin with but look where it got anyway
<pie_>
so im not sure it would be
<ambro718>
if it's done it would have to be done mostly transparently, so that you can write type specifications, but don't have to
<pie_>
though...on the other hand idk what it would be like if it had types from the beginning
<pie_>
ambro718, well thats kind of forced anyway if we want to keep nixpkgs for any sort of transition
<simpson>
nh2: Also don't forget that not all type systems are shaped like set theory or like https://typedefs.com/
<pie_>
simpson, huh. interesting. im regretting not keeping up with the idris ecosystem.
phaebz has quit [Ping timeout: 250 seconds]
wfranzini has quit [Remote host closed the connection]
<pie_>
what i really hope one could get from static typing is a boost to MOAR TOOLING
<nh2>
simpson: I think that unless typed-nix will have a very sophisticated type system, people will be OK with learning it. In fact, I think that already something super basic like being able to say whether something is an Int, a String or an Attrset or nullable would help nixpkgs hugely
<pie_>
imagine what you could do! (i actually have no idea)
<simpson>
pie_: But at this point, we find a disconnect: Tools generally only do static analysis, limiting themselves to the *syntactic* parts of the type system. However, folks usually expect that a type system can enforce some sort of correctness, which is a semantic property.
<ambro718>
I find it funny how people want nix to have a type system but on the other hand hacky shell scripts are rampant in packages.
<nh2>
pie_: the delay between working types and good tooling can be very large though, e.g. basic Haskell refactoring tools are still in th emaking
<ambro718>
migrate that shell script mess into nix code first
<pie_>
ambro718, AGREE
mexisme has joined #nixos
<simpson>
> :t 2+2
<{^_^}>
Unknown command: t
<pie_>
agree on the first point at least, havent thought about the migration
<simpson>
nh2: Okay, so it doesn't work in IRC, but :t is a command in the Nix REPL. Every value *has* a type already!
<ambro718>
the entire setupHook drama could be completely handled through nix and passthru attributes
<nh2>
ambro718: that for sure, Shell and Perl are the plague for correctness
<pie_>
simpson, hm. i think its a shame you didnt stick around in dependent. ah well
<pie_>
simpson, ok so you have a point there i guess. but i think that might not be completely fair. what do you mean by limited to the syntactic parts
<simpson>
pie_: My presence there was disruptive. For similar reasons, I'm not inviting you to either programming language design channel.
<pie_>
even checking that the eventual runtime types are usually ok is a semantic sense-making thing
<simpson>
pie_: A type system is primarily a syntactic device, isn't it?
<Havvy>
simpson: Not quite. A type system can allow functions that aren't possible without a type system.
<pie_>
i think mietek would have a round with that statement hehe. though i think he might be leaning towards you on tha tone idk
<pie_>
and i dont think so
<Havvy>
E.g. Iterator::collect in RustLang
<pie_>
simpson, i dont thnk so but i dont know how to unpack that
<Havvy>
Without generic return types, you can't write that function.
<nh2>
simpson: evaluated expressions having a type is no big tool if I can't talk about them before evaluation
ardumont has quit [Ping timeout: 255 seconds]
<simpson>
Havvy: Return-value polymorphism can be simulated just fine with dictionary-passing. Consider e.g. GHC Haskell's compilation strategy.
<pie_>
i think the disconnect between syntax and semantics might be partly artificial
civodul has quit [Quit: ERC (IRC client for Emacs 26.2)]
gagbo has joined #nixos
<pie_>
once you assign a semantics to syntax, you are also manipulating semantics when you manipulate syntax, does that make any sense?
<pie_>
thats orthogonal though
<pie_>
i dont understand why you think types are syntactic
ambro718 has quit [Quit: Konversation terminated!]
<pie_>
or what you mean by that actually
Flip[m]1 is now known as Flip[m]2
Flip[m]2 is now known as Flip[m4
Flip[m4 is now known as Fli6
<simpson>
Happens. Don't worry about it.
bgamari has quit [Ping timeout: 252 seconds]
<pie_>
well im asking because im interested :p
Fli6 is now known as Flip[m8
bgamari has joined #nixos
jasongrossman has joined #nixos
<simpson>
And I'm demurring because we're no longer on-topic. Check out "manifest types" for an overview of the concept; basically, the fact that a type system has syntactic elements is distinct from the fact that an executable semantics may assign a type/class/prototype/typeclass/etc. to a value.
Flip[m8 is now known as Flip[10
tboston_ has quit [Ping timeout: 258 seconds]
<infinisil>
Will be ontopic on #nix-lang :)
<pie_>
so a bad summary of the discussion?: nix is bad, nix is not so bad, throw money at people to work on nix, type systems might be hard for new users
<nh2>
can I get the nixpkgs version to compare it with `versionAtLeast`? Or does that only work for NixOS?
<pie_>
simpson, thanks for the "what to know" article, will read in a bit
<Jonathan_>
In the manual it explains the declarative package management approach. It that in cannot be used by non-root users. Is this true?
<Jonathan_>
Can I not just import a file from a users directory for what packages to include for that user?
<pie_>
yuken, ive got a cold :p
wfranzini has joined #nixos
<simpson>
Jonathan_: The manual is a little misleadingly limited there. Non-root users have several techniques at their disposal for declaring environments; what is tricky is letting root declare each non-root user's packages.
<pie_>
thanks for the types discussion guys, got me thinking a bit at least
<Jonathan_>
Cannot you not just use `users.users.<name>.packages`?
<pie_>
too bad ambro left, was going to mention trying to shellcheck ALL THE THINGS
<Jonathan_>
Or is that not what you mean?
kisonecat has joined #nixos
<jd823592>
i would be very grateful if anyone could take a look at this https://pastebin.com/cKLSXXJq and tell me if it makes any sense and if so, how i could run it to get the file that i am trying to generate
sindrip has quit [Ping timeout: 250 seconds]
<pie_>
jd823592, what does the output look like / whats the problem
<jd823592>
pie_: i dont know how to "run" the "script".. i tried nix-shell, nix-instantiate and never saw the file anywhere
<pie_>
for starters try nix-build
clk has joined #nixos
<pie_>
also that probably wont run as is
* pie_
looks at the file again
drakonis has joined #nixos
<pie_>
jd823592, not sure about this but i think nix-instantiate will mainly deal with the nix store which is where nix puts all its stuff, i think nix-build is kind of a front end to that and by default gives you a symlink to the build result in ./result
<bgamari>
gchristensen, is there any update on 19.03 on Packet?
<pie_>
nix shell will give you the build environment for a result (could someone clarify this? im never clear on this)
<jd823592>
pie_: i always run it with 'import ./file.nix { pkgs = import <nixpkgs> {}; user = "..."; }'
kisonecat has quit [Ping timeout: 246 seconds]
<clk>
Hello. It seems like cache.nixos.org uses a wrong SSL cert. Do I complain in the correct place?
<gchristensen>
bgamari: not sure, I've pinged again
<pie_>
yeah so writeText will give you a derivation so nix-build should be fine
<pie_>
or just listen to someone better at this than me :P ^
<clk>
Oh, seems that my issue is gone already.
<clk>
See you!
clk has quit [Quit: leaving]
<pie_>
makefu, why are you importing nixpkgs
<pie_>
nevermind#
<jd823592>
pie_: no, you helped a lot, at least i know what to try next
<bgamari>
gchristensen, alright
<makefu>
i just copy-pasted my shell history (where i use callPackage for files in nixpkgs)
<gchristensen>
bgamari: maybe send a support ticket?
<pie_>
makefu, no i just saw the import not the inherit pkgs, and reflexively thought "one would only need that if theyre using callPackage"
<pie_>
jd823592, ive never sat down and properly figured it out, the intricacies of the various frontends are still a bit confusing for me too
<makefu>
not to mention that there is now 'nix build' as well
<bgamari>
gchristensen, I may
<gchristensen>
bgamari:please do ... :)
<bgamari>
gchristensen, at the moment I have slightly bigger fish to fry
<bgamari>
gchristensen, the network interface issues seem to have reared their ugly heads again
<gchristensen>
guh :
<jd823592>
pie_: i intended for the scripts to generate configs that i would copy into my fresh installation, i am a bit afraid that what i have now is "trapped" in nix store, is there any way how to run the script so that it dumps the output somewhere outside nix store?
<pie_>
jd823592, haha! :P no! :P
<pie_>
except there are probably ways you could do that
<bgamari>
and even worse, systemd seems not to bring up a getty on the recovery console
<bgamari>
it happily prints status messages
<bgamari>
but no shell
<gchristensen>
ehh I have never seen that before
<pie_>
makefu, if the semantics get clearer with nix ill be happy
<gchristensen>
I wish I could take over your machine for a bit
<pie_>
jd823592, you could have nix-build put the symlink where you want the file
<pie_>
makefu, i guess the dashes are important now
justanotheruser has quit [Ping timeout: 255 seconds]
<bgamari>
gchristensen, systemd says its waiting for the ttyS1.device unit
__monty__ has quit [Quit: leaving]
<jd823592>
pie_: so nixos-generate-config and nixos-install are not implemented this way
<pie_>
jd823592, so yeah what are you actually trying to do
ggpeti has joined #nixos
justanotheruser has joined #nixos
<jd823592>
pie_: i am trying to use nix to declare my ideal installation of nixos including per-user configs but also preparing the disk layout ... so basically all that is left out from /etc/nixos/configutation.nix
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]