<simpson>
There's a little bit of that, at the edge, but that's for your convenience, to have a shell. Internally, Nix packages just hardcode paths to other packages.
vaibhavsagar has joined #nixos
kampfschlaefer has quit [(Ping timeout: 252 seconds)]
carlosda1 has joined #nixos
<nhill>
So, If I'm running Nix on top of Ubuntu let's say... Then I can run all my userspace from Nix. But, seems like I'm stuck with Ubuntu's systemd/daemon setup
<simpson>
Yes. And, for reasons, also the graphics stack.
muyfine has joined #nixos
<simpson>
It's really not very practical IMO except as a very powerful demonstration of Nix in order to entice folks to come to the NixOS side.
muyfine has quit [(Client Quit)]
<simpson>
OTOH it's super-practical, what am I talking about, it works great.
<nhill>
ha
<simpson>
Nix on Darwin is a thing too.
<nhill>
So, I couldn't install X in Nix and run Unity??
<nhill>
hehe
<simpson>
Like you say, the service integration isn't there.
<nhill>
simpson: So, actually what I was talking about is already possible
<clever>
the gpu drivers in X are tightly linked to the drivers in the kernel
<clever>
so X and the kernel need to come from similiar versions
<nhill>
For someone who uses multiple languages, say js, python and ruby
<clever>
so you cant just run X with full accell until you also take over the kernel
<clever>
at that point, its simpler to just run nixos
<nhill>
You could install Nix and use it as a single manager for all those packages
carlosda1 has quit [(Ping timeout: 240 seconds)]
<simpson>
Yes.
<nhill>
clever: Yeah, that seems like a nightmare to try
mkoenig has quit [(Remote host closed the connection)]
<clever>
another fun think you can do, you can install nix on ubuntu, then use that to build the installer.iso
<nhill>
So, am I duplicating the entire stack minus the kernel if I install a single python package in Nix on Ubuntu?
<clever>
yeah
<nhill>
Like does it start with libc etc
<clever>
yep
<simpson>
Yes.
<nhill>
wow, cool
<nhill>
So it's really only the kernel/daemons/X that are freestanding
<nhill>
on the ubuntu side
<dash>
It doesn't _quite_ do that on OSX, but it tries to come close.
<clever>
i think the issue there is that OSX doesnt have a clear libc<->kernel api
<clever>
and you need to link against the correct .dylib to get that
<nhill>
not surprised
<clever>
windows has a similiar issue
<MichaelRaskin>
re: not very practical (Nix on non-NixOS): please tell me more how hassle-free installation of a fresh compiler suite is not practical
<clever>
but in the case of windows, its more that kernel mode is a hack ontop of the accient stack-swapage that used to be implented in userland
<simpson>
MichaelRaskin: Yeah, I get it, as soon as I said it.
<nhill>
That's sounds a little like my next question haha
<nhill>
How to you bootstrap the build, since you're using ubuntu's compiler
<MichaelRaskin>
Nope. You download the archive of statically-built tools
<clever>
in the case of nix, it has a tarball containing gcc + glibc + busybox, and that tar is hashed
<MichaelRaskin>
(unless you just download the fresh gcc from Hydra)
<simpson>
And if you're wondering about purity: Just do it twice.
<nhill>
cool, ok so you download prebuilt toolchain
<nhill>
simpson: seriously?
<simpson>
nhill: Well, very technically, three times, but GCC already has a three-stage bootstrap so you only need to do it once.
mudri has quit [(Quit: WeeChat 1.7)]
[0x4A6F] has quit [(Ping timeout: 240 seconds)]
<simpson>
A compiler only needs to compile itself thrice to become fully self-hosted inside and out; this is from the Futamura projections.
<nhill>
simpson: So, why doesn't downloading the prebuilt toolchain first fix that issue?
<simpson>
nhill: Oh, I thought you meant the *very first* Nix toolchain.
<nhill>
good one
<MichaelRaskin>
third time is actually discarded: it is only done to check convergence
<dash>
nhill: he's talking about the theory of how you build bootstrapped systems: use the host system to build version A; use that to build version B, then use B to build self-hosted C
<benley>
also imho Nix on non-nixos systems is _super_ useful
<dash>
future builds will be identical to B building C
[0x4A6F] has joined #nixos
<MichaelRaskin>
3D
<dash>
yeah i've used nix on non-nixos systems for a long time, only running a single nixos host right now
<nhill>
Yeah, I get that
<dash>
i should probably switch my NAS over
<simpson>
I don't wanna redo my NAS yet.
<nhill>
But, doesn't download a know set of toolchain binaries skip all that?
<nhill>
can't type
<MichaelRaskin>
If you are bootstrapping just the compiler, you have an extra step, if you also bootstrab a standard library, you are missing a step
<dash>
nhill: yes! but someone had to make them, once :)
<nhill>
dash: right
<dash>
nhill: fortunately since nix stores binaries by hash of inputs, it's always safe to fetch things by hash
<MichaelRaskin>
Actually, bootstrap set of static tools gets updated once every couple of years or so
<nhill>
dash: and the hash specificies the toolchain uniquely huh
<nhill>
I've been super frustrated with package and configuration management for at least a decade now. Nice to stumble upon you guys
<nhill>
At first glance it appears to clearly be The One True Way
<benley>
fuck yeah
<benley>
it's not the One True Final Way Forever And Ever Way
<benley>
but it's Pretty Good
<simpson>
It's not perfect, but it's a massive leap beyond everything else.
<benley>
yeah, that
<benley>
I want to spend some time with guix at some point and see where that takes me
<clever>
dash: but there is a theory, where an infected compiler can detect that your building a compiler, and insert code to pass on the infection
<nhill>
Sure seems like a hell of a lot better way than anything else I've seen
<clever>
dash: and if its well written, then having the compiler re-build itself would pass on the infection and give an identical binary
<benley>
cf "Reflections on Trusting Trust", in case anybody hasn't read that
<nhill>
Now, if only everyone can start using the Plan 9 protocol and serve all resources as files...
<nhill>
We can acheive true Purity(tm)
<simpson>
clever: That can be fixed by writing compiler compilers instead and applying Futamura. If you specialize a compiler compiler from fresh compiler compiler source, then even if your current compiler compiler is evil, the evil will flush out if you run it three times.
<benley>
I really can't tell if you're being serious or not
<simpson>
I am 100% serious. There's a couple papers about the "fourth Futamura projection" which describe it.
<benley>
awesome, sounds like I've got some reading to do
<benley>
... as soon as I find someone who can download the pdf from the damn acm paywall
<Ralith>
ooh, fun
<Ralith>
benley: googling "title" inurl:pdf not working?
<MichaelRaskin>
simpson: do you mean fresh as in independent?
<clever>
dash: i read something years ago about somebody hacking into the box of a linux maintainer, and making a slight tweak to the kernel source, changing a ==0 to =0, so if you called a certain syscall with invalid flags, it would change the process uid to 0
<nhill>
dash: that's an interesting idea
<clever>
dash: and the hacker was hoping the maintainer wouldnt notice, and would push it upstream
akiselev has quit [(Remote host closed the connection)]
<nhill>
dash: But, you'd likely be able to detect that eventually and then you lose your key
<dash>
nhill: detect it how? :)
<dash>
Electron microscope?
<nhill>
dash: You'd eventually figure out that some process is doing things it shouldnt be able too
<simpson>
nhill: You'd lose *that* key.
<nhill>
dash: assuming that you never clobber anything using your backdoor is risky
<clever>
nhill: i once noticed a process called httpd on my system, running as root, and using 100% cpu
<dash>
nhill: No reason it'd have to stay the same between processor revisions.
<clever>
nhill: it was odd, becauce my http server was called apache2 in top
<dash>
nhill: Besides, for some attackers it'd be worth it; stuxnet comes to mind
<nhill>
Right, but you risk losing your keys everytime you use them
<clever>
nhill: it turned out to be a perl script, that used non-blocking IO in a tight loop
<nhill>
Intel Management Engine has actually traces directly to RAM
<nhill>
you have hardware access to RAM
<nhill>
and network
<dash>
nhill: Sure. My point is that ME could definitely be used for badthings, but plenty of naughtiness could be achieved unobtrusively without it.
<clever>
nhill: i have used dell's DRAC stuff, and while its powerful, its also scary old and feels like a security nightmare
<nhill>
only detection method is sniffing the network outside the machine
<clever>
nhill: i had to install win xp in a vm just to get the iso loading feature to work
<clever>
nhill: and i had to use win7 to get the remote desktop to work (it appears to sniff the GPU ram and scrape the framebuffer)
<clever>
both components used active-x
<gchristensen>
clever: it _IS_ a nightmare
<nhill>
And, if ME is a backdoor then I'm sure they figured out how to obfuscate their outbound comms
<nhill>
I am actually convinced it is a backdoor, which probably means NSA
<clever>
gchristensen: the datacenter in that situation didnt even have the DRAC's enabled or plugged in
<nhill>
But I think they only use it for highly targeted actions
<NixOS_GitHub>
[nixpkgs] Ericson2314 opened pull request #25047: Cross compilation on linux and darwin misc changes "foundation" (master...cross-foundation) https://git.io/vShNS
<clever>
gchristensen: but i was able to get them to plug it in, and then used it to install nixos
<gchristensen>
yeah
<clever>
gchristensen: i was initialy trying to use the kexec trick from ubuntu, so i tried to install ubuntu via the DRAC
eacameron has quit [(Remote host closed the connection)]
AllanEspinosa has joined #nixos
<clever>
but every time ubuntu wants to reboot, it ejects the cd
<dash>
nhill: I definitely don't wish to downplay the NSA risk. But the stated purpose of ME seems reasonable - facilitate computers being used by people who don't own them
<clever>
and there is no way to remotely close the tray
<clever>
gchristensen: so i had to open a ticket every hour asking them to close the cd tray, lol
<dash>
clever: 'eject' won't close the tray?
<nhill>
dash: I agree the use is compelling
eacameron has joined #nixos
<clever>
dash: i think it was a laptop like drive, no way to close it in software
<clever>
dash: and you cant exactly run eject if its not booting
<dash>
clever: Oh yuck. throw those in the garbage
<nhill>
dash: But, there are much better and more transparent ways to acheive that
<dash>
nhill: Maybe but none that enhance intel revenue
<clever>
dash, gchristensen: i eventualy solved the problem by installing win xp in virtualbox, then emulating the nixos ISO over the whole internet
<clever>
so it could just boot the proper installer cd
<nhill>
dash: I suppose
<clever>
but, win xp lacked tls support, and couldnt download the iso from nixos.org!
<nhill>
dash: Selling data to the NSA is probably mighty lucrative ;)
eacameron has quit [(Remote host closed the connection)]
<nhill>
dash: I went down a bit of rabbit hole once on ME
<gchristensen>
what is ME?
<dash>
intel management engine
<dash>
aka your computer is haunted
<dash>
nhill: this is why things like USB Armory are interesting :)
<gchristensen>
ah I'm familiar with ME
kori has quit [(Quit: WeeChat 1.4)]
<nhill>
dash: When you go deep down the ME rabbithole, you start wondering why Apple switched to Intel
<dash>
nhill: haha
<gchristensen>
I'd take the advantages of the ME over the risk of the NSA spying... I can't put the NSA in my threat model
eacameron has joined #nixos
<nhill>
dash: And why all the flagship smartphones did away with user removable batteries at about the same time
vaibhavsagar has joined #nixos
<dash>
nice
<gchristensen>
this is not good paranoia
<nhill>
gchristensen: NSA has everything you send over the wire. Question is whether they have access to it at the endpoints
<clever>
gchristensen: only once has a virus ever gotten into my linux machine, and paranoia was not required, they made a mess at hiding, lol
<clever>
gchristensen: they replaced ls with a variant that cant see the infection, but it also lacked -h support
<gchristensen>
you're doing a bad job of being paranoid about apple
<clever>
gchristensen: so it instantly broke all of my management tools that where doing ls -lh at the time
<nhill>
clever: that's hilarious
<nhill>
gchristensen: I worked on a top secret Apple project once
<gchristensen>
ok
<clever>
nhill: it also installed a perl script that offered a remote shell over irc, but it used non-blocking io in a loop, so it used 100% cpu and stuck out like a sore thumb :P
carlosda1 has joined #nixos
<nhill>
gchristensen: I'm actually not worried about them per se
<clever>
i was able to clear the infection without rebooting or even taking it off the internet
<gchristensen>
glad we settled that
eacamero_ has joined #nixos
<nhill>
gchristensen: Although, I will say that security on that project was tighter than much of my government work
ryantrinkle has quit [(Ping timeout: 240 seconds)]
eacamero_ has quit [(Ping timeout: 268 seconds)]
eacameron has joined #nixos
<nhill>
dash: "He's building large size children's toys, which he donates to charity. The reason he does not speak is cause he's partially deaf, so conversations are difficult for him; don't take it personally. Whistling is one of the few things that he can hear clearly."
<fresheyeball>
if I add almost anything to the systemPackages, I get a gray screen of death after login
<fresheyeball>
terminator gives a gray screen of death
ebzzry has joined #nixos
<fresheyeball>
as in nixos.terminator
<fresheyeball>
how is this possible?
<fresheyeball>
gnome3.nautilus gives a gray screen of death
<fresheyeball>
if I install them ad hoc in my user environment after login they work fine
<clever>
can you get a text-mode console with ctrl+alt+f1 ?
<fresheyeball>
no
<fresheyeball>
but I can login to xterm as root
<fresheyeball>
which is why I am still alive
<fresheyeball>
now to make matters worse
<clever>
anything odd in the journal?
<fresheyeball>
clever: what is the journal?
<clever>
logs from everything
<fresheyeball>
how can I see the journal?
<clever>
for the current boot, just run "journalctl -b 0"
<clever>
and for the logs from the previous boot, -b -1
<fresheyeball>
the worse thing is that, even though they work fine if install ad hoc after login. Rebooting still gives a gray screen of death. So I have to login as root in xterm, then login as me, and then remove the ad hoc packages, reboot. And Then I'm alive again.
<fresheyeball>
clever: ok I have the journal open
<clever>
and then scroll thru it and look for any errors around the time you logged in
byteflame has quit [(Ping timeout: 252 seconds)]
<fresheyeball>
clever: there is a ton in here
<fresheyeball>
how can I find my login?
<clever>
ah, if your only way out of the grey screen is to reboot, then the previous boot may be faster
<clever>
"journalctl -b -1" to get everything up to when you rebooted, then scroll to the bottom, and look upwards
markus1189 has quit [(Ping timeout: 255 seconds)]
<fresheyeball>
I do see some things
<clever>
can you upload that area of the log to a pastebin?
markus1189 has joined #nixos
joelpet has quit [(Ping timeout: 252 seconds)]
<fresheyeball>
clever: here is the whole thing (get part was proving challenging)
<fresheyeball>
I'm not sure journalctl -b -1 is giving us a session where the error occured
<fresheyeball>
I can cause the error so we know which boot it lives in
<clever>
thats weird, but it does mention sddm
<rcschm>
hi, i have installed oh-my-zsh using nix-env on ubuntu. everything went fine. now how to make oh-my-zsh default for all users? thanks for any help.
<clever>
fresheyeball: yeah, lets turn compton off, and then cause another error and note the exact time it happened at
mguentner2 has quit [(Ping timeout: 240 seconds)]
<fresheyeball>
rcschm: I think its `users.defaultUserShell = "oh-my-zsh" in configuration.nix
<fresheyeball>
clever: I'm going to leave compton, to cut out potential variables
<fresheyeball>
one sec
<rcschm>
i only have config.nix and use nix-env.
<rcschm>
is that the same file? @fresheyeball?
mguentner2 has joined #nixos
<fresheyeball>
rcschm: then you are in user space and can't make the global change the nix way
<clever>
fresheyeball: also, enabling compton automaticaly puts it into systemPackages, so you never need to put it there yourself (line 39)
<rcschm>
i see. so how do i install oh-my-zsh for use in this case? any suggestion?
<fresheyeball>
whatever method your non-nixos os provides for global shell config
<fresheyeball>
point it at the nix install oh-my-zsh
<fresheyeball>
clever: rebooting going down
fresheyeball has quit [(Quit: WeeChat 1.7)]
<rcschm>
so i have to look for the one in nix store.
<rcschm>
and manually configure it?
<clever>
rcschm: it will have a symlink at ~/.nix-profile/bin/oh-my-zsh you can use
filterfish has joined #nixos
<rcschm>
let me check.
ebzzry has quit [(Ping timeout: 240 seconds)]
hexagoxel has quit [(Ping timeout: 255 seconds)]
<rcschm>
clever, i find it in /.nix-profile/share/. but it not executable though.
<clever>
rcschm: there should be a binary somewhere in bin, that you can run, it might just be called zsh
fresheyeball has joined #nixos
<fresheyeball>
clever: ok I'm back
<fresheyeball>
here is what I did
<rcschm>
let me check.
<fresheyeball>
I added `terminator` to my systempackages
<fresheyeball>
then I did a nixos rebuild switch
<fresheyeball>
and rebooted
<fresheyeball>
after login as myself I got the gray screen of death
<fresheyeball>
I hit Mod+shift+q to logout
<fresheyeball>
and then logged in to xterm as root
<fresheyeball>
I removed terminator from my systempackages
<fresheyeball>
did nixos rebuild switch
<fresheyeball>
and rebooted
<fresheyeball>
now I am back logged in as me with xmonad and everything is fine
<fresheyeball>
clever: I just ran `journalctl -b -1 | xclip -sel clip`
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/vSjmi
<NixOS_GitHub>
nixpkgs/master f0f9cad Jörg Thalheim: linuxPackages.broadcom-sta: add patch to repo...
<hyper_ch>
when I try to use whois domain.tld I always get: getaddrinfo: Servname not supported for ai_socktype
<hyper_ch>
even when I do it as root
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 1 new commit to release-17.03: https://git.io/vSjYL
<NixOS_GitHub>
nixpkgs/release-17.03 ff76401 Jörg Thalheim: linuxPackages.broadcom-sta: add patch to repo...
carlosda1 has quit [(Ping timeout: 255 seconds)]
<Mic92>
hyper_ch: we have multiple whois implementation, which one do you use?
<hyper_ch>
jwhois
<Mic92>
hyper_ch: can you check if 'nix-shell -p whois --command "whois nixos.org"' is working for you?
<hyper_ch>
Mic92: that works
<hyper_ch>
so what did you do?
<Mic92>
hyper_ch: the default parameter of jwhois are broken. It work, if use fix ones: whois -h whois.iana.org -p 43 nixos.org
<hyper_ch>
and how to remove that nix-shell installed one?
<Mic92>
hyper_ch: it will be removed after the next nix-garbage-collect
filterfish has joined #nixos
<hyper_ch>
Mic92: thx
<hyper_ch>
added now whois to my configuration
<Mic92>
I may remove jwhois or mark it as broken
<Mic92>
it is unmaintained anyway
nicknovitski has joined #nixos
<Mic92>
hyper_ch you also use unstable right?
takle has joined #nixos
<hyper_ch>
yes
MercurialAlchemi has joined #nixos
marsel has joined #nixos
takle has quit [(Ping timeout: 255 seconds)]
ryanartecona has joined #nixos
reinzelmann has joined #nixos
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/vSjZ7
<NixOS_GitHub>
nixpkgs/master 080c799 Jörg Thalheim: jwhois: fix service name...
<Mic92>
hyper_ch: ^ you could also use jwhois after this update again, but to be honest I would recommend `whois`, because jwhois does some strange things
<hyper_ch>
Mic92: I used jwhois because there was nothing else before I think
filterfish has quit [(Ping timeout: 240 seconds)]
<Mic92>
jwhois resolve mechanism does not work with .io domains for instance
<hyper_ch>
gotta get to work now
ryanartecona has quit [(Quit: ryanartecona)]
nicknovitski has quit [(Ping timeout: 252 seconds)]
<hyper_ch>
well, I succeeded in porting the vdi to qcow2 and it seems to work
<hyper_ch>
but in vbox the guest canvas would automagically expand/shrink to the host window
<hyper_ch>
can't figure that out with kvm/qmeu
<hyper_ch>
in in virt manager it keeps losing the local connection
stepcut has quit [(Ping timeout: 240 seconds)]
<hyper_ch>
and performance seems to be much worse than with vbox
takle has joined #nixos
derjohn_mob has quit [(Ping timeout: 260 seconds)]
indi_ has joined #nixos
mbrgm has quit [(Ping timeout: 260 seconds)]
takle has quit [(Ping timeout: 240 seconds)]
byteflame has joined #nixos
mbrgm has joined #nixos
indi_ has quit [(Remote host closed the connection)]
bennofs has joined #nixos
byteflame has quit [(Ping timeout: 268 seconds)]
ertes has joined #nixos
ertes has quit [(Remote host closed the connection)]
ertes has joined #nixos
nschoe has quit [(Quit: Program. Terminated.)]
nschoe has joined #nixos
indi_ has joined #nixos
ixxie has joined #nixos
peti has joined #nixos
takle has joined #nixos
dmi3y has quit [(Quit: dmi3y)]
takle has quit [(Ping timeout: 240 seconds)]
takle has joined #nixos
Itkovian has quit [(Read error: Connection reset by peer)]
dmi3y has joined #nixos
indi_ has quit [(Remote host closed the connection)]
<NixOS_GitHub>
[nixpkgs] lheckemann opened pull request #25056: util-linux: fix path to umount in eject (master...fix-eject-umount) https://git.io/vSjrL
MichaelRaskin has quit [(Quit: MichaelRaskin)]
tsmeets has joined #nixos
takle has quit [(Ping timeout: 240 seconds)]
<tsmeets>
something is wrong with xmonad in 'nixos-unstable-small'. when I try to start xmonad with lightdm it fails to start and pulls me back into lightdm
<hyper_ch>
but inetutils is needed for ping, traceroute, telnet
seagreen has joined #nixos
<lukego>
Me again with a question :-)... I have a derivation that produces a lot of failes that I _don't_ want to 'nix-env -i' to put into ~/.nix-profile/. Is a good solution to split the package into two derivations, the "backend" one that products many files that need to exist _somewhere_, and the "frontend" one that symlinks the desired ones into the env?
<lukego>
(Can be that I did not properly understand the multiple outputs suggestion from before...)
<Mic92>
hyper_ch: you could also utils iputils, but yet this needs to be fixed
<Mic92>
archlinux seems to disable this whois
earldouglas has quit [(Ping timeout: 240 seconds)]
marsel has joined #nixos
<hyper_ch>
Mic92: ok, remove inetutls but there's no utils package
<goibhniu>
lukego: sounds alright, but more details would help
<hyper_ch>
there is iputils but there was no utils
<Mic92>
this was a typo
gal_bolle has joined #nixos
<lukego>
goibhniu: I'm packaging the pharo virtual machine. The build produces a bunch of shared libraries that need to exist somewhere (but doesn't matter where.) I'd like to exclude those libraries from ~/.nix-profile and only put the front-end executable there.
<lukego>
goibhniu: motivation is the fear of accidental name collisions in ~/.nix-profile when installing multiple versions of the vm.
takle has joined #nixos
MoreTea has joined #nixos
<goibhniu>
ah great, that's clear
indi_ has quit [(Remote host closed the connection)]
plumps has joined #nixos
<hyper_ch>
Mic92: iputils works
<goibhniu>
lukego: and you don't want people to use nix-shell for each version of the vm?
earldouglas has joined #nixos
<goibhniu>
lukego: I think you can influence environment.pathsToLink to change what ends up in ~/.nix-profile
takle has quit [(Ping timeout: 255 seconds)]
<NixOS_GitHub>
[nixpkgs] FRidh pushed 1 new commit to staging: https://git.io/vSjiz
<NixOS_GitHub>
nixpkgs/staging 61c49b1 Frederik Rietdijk: pythonPackages.statsmodels: fix eval
* lukego
thinks :)
<NixOS_GitHub>
[nixpkgs] FRidh force-pushed python3 from 738dcee to 34f0e89: https://git.io/vPPX6
<NixOS_GitHub>
nixpkgs/python3 34f0e89 Frederik Rietdijk: Python 3 is now an alias of 3.6 instead of 3.5
<lukego>
goibhniu: It's important to be able to have several VM versions in the environment at once. They are not really plug-and-play because each one is compatible with different applications. Similar to python2.7 vs python3
elninja44 has quit [(Remote host closed the connection)]
<bennofs>
lukego: you can set meta.outputsToInstall
ericsagnes has quit [(Ping timeout: 258 seconds)]
<goibhniu>
lukego: TBH, I haven't done much with multiple outputs, but I'm pretty sure you could install pharo.bin in the environment and have it depend on pharo.dev (for the libs)
<clever>
oh, and some stuff gets upset if out is missing from the outputs
MVQq has quit [(Ping timeout: 240 seconds)]
<lukego>
bennofs: Suspicious that outputsToInstall is not used anywhere in nixpkgs?
<bennofs>
lukego: you may need a recent enough version of nix-env for it to work. there's a note about that in the nixpkgs manual
<lukego>
The multiple outputs documentation seems to have a big warning saying that nix-env will install all the outputs.
<lukego>
bennofs: That sounds terrible, since nix-env is one of the only dependencies that I don't have control over
pie_ has joined #nixos
takle has quit [(Read error: Connection reset by peer)]
<lukego>
I find myself rapidly slipping into "fuck this shit" mindset, after nearly a week of working on this, so I'd better find a way to wrap it up quickly before I give up :)
takle has joined #nixos
<bennofs>
lukego: hmm. you could just make the alias for the package in `all-packages.nix` be the output that you want to install
<bennofs>
lukego: then for nix-env, it would look like there only is one output
<lukego>
I tried adding 'outputs = [ "bin" "out" ]' and my build started breaking in an obscure way that I don't understand :-( seemingly while working on files/directories in the build dir
<clever>
lukego: can you pastebin an error?
<lukego>
It's too context-dependent, it's a "make install" into the working build directory that is failing
<lukego>
Thanks for the help. I will live with the polluted environment for now. Can get tips on improving it after i send a PR upstream.
<lukego>
"The best is the enemy of the good" and all that.
indi_ has joined #nixos
<NixOS_GitHub>
[nixpkgs] FRidh pushed 1 new commit to staging: https://git.io/vSj1U
<NixOS_GitHub>
nixpkgs/staging fc3fc91 Frederik Rietdijk: pythonPackages.netaddr: 0.7.18 -> 0.7.19
bennofs has quit [(Quit: WeeChat 1.7)]
<goibhniu>
lukego: another (less elegant) solution might be to add a wrapper script as a separate expression
deepwater has quit [(Remote host closed the connection)]
<lukego>
goibhniu: Yeah. I was half way through writing that when I went off on the multiple outputs goose chase :-\
<NixOS_GitHub>
[nixpkgs] FRidh force-pushed python3 from 34f0e89 to a83f0d2: https://git.io/vPPX6
<NixOS_GitHub>
nixpkgs/python3 a83f0d2 Frederik Rietdijk: Python 3 is now an alias of 3.6 instead of 3.5
<binarin>
But if I move 'share/' to '$bin' output, it starts appearing
<goibhniu>
ahh
dmi3y_ has joined #nixos
reinhardt has joined #nixos
deepwater has joined #nixos
indi_ has quit [(Remote host closed the connection)]
goibhniu1 has joined #nixos
<domenkozar>
lukego: nix-env -i (imperative installation) is shaving yaks most of the time
<domenkozar>
I generally encourage nix-shell -p
<lukego>
domenkozar: IMHO that is just creating a "too many ways to do it" problem for users.
<domenkozar>
yes, but sticking declarative installation power into imperative one is tricky and hard to get right
<lukego>
domenkozar: Sucky situation when the obvious way to do something is the wrong way to do it...
MVQq has joined #nixos
<domenkozar>
lukego: agreed :) If it were up to me, nix-env -i wouldn't exist
dmi3y has quit [(Ping timeout: 240 seconds)]
<lukego>
Relatedly, I have started installing software with 'nox', but I can't work out how to tell it which nixpkgs to use. I'd use -f with nix-env but nox has no such option.
<domenkozar>
for example in python, what happens if you install django as an executable and then django 1.X? If you import django, which version do you get?
goibhniu has quit [(Ping timeout: 255 seconds)]
reinzelmann has quit [(Ping timeout: 255 seconds)]
<domenkozar>
Nix 1.12 will fix a few things once it's out
MarcWebe1 has quit [(Quit: leaving)]
<lukego>
domenkozar: I do take your point though. Why bother creating a bunch of "global" (i.e. colliding) symlinks in ~/.nix-profile when you can just put the references in process-local $PATH, etc, environment variables
MarcWeber has joined #nixos
roconnor has quit [(Ping timeout: 255 seconds)]
<lukego>
and I love the new nix-shell shebang support :)
takle has quit [(Remote host closed the connection)]
takle_ has joined #nixos
<domenkozar>
slowly we'll need to write: Nix the good parts
Isorkin has quit [(Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org)]
<domenkozar>
so you could do: nix install snabb.lib
<lukego>
Guess the current situation is inevitable for a project that is evolving in a good direction and also taking backwards-compatibility seriously. "Getting it all right the first time works great for God. The rest of us have to use evolution."
FRidh has joined #nixos
<domenkozar>
that leads to the question if the world is simulated
<domenkozar>
lukego: btw, did you get your answers? :)
<lukego>
domenkozar: Sort-of. I understand the potential solutions, but that took up all the time that I was willing to spend, so I am not going to fix it :)
<lukego>
I have spent about a week on packaging Pharo and I expected it to take a few hours.
<domenkozar>
lukego: what were the main causes/blockers for such long development?
<lukego>
I have learned a lot of nix and pharo-vm-buildery in the process though so it's a reasonable investment for future maintenance.
takle_ has quit [(Read error: Connection reset by peer)]
carlosda1 has joined #nixos
<lukego>
domenkozar: On the one hand I am a nix newbie so everything goes at 1/4 the speed that it should. On the other hand Pharo upstream have made things hard by changing all of the build procedures for the VM and, in practice, requiring the old one to be maintained in parallel.
pie_ has quit [(Ping timeout: 260 seconds)]
<mojjo>
Does sombody have a good reference where the xmonad config file is included in the a nix config?
<domenkozar>
lukego: and no clear instructions how to package the vm?
<lukego>
domenkozar: Essentially if you download a pharo "image" (application) from the internet then you will need one of three different VMs to run it. Like an idiot I decided to make a "one true solution" that automatically detects which VM is needed and runs it. So I have to package all the VMs and maintain that special logic.
<domenkozar>
and each of the three has different pros/cons?
<lukego>
Each application will be compatible with exactly one of the VMs, and the choice is not necessarily obvious (depends mostly on when the application was built)
<lukego>
and the developers don't really want the applications to be packaged with nix because they have their own ideas about how to distribute updates to users etc.
takle_ has joined #nixos
filterfish has joined #nixos
<domenkozar>
well they can still do that, if they expose enough metadata for the rest of the world
<lukego>
That is an ongoing discussion.
carlosda1 has quit [(Ping timeout: 268 seconds)]
<lukego>
and seriously if I don't get this wrapped up in the next hour or two then I am going to throw it away and do something else with my life. So: less IRC :)
<binarin>
symphorien: 'share/' is already linked, but only if it is in a 'bin' output of a multi-output derivation. I.e. this happens with fzf package that I've mentioned above.
<domenkozar>
I feel your pain lukego, these things take time. Biggest issue in packaging is ignorance and fighting against ignorance is hard.
<domenkozar>
lukego: if it matters, you have my full support :)
<lukego>
Maybe. But different languages have different cultures and there can be legitimate friction. Smalltalk is oriented towards "living in the now" and moving forwards continuously, so creating static snapshots is anathema in a certain sense.
<lukego>
But - not the time for a debate about whether nix users are ignorant of smalltalk, or smalltalk users are ignorant of nix :)
<domenkozar>
lukego: did you consider pacakaging only the binary using patchelf?
<domenkozar>
we do that for bigger stubborn software like atom
<lukego>
domenkozar: Dude... I have already done all the work of packaging the VMs, it is working fine and just needs a little tidying up before I run out of steam, it's not helpful to suggest starting over :)
<lukego>
(I feel like Pharo upstream are basically reckless maniacs when it comes to software build/release so I resist becoming a maintainer of their binaries)
<domenkozar>
oh I misunderstood then, sorry :)
JagaJaga has joined #nixos
<lukego>
I'd appreciate feedback on the approach once I have sent the Github PR. Once I reach that point at least there is a snapshot that can be critiqued.
<domenkozar>
lukego: feel free to request my review
ThatDocsLady has joined #nixos
Isorkin has joined #nixos
<lukego>
thanks!
stukj has joined #nixos
stukj has quit [(Remote host closed the connection)]
deepwater has quit [(Remote host closed the connection)]
<ixxie>
stukj: I was really hoping for a way to do it with Nix as opposed to some embedded bash script, but I haven't been able to find a way
m` has joined #nixos
m` is now known as mojjo
<stukj>
ixxie: thanks :)
<ixxie>
np
deepwater has joined #nixos
deepwater has quit [(Remote host closed the connection)]
aboseley has joined #nixos
<mojjo>
it looks like xmonad expects it's config file in ~/.xmonad/xmonad.hs, there's not really an environment var for this. This is not ideal in the nix system. Could I patch its executable somehow in order to make xmonad expect the config file somewhere in the nix store?
indi_ has joined #nixos
indi_ has quit [(Remote host closed the connection)]
stukj has quit [(Remote host closed the connection)]
carlosda1 has joined #nixos
ixxie has quit [(Ping timeout: 258 seconds)]
ixxie has joined #nixos
<hyper_ch>
hmmm, I have a list of domains that I would like to add to my hosts file. Is there a good way?
<goibhniu>
hyper_ch: how about networking.extraHosts = "${builtins.readFile /path/to/some/hosts/file}";
<goibhniu>
(or just list them there)
<stukj>
regarding the exwm problem, it seems that with lightdm it works, but not with slim.
<puffnfresh>
stukj: interesting
DutchWolfie has quit [(Ping timeout: 260 seconds)]
<hyper_ch>
goibhniu: hmmmm, that sounds good.... readfile could als be a webresource?
<ixxie>
in my configuration.nix modules I list packages to be installed in environment.systemPackages - I am now wondering if those modules (which have nothing about services in them) could be used in Nix on other distros
<clever>
goibhniu, hyper_ch: you can also do networking.extraHosts = builtins.readFile /path/to/some/hosts/file;
<clever>
hyper_ch: i think readFile only works with local things, but that also includes derivation results
<clever>
hyper_ch: so maybe builtins.readFile (pkgs.fetchurl ... );
<goibhniu>
that's nicer, thanks!
<hyper_ch>
it's just a list of domain names.... for hosts it would required to provide 127.0.0.1 as IP as well
lsix has quit [(Remote host closed the connection)]
lsix has joined #nixos
FRidh has quit [(Remote host closed the connection)]
<LnL>
also you probably have to map those entries to a valid hosts format, don't think a multiline hosts mapping works
<clever>
ah yeah
<Isorkin>
clever: approximately to use such variant? - http://nixpaste.lbr.uno/heGSa2Em?nix error - error: cannot auto-call a function that has an argument without a default value (‘libressl_2_5’)
<hyper_ch>
well, couldn't figure out how to use that readfile with an already exsisting list in the configuration.nix
dmi3y has joined #nixos
<clever>
Isorkin: not sure how to fix that
mbrgm has quit [(Ping timeout: 260 seconds)]
mbrgm has joined #nixos
aboseley has quit [(Remote host closed the connection)]
aboseley has joined #nixos
TweyII has joined #nixos
aboseley has quit [(Remote host closed the connection)]
TweyII is now known as Guest87926
pie_ has joined #nixos
<pie_>
is rstudio broken for you guys too? the window comes up and the menu is there but the rest is just white as if it wasnt loading.
<pie_>
well...installing R from unstable as well fixed it :.:
<lukego>
domenkozar: On reflection, I might give up on this pharo packaging. Could be that the way I am doing it suits my use case but that other people & pharo upstream would be happier with packaged binaries (which don't suit me.) Long version: http://lists.squeakfoundation.org/pipermail/vm-dev/2017-April/024854.html
<pie_>
lukego, hm.
<pie_>
lukego, what do you mean stalled? also that would be cool
<lukego>
pie_: Rstudio bundles a bunch of third party libraries, in parallel to nixpkgs, and I didn't work out how to update them all in the time I had available.
<pie_>
ah
<pie_>
yeah that sounds like a pain in the butt :P
<lukego>
Too bad because I'd really like the Rmarkdown support from version 1.0 before I migrade from OSX to NixOS
nckx has quit [(Quit: restarting my GuixSD server)]
eqyiel[m] has quit [(Ping timeout: 240 seconds)]
engblom has joined #nixos
<engblom>
What init system does nixos use?
<goibhniu>
engblom: systemd
<engblom>
Oh :/
byteflame has joined #nixos
phreedom has quit [(Ping timeout: 260 seconds)]
oleks has quit [(Ping timeout: 260 seconds)]
oleks has joined #nixos
pie_ has quit [(Changing host)]
pie_ has joined #nixos
vaibhavsagar_ has quit [(Ping timeout: 260 seconds)]
eqyiel[m] has joined #nixos
reinhardt has quit [(Ping timeout: 260 seconds)]
Supersonic112 has quit [(Ping timeout: 260 seconds)]
markus1199 has quit [(Ping timeout: 260 seconds)]
ronny has quit [(Ping timeout: 260 seconds)]
<domenkozar>
lukego: well source based does pay off on the long run, as long as you can get information from upstream what was used for the binary image
markus1199 has joined #nixos
ronny has joined #nixos
reinhardt has joined #nixos
<engblom>
Is systemd a hardcoded choice that can not be changed with any configuration?
phreedom has joined #nixos
byteflame has quit [(Ping timeout: 240 seconds)]
<goibhniu>
engblom: currently yes, although there is work/interest in changing that
<goibhniu>
engblom: FWIW GuixSD uses a different init system, but also uses nix under the hood
<engblom>
I have been using systemd since ubuntu switched to it and I begin to be fed up with the problems. This week the netword adapeter died and even though xdm had already started up, I could not log in until the 5 minutes 12 second delay it tried to bring up the network
<engblom>
network adapter*
<clever>
engblom: nixos doesnt have the display-manager depend on the network, so that wouldnt happen there
<clever>
thats sounds more like poor config of the systemd units, then a problem with systemd itself
Supersonic112 has joined #nixos
<engblom>
clever: I agree it is a problem with how it is configured. Just that there has been plenty of this kind of problems. I also hate how systemd (at least on ubuntu) gives no response when restarting a service. I have no idea if it failed or succeeded unless I manually check it up
<clever>
on nixos, it doesnt give a confirmation, but restart can block if the service is well designed
<clever>
with my vpn, its configured to stay in "starting" until it links up, then go into "started"
<clever>
and a "systemctl restart" will block until its started
<engblom>
Earlier if I did '/etc/init.d/cups restart' I saw how cups was shutdown with an [OK] after and then how it was again started
nckx has joined #nixos
<clever>
but it wont actualy give status about success/fail
<gchristensen>
you can do `systemctl restart foo; test $? -eq 0 && echo "OK"
lukego has quit [(Ping timeout: 260 seconds)]
<clever>
gchristensen: you can probably also just do systemctl restart foo && echo "OK"
<gchristensen>
_ugh_ of _course_ :D
<clever>
bash is weird
<engblom>
But that is a bit of an overkill for something I think an init system should implement itself already
<clever>
yeah
<clever>
id either write a wrapper around systemctl to build it in, or just patch systemd to fix it
<gchristensen>
probably a wrapper is best
<gchristensen>
it is interesting, most complaints are about systemd being too big and having too much implemented itself
<engblom>
My complaint is that it makes the life much more difficult and in many cases (not just this problem with network adapter) the boot becomes many, many minutes while something is timing out.
derjohn_mob has quit [(Ping timeout: 258 seconds)]
<pie_>
you guys know a good solution for using pycharm's python package manager thing?
<pie_>
right now if i try to install a package that has dependencies i think i have to restart pycharm running with an appropriate envirnment
<NixOS_GitHub>
[nixpkgs] FRidh pushed 4 new commits to staging: https://git.io/v9ekn
<NixOS_GitHub>
nixpkgs/staging 60eaa47 Frederik Rietdijk: pythonPackages.ipython: 5.3.0 -> 6.0.0
<NixOS_GitHub>
nixpkgs/staging 893e405 Frederik Rietdijk: pythonPackages.decorator: 4.0.10 -> 4.0.11
<NixOS_GitHub>
nixpkgs/staging 1e4a5b8 Frederik Rietdijk: pythonPackages.prompt_toolkit: 1.0.13 -> 1.0.14
<gchristensen>
it sounds like a bug in the use of systemd, not a bug in systemd
FRidh has joined #nixos
<joachifm>
jophish: what errors are you seeing? I'm afraid I don't know much about arm
<engblom>
gchristensen: Earlier if I wanted something to run on a TTY automatically at boot, I edited one simple file: /etc/inittab. Now I end up creating both strange named folders and files and adding several lines
<gchristensen>
engblom: I'm sorry, if you're here to complain about systemd, this isn't really the place to do it. we hear your complaints though and a few people are even working to use nixos without systemd.
<puffnfresh>
Nix has functions, so we've got a useful form of abstraction
<puffnfresh>
it should be possible to abstract away systemd
<pie_>
is there something that says "get the dependencies of this package" instead of the package itself?
<puffnfresh>
I don't think it'd be too hard actually engblom
<puffnfresh>
pie_: nix-shell does that
<pie_>
puffnfresh, how?
watersoul has quit [(Ping timeout: 240 seconds)]
<NixOS_GitHub>
[nixpkgs] joachifm pushed 1 new commit to master: https://git.io/v9eIu
<NixOS_GitHub>
nixpkgs/master 6572f5e Marius Bergmann: keepalived service: init (#22755)
<pie_>
puffnfresh, also if you can see what i said above maybe you can tell me what i should do?
<puffnfresh>
pie_: nix-shell '<nixpkgs>' -A ghc
<pie_>
puffnfresh, but doesnt that install ghc? i just want the deps
<puffnfresh>
no, it doesn't install ghc
<puffnfresh>
it puts you in a shell with all of GHC's dependencies
<pie_>
oh :O
<puffnfresh>
nix-shell -p ghc
<pie_>
thanks
<puffnfresh>
is probably what you're thinking of
<puffnfresh>
-p will put it on the PATH
<MoreTea>
engblom, that's the dual of modular configuration systems. Some things might be harder.
usoban has joined #nixos
<pie_>
also is <nixpkgs> using the name of the repo?
<puffnfresh>
pie_: that gets a bit technical
<pie_>
:I
ryantrinkle has quit [(Ping timeout: 260 seconds)]
<puffnfresh>
echo $NIX_PATH
<pie_>
because im pretty sure when i tried <unstable> which is the name of my unstable channel it didnt wor
<puffnfresh>
you'll see something like nixpkgs=something
<puffnfresh>
pie_: it comes from NIX_PATH, you can put whatever you want into NIX_PATH
<pie_>
oh ok
<puffnfresh>
but nix-channel helps with that
<MoreTea>
It creates a systemd unit that runs on a specific TTY
<pie_>
puffnfresh, yeah i still havent gotten around properly learning how all this works even though i like it
<sphalerite>
Is there a way to stop nix-shell -p xyz from getting xyz's doc output?
<MoreTea>
sphalerite, this might work: `nix-shell -f '<nixpkgs>' -A xyz.bin`
<pie_>
puffnfresh, so if i want to use pillow from pycharm....
<sphalerite>
MoreTea: it's not liking -f
<pie_>
well, pillow running in a python session from a python in a virtualenv started by pycharm
<puffnfresh>
pie_: now it's getting too technical for me :)
<pie_>
:P
<sphalerite>
MoreTea: oh yeah, no -f
<MoreTea>
sorry, this should work: `nix-shell '<nixpkgs>' -A xyz.bin`
<pie_>
puffnfresh, basically its just that environment variables get inherited right?
<MoreTea>
sphalerite, great :)
<puffnfresh>
pie_: when you run nix-shell?
<puffnfresh>
yeah
<pie_>
so if i install the package, but then dont have the deps in the env of the program that runs it, it wont work right?
MoreTea has quit [(Quit: Leaving)]
<puffnfresh>
yep, that'd be right
<sphalerite>
MoreTea: hm, now for some reason it gets util-linux's docs
<pie_>
so im trying to figure out a sane way to make this work...
<usoban>
Anyone had problems with xrandr not properly extending? Command `xrandr --output eDP1 --auto --output HDMI2 --auto --left-of eDP1 --primary` basically turns on the external display as primary, but the laptop display eDP1 gets mirrored and unresponsive instead of being extended.
<pie_>
well...i guess i can always run pycharm from inside nix-shell
* pie_
tries that
<puffnfresh>
pie_: I know some people do that with Emacs
griff_ has joined #nixos
<puffnfresh>
works for them
watersoul has joined #nixos
<pie_>
puffnfresh, so what would be the appropriate way to do this in a .nix file?
<NixOS_GitHub>
[hydra] shlevy pushed 1 new commit to master: https://git.io/v9eLy
<NixOS_GitHub>
hydra/master 4c26cf0 Shea Levy: getHydraConfig: Allow multiple includes
<pie_>
i dont think buildInputs = [ python36Packages.pillow ] is correct
watersoul has quit [(Read error: Connection reset by peer)]
<sphalerite>
that way it becomes a runtime dependency as well as a build-time one, regardless of whether the actual output files would have contained it
<sphalerite>
s/contained/referenced/
<pie_>
yeah i guess i should read that section
<pie_>
sphalerite, not that thats a problem but using any kind of buildinputs will install the package no? i just want the deps, ill install the package with pip?
<clever>
sphalerite: propagatedBuildInputs are only copied into the buildInputs of things that x is in the buildInputs of, but that doesnt cover runtime usage
<pie_>
s/?/./
<sphalerite>
clever: whoops, yeah, forgot that bit. But it does make it a runtime dependency as a side effect as well, no?
<clever>
sphalerite: if it lands in $out/nix-support, then it will probably get dragged along at runtime, but wont be in any env variable like $PATH or $PYTHONPATH
watersoul has joined #nixos
<clever>
sphalerite: so nix will keep it around, but you wont be able to actualy use it
watersoul has quit [(Max SendQ exceeded)]
<sphalerite>
ok, disregard what I said pie_ :P
vaibhavsagar_ has joined #nixos
chakerbenhamed has joined #nixos
<NixOS_GitHub>
[nixpkgs] grahamc pushed 1 new commit to unstable-aarch64: https://git.io/v9etC
<NixOS_GitHub>
nixpkgs/unstable-aarch64 7042463 Graham Christensen: qemu_test: enable architectures other than x86
<sphalerite>
although propagatedBuildInputs is the way to go with python deps
<pie_>
>P
<pie_>
* :P
ericsagnes has quit [(Ping timeout: 240 seconds)]
<gchristensen>
we have so many surprise places we assume nothing but x86 exists
<clever>
there is also a propagatedUserEnv thing, that causes nix-env -i to install it also
<clever>
but i dislike that, it causes the very conflicts nix is meant to solve
<puffnfresh>
you'd change fetchurl to fetchFromGitHub and fill out the details
<engblom>
What is the sha256 in this case?
watersoul has joined #nixos
DutchWolfie has quit [(Quit: Konversation terminated!)]
<clever>
engblom: the sha256 of the nar of $out, its usualy faster to just paste in a wrong one and let nix-build tell you the right one
<engblom>
And as there is no "version" to be updated, how will it know if the upstream sources has been changing?
<clever>
engblom: you would need to bump the revision and sha256 every time you want it to update
<clever>
nix avoids things updating on their own at all costs
<ixxie>
clever: then I am baffled how replacing a fetchFromGitHub call (with use, repo, rev & hash) with a fetchgit call (with only a url) results in a "cannot coerce a function to a string" error
<clever>
ixxie: can you gist your nix expression?
CMCDragonkai has quit [(Ping timeout: 260 seconds)]
<clever>
ixxie: fetchgit still needs a revision and sha256
<pie_>
yeah buildDeps is not a good solution beause it adds the python package to pythonpath and i cant install from source then, i need somthing that just gives the deps
<pie_>
err buildInputs
<FRidh>
pie_: I haven't been following entirely. You use pycharm, and you want to develop a package. Do you want an environment with Nix-managed Python packages, non-Nix-managed or a combination?
<pie_>
FRidh, i use pycharm and i wnat to install a package in a virtualenv
<ixxie>
clever: I see.... indeed that is the case. I assumed that because the expression for fetchgit included defaults for these things that it could simply track the head automatically
<FRidh>
pie_: install it the python way, like python setup.py install e.g.?
<clever>
ixxie: yeah, the rev will default to head, but it has a default for the hash, because it doesnt know if your giving an md5 or sha256
<pie_>
FRidh, so far what im looking at is running pycharm in nix-shell but that kinda sucks because if i have something with more deps i have to restart pycharm with the proper environment
<pie_>
its crappy but its a solution
<clever>
ixxie: and line 45 says it doesnt support md5 anymore, so you need to give a sha256
Guest87926 has quit [(Ping timeout: 240 seconds)]
<pie_>
so what im looking for right now is how to install the dependencies of a package but not the package itself with a .nix file, so that i can build the package with pip
<pie_>
i mean for example, get the dependencies of python36Packages.pillow so i can do pip install pillow
<clever>
pie_: if you do nix-shell '<nixpkgs>' -A foo, it will drop you into a shell with the deps for foo
<pie_>
yes
<pie_>
im looking for the equivalent nix expression
<spacefrogg>
buildEnv
<FRidh>
pie_: and what is the reason for not pip installing everything? C extensions?
<pie_>
FRidh, pillow depends on stuff like zlib
<pie_>
not sure if thats what oyu mean by c extensions
<FRidh>
yes
<ixxie>
clever: well it makes a lot of sense to need a hash in order to ensure reproducability, I guess I am trying to find a way to track branches as they update
<pie_>
FRidh, buildenv seems to be for installing python packages, not what i need?
<FRidh>
pie_: you can nix-build /nix-shell an environment with nix-managed dependencies. Then, run virtualenv using that Python. Now, it will have access to all those Nix-packages Python packages. Then, you can pip install whatever.
<pie_>
ok, meanwhile, getting sidetracked :/ having added glfw to my environment python still gives me that it cant find libglfw.so.3 when i try to import glfw...
<pie_>
what gives
<pie_>
OSError: libglfw.so.3: cannot open shared object file: No such file or directory
plumps has quit [(Ping timeout: 252 seconds)]
<FRidh>
pie_: can you share the expression
<pie_>
_lib = cdll.LoadLibrary('libglfw.so.3')
<pie_>
hm wait i think i remember fixing something like this before..
<FRidh>
you need to provide the full path to the library with Nix
<FRidh>
assuming that line is in a nix expression. Typically we use substituteInPlace to modify lines that need to load a library.
<pie_>
thats just the part of the python file thats erroring
<pie_>
nothing to do with nix
<NixOS_GitHub>
[nixpkgs] vcunat opened pull request #25059: kdiff3: fix with git mergetool (master...p/kdiff3-git-mergetool) https://git.io/v9e3O
<gchristensen>
I wish this aarch64 box had a faster cpu :(
<FRidh>
pie_: do you happen to be familiar with wrapping C++ code?
<pie_>
FRidh, no :/
<pie_>
is there any way to solve this that isnt really involved? :(
<clever>
pie_: use a bash script that wraps python, and sets up LD_LIBRARY_PATH=${glfw}/lib
im_ferris has joined #nixos
<im_ferris>
I have the plasma5 desktop but can't figure out how to control volume, is there something I'm missing?
ThatDocsLady is now known as ThatDocsLady_afk
<goibhniu>
im_ferris: just a guess ... have you enabled pulseaudio?
cpennington has joined #nixos
drasich has joined #nixos
<im_ferris>
goibhniu, yes I just did that. However when I attempt to use the audio volume applet I get: "org.kde.plasma.private.volume" is not installed
<im_ferris>
goibhniu, also, thank you for your help :)
<engblom>
When trying to install nixos to zfs root I get this:
<engblom>
Failed assertions:
<engblom>
- ZFS requires config.networking.hostId to be set
<goibhniu>
im_ferris: hrm ... have you restarted the desktop?
<im_ferris>
goibhniu, Nope! Good point. I'll do a reboot now and pop back in a minute.
im_ferris has quit [(Quit: Leaving)]
pie_ has quit [(Ping timeout: 245 seconds)]
<ToxicFrog>
engblom: the problem is exactly what it says on the tin. ZFS requires a hostID and Nix won't automatically set one.
<goibhniu>
im_ferris: awesome, lucky guess! You're most welcome
<sphalerite>
engblom: I guess you meant ToxicFrog and not me, but hey. Add networking.hostId = "value here"; to your configuration.nix.
carlosda1 has joined #nixos
<engblom>
Sorry, yes I meant ToxicFrog
jekor has joined #nixos
<Svarog>
Hi all. If I want to cache a bunch of packages so they're not installed but are kept up to date and also won't be garbage collected if I do nix-collect-garbage, what's the best approach for doing this?
<Svarog>
Using nix-instantiate to create an environment with all those packages?
<Svarog>
Or is there a better way?
carlosda1 has quit [(Ping timeout: 260 seconds)]
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/v9eZo
<NixOS_GitHub>
nixpkgs/master d15f26e Jörg Thalheim: dino: init at unstable-2017-04-20
acarrico has quit [(Ping timeout: 260 seconds)]
takle has quit [(Remote host closed the connection)]
reinhardt has quit [(Quit: Leaving)]
<im_ferris>
Svarog, as far as I know nix-instantiate is your best option, though this isnt' something I'm super familiar with.
byteflame has joined #nixos
griff_ has joined #nixos
ThatDocsLady_afk is now known as ThatDocsLady
acarrico has joined #nixos
im_ferris has quit [(Ping timeout: 240 seconds)]
byteflame has quit [(Ping timeout: 255 seconds)]
hooo has joined #nixos
<hooo>
guys, why should I learn some weirdo language just to use nix?
<goibhniu>
hooo: if you find the features compelling enough
<benzrf>
hooo: well, if you don't want to, you could use guix... :)
<hooo>
I dont really like to use gnu software
<benzrf>
ok then
<FRidh>
hooo: how would you imagine something like Nix without an expression language?
<hooo>
it uses scheme APIs... ugh
<hooo>
it's always the same with these smarty pants developers
<hooo>
you just have to use haskell-tier languages, dont you
<hooo>
FRidh, I dont have to imagine anything, you do. Make it work with json, I dont care how
ertes has quit [(Ping timeout: 255 seconds)]
<exarkun>
FRidh: Surely Nix could work with any one of a wide range of existing languages
<hooo>
of course it could, but then how can they stroke their ego and feel smart all day
<hooo>
#RANT
<benzrf>
hooo: json isn't a language
<benzrf>
it's a data format
<benzrf>
you can't write functions in it
<exarkun>
The Nix language itself doesn't seem to be a particularly interesting part of the Nix ecosystem.
<exarkun>
So far my experience is that it's more a barrier than a feature. It's a new thing to learn, it's very limited, none of my existing tools work with it.
iyzsong has joined #nixos
<FRidh>
exarkun: absolutely, see guix. But one still needs a language.
<benzrf>
hooo: this is a little like asking to make emacs work with json instead of lisp
<benzrf>
you could do it i guess
<exarkun>
FRidh: For sure.
<benzrf>
but that gets rid of what makes it interesting
<hooo>
guix uses scheme, so it's another toy project
<benzrf>
hmm, i think you're a troll
<dash>
hooo: Learning languages isn't much harder than learning to use any other kind of software
<FRidh>
benzrf: you know about jsonnet?
<benzrf>
FRidh: no, what's that?
<the-kenny>
I agree that nix isn't the nicest of all languages, it's a compromise. I personally would prefer scheme over nix, but for most people it's new in any case
<hooo>
ANd the reason why we dont just use javascript is..?
<dash>
hooo: the advantage of the nix language is that it allows saying just the things that nix expressions need
<hooo>
which anybody could immediately jump in and use?
<FRidh>
benzrf: its a declarative language which is expressed entirely within json format
<dash>
hooo: no
<exarkun>
hooo: There are probably some good reasons to stick with a functional language.
c0c0n3 has joined #nixos
* engblom
loves functional programming languages
<dash>
hooo: even if you knew JS, you'd still have to learn how nix derivations work, etc
<benzrf>
FRidh: oh, hah
<dash>
hooo: For the things worth doing with nix, nix is only a _little_ different from JS
<hooo>
exarkun, I dont care. If you require me to learn an entire new arcane language just to use your software, you *lost* already. I'm sorry that I'm the first person here to give you guys a reality check
<engblom>
hooo: I am at the moment evaluating if I should properly try nixos and the choice of language is not in any way affecting me. nix is at least as good as anything else as nix is specially made for its purpose and does not require a lot of space wasting "boiler plate" code
<FRidh>
benzrf: well, jsonnet is valid json, you just still need to interpret it.
<dash>
exarkun: see, even unmaintained blog posts are viewed with suspicion
<hooo>
maybe the first step is to rename either the language or the package manager to something other than Nix
* benzrf
smiles vacantly
<the-kenny>
oh well, I'm out.
<Biappi>
"Wednesday, July 23, 2014".. are there more recent "pills"?
<the-kenny>
Biappi: It's a series, and the stuff in there is still relevant.
<hooo>
this is so typical of open source development. You dont seem to care about real users at all. Nobody wants to learn yet another language just to install a freaking package
<Biappi>
the-kenny: oh. i see... i was looking around some time ago, and it's a bit difficult as a newbie to understand if an article is relevant or not
<engblom>
hooo: I do not want feed trolls like you, but even though I have not yet installed nix I can see advantages. When you have your nix configuration files, it is easy to make another install anywhere by just using the same few configuration files
<the-kenny>
Biappi: the nix-pills start at a very low level, they're showing the basics of nix and how derivations work etc. - to simply use nix, the manuals (nix, nixpkgs, nixos) are the best starting point
reinzelmann has joined #nixos
<Biappi>
thanks
<hooo>
ok I'm giving nix a change. I will right now download and install nix on centos and see if it works
c0c0n3 has left #nixos []
<benzrf>
i do kinda wonder though if you could get better nix adoption by providing a js frontend
<__Sander__>
hehe my blog post about asynchronous package management :D
<__Sander__>
incredible how many people believed me that it was planning to replace Nix :D
<hooo>
as suspected, nix doesnt even install correctly
<hooo>
this is the state of YOUR software that you expect me to spend my time on
<the-kenny>
hooo: nobody here expects you to spend your time on this software
mkoenig has joined #nixos
<hooo>
you do, you offer a download option
<sphalerite>
that's an offer, not an expectation or a request
simukis__ has joined #nixos
<sphalerite>
you see "warning: installing Nix as root is not supported by this script!" ? Stuff being unsupported does mean that you can't expect it to just work.
<sphalerite>
Anyway, you're clearly not the target audience of nix so stop wasting your time and ours :)
erasmas has joined #nixos
freusque has quit [(Quit: WeeChat 1.7)]
carlosda1 has joined #nixos
freusque has joined #nixos
zraexy has joined #nixos
reinzelmann has quit [(Ping timeout: 240 seconds)]
<freusque>
hello, i'm confused with user profiles
marsel has quit [(Ping timeout: 240 seconds)]
<freusque>
my path contains /nix/var/nix/profiles/default/bin
<freusque>
is this standard? (on NixOS)
<sphalerite>
Yes, it's the default profile which is affected when nix-env is used as root
<philipp[m]>
What is the command to rollback to a specific generation with nixos-rebuild?
nicknovitski has joined #nixos
carlosda1 has quit [(Ping timeout: 260 seconds)]
jensens has quit [(Ping timeout: 258 seconds)]
<philipp[m]>
Or do I have to reboot into an old system?
<NixOS_GitHub>
[nixpkgs] grahamc pushed 1 new commit to unstable-aarch64: https://git.io/v9eEf
<NixOS_GitHub>
nixpkgs/unstable-aarch64 e3a7d6e Graham Christensen: qemu: fixup systemWrapper
<gchristensen>
hooo: what doesn't work? -i hello? what happens if you try that?
<freusque>
hooo: it is understood you shouldn't type the "..." . that will install every package.
<gchristensen>
hmm maybe should remove the ... then
<hooo>
well it's in the quickstart
<hooo>
im just doing what the tutorial tells me to do
<gchristensen>
great point, hooo. I'll open up a bug report to fix it.
exarkun has left #nixos []
<Biappi>
when i tried to install nix i had a couple of doubts that i couldn't find in the documentation.. mostly because i think i was trying to hold nix from the wrong end... i thought of writing down an outline of a document i'd like to read, but i felt bad because i didn't want to arrogantly ask people from the project "that's the documentation i want, write it for me" :(
<ixxie>
gchristensen: out of curiousity, where is the manual hosted?
<gchristensen>
yes, you will. no, nix is not alpha. all software sucks
<the-kenny>
hooo: feel free to collect and report them, but with good instructions how to reproduce them.
<joepie91>
hooo: as somebody who speaks both JS (fluently) and Nix (to some degree) -- it would not be viable to use JS for writing package expressions, because of its lack of 1) lazy evaluation, 2) reliable static analyzability, and 3) ability to express Nix-specific types (that are rather important to making Nix expressions work intuitively). as an additional point, Nix is easier to learn and understand than most other languages (includiing JS) to somebody who
<joepie91>
doesn't already speak a language, so in that sense it's not necessarily a bad choice.
<hooo>
gchristensen, that's a terrible attitude to have when you are building software. "oh gee, who cares. Everybody has so many bugs lol!"
<gchristensen>
hooo: we do care, but I will not tolerate you being rude to our community
im_ferris has joined #nixos
im_ferris has quit [(Client Quit)]
<ixxie>
Biappi: I am also interested in helping out if you start such an effort, I am also relatively new to Nix so while I am not such super nixpert, I do have fresh in my mind what was challenging to me
<hooo>
So why is the garbage collector erroring out?
<hooo>
I'm literally just running the quickstart commands, so it's not like I'm doing arcane instructions here
dridus has joined #nixos
<hooo>
Why is a garbage collector necessary at all, deleting a package should delete it.
* ixxie
admires the patience everybody here has shown in the face of hooo's ungrateful, entitled and rude attitude.
<gchristensen>
ixxie: please don't make matters sworse
<ixxie>
sorry
<hooo>
Hey, I am doing free testing for you guys. This is real value you are getting for free, you should be thanking me
<gchristensen>
hooo: that isn't how open source works. we are working together, you are not working for us. we are not working for you.
<gchristensen>
you're not doing us a favor by using nix
<the-kenny>
hooo: we'll thank you when you report these bugs with a description how to reproduce them in our bug tracker. Just dropping cli output in this channel doesn't help.
<hooo>
Companies pay real money to get their software tested, I'm doing it for free right now
<joepie91>
hooo: Nix isn't a company.
<hooo>
the-kenny, it does becasue that cli output contains the cmd line used to produce the output
<the-kenny>
hooo: so? That isn't everything.
<ixxie>
to answer hooo's question: garbage collection is necessary because Nix allows rollbacks, it's one of its best features
<gchristensen>
!m ixxie
<[0__0]>
You're doing good work, ixxie!
<the-kenny>
hooo: well you can give us root ssh access to your system if you want.
<the-kenny>
That should be acceptable I suppose. But post that in the public bug tracker too.
<hooo>
ixxie, okay but how far back can I roll back?
<hooo>
why should there be a garbage collector, just let me set the history
<hooo>
then it should do it automatically
<gchristensen>
hooo: as far back as you haven't garbage ollected
<ixxie>
hooo: as far back as you didn't GC :P
<hooo>
exactly, this should be automatic
<ixxie>
it can be automatic
<ixxie>
I have mine set at 30d
<ixxie>
day
<gchristensen>
interesting feature idea, you could implement that
<hooo>
I'm busy
<earldouglas>
ixxie: How'd you do that, just a cron job?
<joepie91>
earldouglas: there's a setting for it, I believe
<gchristensen>
hooo: ok, just an fyi: I'm wearing thin on patience.
<joepie91>
earldouglas: hm, or I thought there was. I can find the "gc automatically" setting, but not the "delete old generations" setting..
<makefu>
ixxie: wow `nixpert` never heard that one before :D
<earldouglas>
I have a nixops-managed Jenkins box and I'd like to move the deployment process from my workstation to just a job on that box. Is it risky to run nixops deploy from the very instance that is being deployed to?
<earldouglas>
It seems like it'd be fine, but I don't want to create some kind of Nixception.
<hooo>
so I take it that nix doesnt think that the linux filesystem tree hierarchy has value? Nix doesnt install anything into /usr/bin and /usr/local/bin etc.
<gchristensen>
earldouglas: mmm yes not quite recommended, because a deploy may want to reboot (ex: new kernels)
<gchristensen>
hooo: correct
<earldouglas>
Ah, good point.
<gchristensen>
Nix isn't FHS compliant
<joepie91>
hooo: the FHS (which is what you're thinking of) is designed around a system with global, mutable state
<the-kenny>
(it isn't for multiple reasons, one being multi-user package management, others being purity)
<joepie91>
hooo: this is fundamentally incompatible with how Nix works, and the guarantees it aims to provide
<gchristensen>
copumpkin: ping?
<hooo>
ok, so could I replace yum with nix somehow? why if no?
<the-kenny>
likely, but you'd need to learn quite a bit of nix for it :)
<gchristensen>
yes by using nixos, no without because nix on other distros won't manage services
<hooo>
gchristensen, what do you mean by "manage services". Cant you write a compatability layer so that nix automatically uses centos packages?
<gchristensen>
no
<joepie91>
hooo: another important consideration is that because Nix is completely differently designed from yum etc., your Nix-installed applications will not use dependencies installed by not-Nix
<hooo>
does nix work off source packages or binary?
<sphalerite>
if I want to use nixops from a local checkout, would the right way to install it be nix-env -iE 'with import <nixpkgs> {}; nixops.overrideAttrs (o: {src = lib.cleanSource /path/to/checkout;})' ?
<the-kenny>
source, but there's a binary cache
<joepie91>
hooo: this isn't a problem specific to Nix, btw, but applies to systems with differing technical guarantees in general; you cannot combine a system with weak guarantees with a system with strong guarantees, without weakening the strong-guarantees system
<gchristensen>
combined. please try reading the documentation and searching the internet, we are not google, and google is a very good first line for answering your questions, hooo.
<joepie91>
hooo: in this case, Nix provides stronger guarantees than yum etc. do, and therefore a Nix-installed application cannot use yum-installed dependencies without weakening/losing the guarantees that Nix would normally provide.
<hooo>
everything I ask should be on the front page of nix, these are the most basic questions everyone has who wants to start using nix
<joepie91>
I do agree that the documentation is currently lacking :)
<gchristensen>
everyone else -- please don't coddle hooo by answering every question just because they criticized the project.
<joepie91>
gchristensen: after considering it a bit more, I'd suggest reverting the ban after 30m for a last chance to behave nicely, since he doesn't seem like an outright malicious troll, and re-banning immediately if it reoccurs - but that's up to you ofc :)
kahiru has joined #nixos
<NixOS_GitHub>
[nixpkgs] 7c6f434c pushed 2 new commits to master: https://git.io/v9eag
<NixOS_GitHub>
nixpkgs/master be7ce1b Vladimír Čunát: kdiff3: fix with git mergetool...
<NixOS_GitHub>
nixpkgs/master 3893332 Michael Raskin: Merge pull request #25059 from vcunat/p/kdiff3-git-mergetool...
k2s has joined #nixos
<unlmtd[m]>
ronny: I havent tried lately. are you on unstable? I cant find an issue for what iv experienced
nschoe has quit [(Quit: Program. Terminated.)]
mojjo has quit [(Ping timeout: 258 seconds)]
Svarog has quit [(Quit: Ex-Chat)]
<ronny>
unlmtd[m]: im on unstable
<unlmtd[m]>
ill update and try again
stepcut has joined #nixos
plumps_ has quit [(Ping timeout: 240 seconds)]
<NixOS_GitHub>
[nixpkgs] Mic92 closed pull request #25056: util-linux: fix path to umount in eject (staging...fix-eject-umount) https://git.io/vSjrL
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 2 new commits to staging: https://git.io/v9ewO
<NixOS_GitHub>
nixpkgs/staging 7e34a9c Linus Heckemann: util-linux: fix path to umount in eject
<sphalerite>
if I want to use nixops from a local checkout, would the right way to install it be nix-env -iE 'with import <nixpkgs> {}; nixops.overrideAttrs (o: {src = lib.cleanSource /path/to/checkout;})' ?
seanz has joined #nixos
<sphalerite>
Well, apparently not, because it doesn't work... What is the right way?
<gchristensen>
joepie91: yeah thats my fairly standard SOP
gal_bolle has quit [(Quit: Konversation terminated!)]
<joepie91>
gchristensen: the hooo ban is still there btw :P not sure if that was intentional this time
<gchristensen>
it hasn't been 30min
<joepie91>
oh, indeed
carlosda1 has joined #nixos
<niksnut>
docker renamed to moby...
<niksnut>
I sense a tedious rename operation coming up
<joepie91>
niksnut: that seems like brand suicide...
CMCDragonkai has joined #nixos
<gchristensen>
haha, yeah niksnut, a real pain
<niksnut>
joepie91: well, "Docker" still refers to the commercial offering
<simpson>
niksnut: I say that we introduce aliases and mark the old names as deprecated.
<simpson>
Maybe we should wait a couple days to see if they change their mind and go with another name~
pbogdan has joined #nixos
<niksnut>
or we do nothing
Itkovian has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
carlosda1 has quit [(Ping timeout: 260 seconds)]
<gchristensen>
seems they're trying to make moby sound super unstable so people pay for their commercial thing
<NixOS_GitHub>
[nixpkgs] vcunat pushed 1 new commit to release-17.03: https://git.io/v9eoB
<NixOS_GitHub>
nixpkgs/release-17.03 c558d09 Vladimír Čunát: kdiff3: fix with git mergetool (#25059)...
<gchristensen>
"Moby is NOT recommended for:Application developers looking for an easy way to run their applications in containers. We recommend Docker CE instead.Enterprise IT and development teams looking for a ready-to-use, commercially supported container platform. We recommend Docker EE instead.Anyone curious about containers and looking for an easy way to learn. We recommend the docker.com website instead." "Moby is
<gchristensen>
recommended for anyone who wants to assemble a container-based system, this includes:Hackers who want to customize or patch their Docker build"
<simpson>
gchristensen: As pointed out elsewhere, this appears to be a brand consolidation.
<niksnut>
yes, moby is for "container enthusiasts"
<simpson>
Seems like a strange thing to be enthused about~
<FRidh>
I'm working on bindings for libnixutil and libnixstore and got /nix/store/5qj4r6ifw05gskp66aimmgsphlqbwfkk-nix-1.11.8-dev/include/nix/types.hh:9:28: fatal error: boost/format.hpp: No such file or directory
k2s has quit [(Remote host closed the connection)]
<FRidh>
should the nix expression for nix not propagate this as build dependency?
<simpson>
I cannot help but remember when I gave a Nix talk here in Portland last year; a Docker talk followed mine and the embarrassed speaker said that he was jealous of the tools I showed off.
<niksnut>
FRidh: Nix doesn't depend on boost, it includes a copy of boost/format
<simpson>
Great phrase, "not industrial-strength like that Nix stuff"
<niksnut>
heh nice
civodul has quit [(Quit: ERC (IRC client for Emacs 25.1.1))]
ThatDocsLady has quit [(Quit: Arma-geddin-outta-here!)]
kahiru has joined #nixos
<FRidh>
I see now, thank you.
jensens has joined #nixos
<sphalerite>
haha, that's great
thetet has joined #nixos
<freusque>
is there a way to show the dependent packages based on the store path?
<sphalerite>
I think you can install stuff for root only (might be wrong though) by passing -p /nix/var/nix/profiles/per-user/root to nix-env, but I'm not sure about that
<freusque>
so I have the answer to my nightmare, thanks! :-)
<freusque>
It's a strange logic no? there are system installed packages available for every user
<freusque>
and the root-installed packages are also for every user
<freusque>
however these have precedence over system packages
<freusque>
the particular situation is that I was using vim_configurable
<freusque>
and the changes wouldn't be reflected for the users
<sphalerite>
Yeah, I don't think it's a good behaviour either
<sphalerite>
there is probably a reason for it, but I'm not aware of it
<joepie91>
simpson: I generally find that 'containers' are, uh, over-hyped
<joepie91>
that's not to say that there's no utility to them or anything
<joepie91>
but people seem to be using them like the hammer to every nail
<joepie91>
even the things that just look like nails but really are screws
<sphalerite>
+1
<joepie91>
the matter is not helped by the amount of people who genuinely believe that Docker etc. provide secure isolation against malicious users/code :/
ilyaigpetrov has joined #nixos
<sphalerite>
Surelt it's better than running them without any isolation?
<simpson>
Yes, but it's far inferior to just changing the rules of the game, e.g. Capsicum.
Itkovian has joined #nixos
<sphalerite>
what's capsicum? Besides peppers?
<simpson>
It's a capability-safe container. Instead of syscalls, a Capsicum application has to route all access to the outside world through a warden which can dynamically limit the authority of the application.
<gchristensen>
knowing simpson, it has to do with "capabilities"
<sphalerite>
Basically taking the pledge principle further?
<simpson>
With hindsight, yes. pledge() was developed outside of capability theory, though.
Guest87926 has joined #nixos
<simpson>
The idea is simple to grok if you already know something like Nix. Nix embodies the Principle of Least Authority in build environments; if you don't have a dependency on a package, you can't access that package.
freusque has quit [(Quit: WeeChat 1.7)]
<simpson>
Capabilities are POLA, but structurally baked into the system in an inescapable way. Imagine if the *only* way to get at a Nix package were via dependency and you couldn't just access /nix/store directly.
Itkovian has quit [(Ping timeout: 252 seconds)]
aneeshusa has joined #nixos
davidak has joined #nixos
<sphalerite>
sounds nice
pbogdan_ has joined #nixos
aneeshusa has quit [(Quit: WeeChat 1.7)]
Filystyn has joined #nixos
lsix has quit [(Quit: Konversation terminated!)]
pbogdan has quit [(Ping timeout: 240 seconds)]
jensens has quit [(Ping timeout: 240 seconds)]
thetet has quit [(Quit: Leaving.)]
tommyangelo has quit [(Ping timeout: 240 seconds)]
digitus has joined #nixos
aneeshusa has joined #nixos
athan has joined #nixos
cpennington has quit [(Ping timeout: 240 seconds)]
<athan>
Have yall heard of snapcraft?
<athan>
it sounds like they ripped off from nix :x
<Yaniel>
athan: have you heard of docker, flatpak or appimages?
<simpson>
athan, Yaniel: Have y'all ever heard of Smalltalk images?
<Isorkin>
http://nixpaste.lbr.uno/J3lE2xkX?nix How to fix error - sudo nixos-rebuild test - cannot coerce a set to a string, at /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs/lib/strings.nix:442:44 | nix-build ~/mypkgs -A php56-libressl - normal work
carlosda1 has quit [(Ping timeout: 268 seconds)]
dmj` has quit [(Quit: moby)]
cpennington has joined #nixos
<NixOS_GitHub>
[nixpkgs] ttuegel pushed 1 new commit to master: https://git.io/v9ep5
<NixOS_GitHub>
nixpkgs/master f8189e6 Thomas Tuegel: dropbox: 23.4.19 -> 24.4.16
Guest36040 has quit [(Ping timeout: 258 seconds)]
endformationage has joined #nixos
<sphalerite>
How do people using nixops manage state?
chakerbenhamed has quit [(Ping timeout: 240 seconds)]
phreedom has joined #nixos
pbogdan has joined #nixos
<peacememories>
hi everyone
<peacememories>
i'm currently writing my first expression for a nix package, and i've got a few questions.
<dash>
peacememories: like "will it always hurt this much?"
<dash>
peacememories: give it a couple weeks and you'll be fine
<peacememories>
no, more like "how would i make multiple versions of a package available" :P
Guest87926 has joined #nixos
<dash>
peacememories: ok. shouldn't be too hard
<peacememories>
also, it's a simple make-based program with objective c, so i'm trying to find an example of the former, and the necessary dependencies for the latter^^ it's for macosx
<dash>
peacememories: if the build process is just './configure; make; make install' you don't have to give any special instructions in the derivation, just the name and the buildInputs
<Isorkin>
help. how to build php with libressl?
<gchristensen>
peacememories: if you don't get good help here, you may end up having a bit more success in ##nix-darwin
<dash>
oh right, that one
<dash>
peacememories: by versions you mean same project, different upstream source versions?
<peacememories>
gchristensen thanks for that pointer, i'll start idling in that channel too then :) though i'm confident the help i'm getting here is good too
<peacememories>
dash yes, exactly. that's more of a general question, not for this package specifically
<gchristensen>
yeah, sometimes darwin questions get buried in other topics. just in case :)
<dash>
peacememories: the gist is that you write a function that takes the source as an arg and returns a derivation
<dash>
peacememories: then you call it with each source that you want to build
<hodapp>
hm. I wonder if I should bother to go fix my PR on the R package "imager"
batdog has quit [(Remote host closed the connection)]
<hodapp>
I'm not sure why it wasn't accepted but I think it's because the build failed (but it failed for a transient network I/O reason it looks like)
<hodapp>
but I'm not using imager anymore, because I shitcanned the R stuff I was doing that used it
<hodapp>
now I can start my next PR, to add optional postgresql support to mapnik
cransom has quit [(Remote host closed the connection)]
cransom has joined #nixos
* gchristensen
waves to Criena[m]
<gchristensen>
.e..
<gchristensen>
cransom:
<NixOS_GitHub>
[nixpkgs] Hodapp87 opened pull request #25063: mapnik: add optional PostgreSQL dependency for PostGIS input (master...mapnik_postgis) https://git.io/v9vLh
<cransom>
achievement unlocked. crashed my irc client while not even looking at it.
<hodapp>
hah
<gchristensen>
lol
Itkovian has joined #nixos
bennofs1 has joined #nixos
teodorlu` has joined #nixos
<sphalerite>
Nix is a piece of software that does so much stuff right I'm fairly convinced it's magic. Does anyone know any other magical software like that, that's just so well done that it's incredibly satisfying to use?
<hodapp>
every compiler ever.
<hodapp>
oh, "incredibly satisfying to use", nevermind
<hodapp>
...GHC then
<dash>
sphalerite: emacs
<hodapp>
emacs certainly... does so much stuff
<dash>
(that's more "climbing a mountain then wrestling a bear" satisfying rather than "tasty snack" satisfying)
<hodapp>
the bear is on fire.
<hodapp>
so is the mountain.
<sphalerite>
hahaha
<dash>
hodapp: nah you're thinking of #emacs the irc channel
<sphalerite>
I'm a vim user for now
<hodapp>
and for the record, the only reason I consider it okay for me to talk smack about Emacs is because I use it extensively
<dash>
sphalerite: give spacemacs a try, it's interesting
<bennofs1>
the idea of emacs feels very nice (being able to easily customize your editor and a fluid dev environment for elisp). but there's a lot of cruft that accumulated over the years
<dash>
sphalerite: (emacs with vim keys)
<dash>
bennofs1: yes, that's part of what makes it good though
<hodapp>
how extensively? most of my code editing and debugging, almost all of my notes and bookmarks (org-mode), most of my writing (LaTeX and markdown and the like), and also all of my time-tracking and consulting invoices.
<teodorlu`>
Spacemacs seconded. Writing this from Spacemacs.
<sphalerite>
bennofs1: my vim feels like it's cruft with layers of cruft on top soooo...
<dash>
i'm glad to see that people are still writing new editors, i should try out kakoune some time
Mutter has joined #nixos
<bennofs1>
sphalerite: I have hopes for neovim
<hodapp>
but I do like that NixOS abstracts the pieces of about 50 PL-specific package managers
<sphalerite>
err, I meant neovim :p
ryanartecona has quit [(Quit: ryanartecona)]
<dash>
hodapp: i feel that way so strongly i chose nix as the package manager for a programming language i helped develop
<hodapp>
dash: what language?
* bennofs1
is currently trying to remove the cruft that is Xorg from his DE
<sphalerite>
bennofs1: wait, so where do the vim keybindings come from?
<bennofs1>
sphalerite: well, that's just "configuration" provided by some core layers
<sphalerite>
ah ok
<bennofs1>
sphalerite: in fact, I believe spacemacs does support emacs-like keybindings as well
ixxie has quit [(Quit: Lost terminal)]
nothing has quit [(Ping timeout: 260 seconds)]
cheecheeo has joined #nixos
tommyangelo has joined #nixos
dmi3y has joined #nixos
<sphalerite>
neat
hamishmack has quit [(Quit: hamishmack)]
ravloony has joined #nixos
<jophish>
hmm, I wonder why a minimal install needs spidermonkey
<jophish>
probably for w3m
<jophish>
but why that?
<avn>
jophish: for polkit probably
<jophish>
I wonder if that can be omitted
tommyangelo has quit [(Ping timeout: 260 seconds)]
iyzsong has quit [(Ping timeout: 255 seconds)]
ilyaigpetrov has quit [(Quit: Connection closed for inactivity)]
<jophish>
avn: I think it was the manual. forcing nixosManual.enable to false makes the build not rely on spidermonkey
marsel has quit [(Ping timeout: 258 seconds)]
AllanEspinosa has joined #nixos
<ekleog>
Hey! Just trying to get some feedback wrt. https://github.com/NixOS/rfcs/pull/12 ; as it has been open for almost two weeks without a single comment?
<ekleog>
(RFC about declarative virtual machines in configuration.nix)
acowley_away has quit [(Ping timeout: 260 seconds)]
aneeshusa has quit [(Client Quit)]
acowley_away has joined #nixos
<blogle>
how do I override some of the arguments to a buildInput in my default.nix?
<Mateon2>
Hi, which package provides C headers for the Lua language? I want to package an app that depends on Lua at build time.
<dash>
Mateon2: 'lua5' probably
<Mateon2>
Well, let me try. I tried installing these packages globally before but failed due to incorrect priorities
<hodapp>
how does that "foo ? null" idiom in the arguments of a derivation work anyway? 'foo' by default is null but can be overriden to something else?
<dash>
Mateon2: don't install it, put it in buildInputs
takle has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/v9vlg
<NixOS_GitHub>
nixpkgs/master a76841e Vincent Laporte: asymptote: 2.40 -> 2.41
<dash>
hodapp: yes, it's optional-parameter syntax for functions
<Mateon2>
dash: Yeah, I tried running the makefile in my shell, now I'm writing the nix file. I dislike how much boilerplate there is to Nix
<dash>
Mateon2: ???
<dash>
there's, like, almost no boilerplate
<dash>
one line if you're building outside of nixpkgs
<tjg1>
is there a way to check what caused a package to be installed as a dependency?
<hodapp>
dash: but is one still 'overriding' to do that?
<hodapp>
I guess that's a semantical matter that doesn't matter much
<tjg1>
my server ended up installing a lot of gtk stuff for some reason
<Mateon2>
dash: Oh... I see the issue. I was editing the file in the old location (before creating a folder and using default.nix)
<Mateon2>
Sorry
carlosda1 has joined #nixos
<tjg1>
is it normal for environment.noXlibs to cause a lot of stuff to be compiled from source?
<dash>
Mateon2: <3
Sindriava has joined #nixos
<Mateon2>
Okay, I've gotten further along, but I'm now stuck again. The package needs X11/extensions/XShm.h to build, but I can't find it (and libxshmfence doesn't provide it)
<dash>
Mateon2: i bet it's in libxext
<dash>
er libXext
carlosda1 has quit [(Ping timeout: 260 seconds)]
<Mateon2>
dash: How can I solve these sorts of issues, if packages.html on the nixos website doesn't find the needed package?
<Mateon2>
Solve them myself, I mean
<dash>
Mateon2: do what i did, train for ten years with the unix monks in their mountaintop hideaway
reinzelmann has quit [(Quit: Leaving)]
* hodapp
thwaps dash
<NixOS_GitHub>
[nixpkgs] FRidh opened pull request #25065: binder and pybind11 packages (master...binder) https://git.io/v9v06
isidore has joined #nixos
simukis__ has quit [(Ping timeout: 260 seconds)]
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/v9v0b
<NixOS_GitHub>
nixpkgs/master 0fcc6ca Vincent Laporte: ocamlPackages.menhir: 20170101 -> 20170418
takle_ has joined #nixos
<jophish>
gchristensen: I'd like to rent a server to compile some armv7l-linux nix expressions. What can you recommend I do?
takle has quit [(Read error: Connection reset by peer)]
byteflame has quit [(Ping timeout: 260 seconds)]
bennofs1 has quit [(Quit: WeeChat 1.6)]
<gchristensen>
oof armv7l...
<gchristensen>
that's 32b right?
<jophish>
yeah
pbogdan has quit [(Quit: leaving)]
<jophish>
I'm compiling things with qemu-user at the moment, I've hit a couple of bugs trying to build armv7l-multiplatform-image
<jophish>
I've got clever's not-os built though, and will try and put that on a real board tomorrow
<jophish>
however it'd be nice to not have to use that board as a build slave
<blogle>
uh oh, any one know how to fix this?
griff_ has quit [(Quit: griff_)]
<blogle>
Cannot create package registry file
<gchristensen>
one sec, jophish
<blogle>
sorry that error got truncated
<gdl>
in my slim.log i have just this line "slim: waiting for X server to begin accepting connections."
<jophish>
thanks, gchristensen
<blogle>
CMake Warning at cmake/ConfigGen.cmake:37 (export): Cannot create package registry file: /homeless-shelter/.cmake/packages/Caffe/3127960760b8be6c740fad72674e55bd No such file or directoryCall Stack (most recent call first): CMakeLists.txt:121 (caffe_generate_export_configs)
byteflame has joined #nixos
<gchristensen>
I don't know of anyone renting big ol' armv7 boxes, or any 32b boxes
<jophish>
I think clever mentioned something about running armv7 builds on aarch64
dmi3y has quit [(Quit: dmi3y)]
<gchristensen>
so the cavium thunderx's (the only really commercially available aarch64 cpus) aren't capable of running 32b so they have to be emulated
<jophish>
oh :(
<gchristensen>
and you'd be better off running a 32b emulator on fast x86 cores
<jophish>
that's a pain
imbeemo has quit [(Quit: WeeChat 1.7)]
takle_ has quit [(Read error: Connection reset by peer)]
takle has joined #nixos
ravloony has quit [(Ping timeout: 260 seconds)]
deepwater has joined #nixos
nckx has quit [(Quit: restarting my GuixSD server)]
nckx has joined #nixos
nckx has quit [(Client Quit)]
nckx has joined #nixos
Filystyn has quit [(Quit: Konversation terminated!)]
cpennington has quit [(Remote host closed the connection)]
acowley is now known as acowley_away
jeremejevs has quit [(Quit: Connection closed for inactivity)]
<steveeJ>
how/when is the rc file cleaned up by nix-shell? I can't find anything in the code, but I can't find the rc file either :-D
<NixOS_GitHub>
[nixpkgs] NeQuissimus pushed 2 new commits to master: https://git.io/v9v6f
<NixOS_GitHub>
nixpkgs/master fabfec0 Tim Steinbach: openjdk: 8u121-13 -> 8u131-11
<NixOS_GitHub>
nixpkgs/master 75b4bec Tim Steinbach: Merge pull request #25049 from NeQuissimus/openjdk_8_131...
<gdl>
actually xsession does not find xmonad
byteflame has quit [(Ping timeout: 260 seconds)]
<gdl>
it's normally enough to have services.xserver.windowManager.xmonad.enable = true right ?
MercurialAlchemi has quit [(Ping timeout: 255 seconds)]
carlosda1 has joined #nixos
<earldouglas>
gdl: I also have services.xserver.windowManager.default = "xmonad" and services.xserver.desktopManager.default = "none"
byteflame has joined #nixos
carlosda1 has quit [(Ping timeout: 260 seconds)]
byteflame has quit [(Ping timeout: 240 seconds)]
byteflame has joined #nixos
<gdl>
earldouglas: nope :( still the same
<earldouglas>
Shoot, it's been a while since I configured that, so I don't remember why I chose those settings.
<earldouglas>
I also have services.xserver.desktopManager.xterm.enable = false
<gdl>
i didn't change my settings actually, just upgraded
<earldouglas>
Ah
isidore has quit [(Quit: WeeChat 1.7)]
blogle has quit [(Quit: Page closed)]
<gdl>
it's a bit weird because xmonad is installed but login throws me back to lightdm and log says "Window manager 'xmonad'' not found" and "Desktop manager ... 'none' not found"
<earldouglas>
Shot in the dark, but does it help if you delete your xmonad binary and let it recompile?
<earldouglas>
i.e. rm ~/.xmonad/xmonad-x86_64-linux
<gdl>
yeah, i already tried :)
<earldouglas>
How about `which xmonad`?
<steveeJ>
O
<hodapp>
does the CI exercise optional parameters or something? I was looking at the failed build log on https://github.com/NixOS/nixpkgs/pull/25063 and surprised to see that it was building the postgis stuff in mapnik, when that should be disabled by default (with the option I just added)
ryanartecona has quit [(Quit: ryanartecona)]
sigmundv__ has joined #nixos
<gdl>
which xmonad gives me the path to the binary, resolving to /nix/store/.../bin/xmonad
<earldouglas>
Well, as the tree said to the lumberjack, I'm stumped.
<earldouglas>
I wonder if putting the full path in services.xserver.windowManager.default would help.
thebored has quit [(Ping timeout: 258 seconds)]
<earldouglas>
On my system, which xmonad points to the /run/current-system/sw/bin/xmonad symlink.
justbeingglad has joined #nixos
justbeingglad has left #nixos []
alx741 has quit [(Quit: alx741)]
alx741 has joined #nixos
filterfish has joined #nixos
AllanEspinosa has quit [(Ping timeout: 258 seconds)]
filterfish has quit [(Ping timeout: 258 seconds)]
<NixOS_GitHub>
[nixpkgs] matthewbauer opened pull request #25066: Add Darwin as platform to various "broken" packages that actually build (master...less-darwin-eval-errors) https://git.io/v9vMR
hiratara has quit [(Ping timeout: 260 seconds)]
thebored has joined #nixos
hiratara has joined #nixos
<NixOS_GitHub>
[nixpkgs] tohl opened pull request #25067: bump sbcl and stunnel (master...master) https://git.io/v9vSf
JagaJaga has quit [(Ping timeout: 258 seconds)]
gdl has quit [(Quit: Page closed)]
mkoenig has quit [(Remote host closed the connection)]
ryanartecona has joined #nixos
mkoenig has joined #nixos
dridus has quit [(Quit: znc? wassat?)]
byteflame has quit [(Ping timeout: 260 seconds)]
byteflame has joined #nixos
Itkovian has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
carlosda1 has joined #nixos
civodul has quit [(Quit: ERC (IRC client for Emacs 25.1.1))]
byteflame has quit [(Ping timeout: 260 seconds)]
carlosda1 has quit [(Ping timeout: 240 seconds)]
takle_ has joined #nixos
takle has quit [(Read error: Connection reset by peer)]