<ryantrinkle>
growpotkin: i think hnix is not ready for primetime yet, unless you're interested in contributing, possibly heavily, to it
<LnL>
making your own man page with extra modules probably wouldn't be that hard
<ryantrinkle>
(i'm one of the maintainers)
<LnL>
but I have no idea
<Growpotkin>
LnL: any leads on where to start?
pkx3 has quit [Read error: Connection reset by peer]
<Growpotkin>
ryantrinkle: It seems like a really cool project, and one that I would definitely like to contribute to. I need to find a few examples to get my feet wet with
<LnL>
infinisil: ^ we talked about that a while back IIRC
pkx3 has joined #nixos
<Growpotkin>
it seems like those had already been enabled. Maybe it wants me to include my modules in a specific way. Right now I just have them as an import. Maybe it wants them as an override?
<ryantrinkle>
growpotkin: well, at this point the focus is on being able to evaluate all of nixpkgs
<ryantrinkle>
we're not quite there yet :)
pkx3 has quit [Read error: Connection reset by peer]
<ryantrinkle>
so the best way to contribute would be to find a discrepancy with the main nix interpreter and then make hnix work correctly
<ryantrinkle>
there are some in the issues on github, as well
<ryantrinkle>
and adding test cases is always helpful
<Growpotkin>
Yeah I mean it would be easy enough to read them out of a generated man page. I am sure there is some nix expression that already does this exact thing, finding it is the problem haha
<obadz>
growpotkin: why would "man configuration.nix" not include options you've added?
<Growpotkin>
excellent question, I'm not sure why they are left out.
<obadz>
did you regenerate the manual (which should happen when you nixos-rebuild switch)
<Growpotkin>
Perhaps the way I am including them in my conf lets them get evaluated and used, but are skipped when generating docs
<Growpotkin>
yeah I have rebuilt and switched
<obadz>
meaning you did not commit them to nixpkgs?
<Growpotkin>
no I keep my added packages and modules in subdirectories of my /etc/nixos and just import them as it suggests in the manual
<Growpotkin>
but I imagine i need to add them as overrides to nixpkgs or something to have them documented
<Growpotkin>
or else be a real big boy and start maintaining my own local version of nixpkgs... which I am not particularly interested in doing.
pkx3 has joined #nixos
astronavt has quit [Read error: Connection reset by peer]
<obadz>
growpotkin: I don't know if there's a way to feed your local modules in the manual as things stand now but I'd think it's not impossible with some surgery..
<bgamari>
gchristensen, does it matter what you are ls'ing?
<obadz>
gchristensen: any mounted filesystems in the directory you're doing ls in?
<bgamari>
or is *any* ls invocation taking this long?
<gchristensen>
bgamari: if I re-ls the dir, it is fast -- if I `ls` another dir, it is slow -- hanging on getdents
<bgamari>
hmm
<bgamari>
gchristensen, I would start with `perf record ls`
<bgamari>
or perhaps even just `perf top`
<gchristensen>
getdents64* -- the system in general is extremely slow -- kernel compiles take 10hrs then time out. it does about 1 "stripping FHS paths in `./drivers/video/Makefile'..." every few seconds.
<bgamari>
yikes
* bgamari
has had good luck using PMUs on the ARM box, by the way
<gchristensen>
PMUs?
<Mic92>
performance counter
<Mic92>
... units
<Mic92>
better an ARM box then a VM imho.
pkx3 has joined #nixos
<bgamari>
right
<Mic92>
ah, the m stands for monitoring
<Mic92>
I read way too much code of perf both the kernel and the userspace part. This was not a pleasant experience.
* bgamari
is glad it exists; I'm glad I don't need to worry about how it's made
<gchristensen>
warning from perf top: Too slow to read ring buffer. :D
pkx3 has quit [Read error: Connection reset by peer]
<bgamari>
wow
<gchristensen>
`-c 5` fixed that up. now showing: __softirqentry_text_start
<gchristensen>
86.52% overhead on softircqentry_text_start
<bgamari>
gchristensen, does `watch -d cat /proc/interrupts` suggest any excessive interrupt rates
<gchristensen>
with so many CPUs I can't `watch` it :|
<bgamari>
hah
<bgamari>
right
<Mic92>
gchristensen: is the community builder?
<bgamari>
perhaps cat /proc/interrupts > a; sleep 5; cat /proc/interrupts > b; diff a b
<gchristensen>
no, hydra
<gchristensen>
oooo! I wonder if this could be a fstrim issue?
<Rusty1>
^
jomik has quit [Quit: Page closed]
<Mic92>
gchristensen: I am not sure, how fancy you want get there, but there some tools like ext4slower or funcslower in bcc: https://github.com/iovisor/bcc
<CMCDragonkai>
i don't think vboxsf works in NixOS atm
hiroshi has joined #nixos
pkx3 has quit [Read error: Connection reset by peer]
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/fpdls
<ashkitten>
hey, i'm trying to write a templated systemd service in my home-manager config but it says `error: invalid character '@' in name 'virtualbox-guest@.service.service'`
<simpson>
I'd say that if you can get the NixOS maintainer to agree, and you have a patch which you and they are happy with, then we should carry the patch and petition upstream to carry it too.
<__red__>
okay - when I see movement I'll let you know
<fresheyeball>
so now I have nixos and gnome3 on the wacom
<fresheyeball>
and now it crashes frequently
<gchristensen>
wow :D
<fresheyeball>
other than that everything seems to be working
<ldlework>
wait
<ldlework>
you have nixos running on a wacom tablet..?
<fresheyeball>
it's a wacom mobile studio pro
<fresheyeball>
windows made this very nice hardware usable
<ldlework>
oh that looks cool
<gchristensen>
anyone know if it is safe to ctrl-c fstrim?
<fresheyeball>
how can I investigate the crashes?
<fresheyeball>
in all seriousness I am not sure where to look
<fresheyeball>
it just crashes unexpectedly
<ekleog>
gchristensen: afaik fstrim only sends requests for trimming unused blocks and does only reading otherwise, so my rough guess would be yes, but…
<ekleog>
fresheyeball: anything in the logs?
<gchristensen>
I wish it would tell me something. anything. about progress.
<fresheyeball>
ekleog: what logs do I check?
<ekleog>
fresheyeball: journalctl -b -1
<Rusty1>
gchristensen: hdparm -I /dev/sdx
<fresheyeball>
Dec 12 19:25:53 tablet systemd-modules-load[441]: Failed to find module 'snd_pcm_oss'
<fresheyeball>
that might be it
<fresheyeball>
what that be?
jtojnar has quit [Ping timeout: 240 seconds]
talyz has quit [Read error: Connection reset by peer]
etu has quit [Read error: Connection reset by peer]
<ekleog>
driver for a sound card, most likely
<ekleog>
guess it shouldn't trigger a reboot
<ekleog>
anything at the end of these logs?
etu has joined #nixos
talyz has joined #nixos
<gchristensen>
Rusty1: what am I looking for here?
<fresheyeball>
I added snd_pcm_oss to the kernelModules
<ldlework>
how to use the stdenv autoconfHook?
<Rusty1>
gchristensen: that the controller is responding methinks
<__red__>
simpson: another possibility is changing telnet from inetutils to netkit
<__red__>
although that sounds a little more drastic
<simpson>
__red__: If this is a genuine security problem and we can patch it then we can and will do security backports.
astronavt has quit [Quit: Leaving]
<simpson>
Folks who are following the security process deserve to get a patch and not a completely-new subgraph to their dependency tree.
<gchristensen>
+1
<gchristensen>
patch it
<__red__>
simpson: gchristensen - the gnu inetutils maintainers appear to have been ignoring the reports, that's the issue. The PoC went public today in a hope of spurning a patch from them.
<gchristensen>
nobody has produced a patch?
<__red__>
gchristensen: I'm watching for a patch / revision bump. When I see it I'll reach out to the current maintainer with a PR
<__red__>
gchristensen: right - that's the problem. If there was a patch there'd be a PR already
liori has quit [Quit: leaving]
liori has joined #nixos
<fresheyeball>
LAME
<fresheyeball>
the buttons! there is not way to configure them!
elibrokeit has quit [Ping timeout: 252 seconds]
<fresheyeball>
is there a way in x to capture whatever key is pressed?
<{^_^}>
[nixpkgs] @ivan opened pull request #51925 → pythonPackages.Yapsy: 1.11.223 -> 1.12.0 and enable tests → https://git.io/fpdlA
SOO7 has quit [Ping timeout: 252 seconds]
yorick1 has joined #nixos
Swant has quit [Ping timeout: 600 seconds]
cyounkins has quit [Remote host closed the connection]
cyounkins has joined #nixos
SOO7 has joined #nixos
drakonis has joined #nixos
<jackdk>
Guest41637: how are you trying to invoke that?
<Guest41637>
jackdk: nix-build build.nix
cyounkins has quit [Ping timeout: 250 seconds]
<jackdk>
okay. So what that's going to do is load the file, see that it's a function, note that it can't auto-call it because the arguments have no default values, then give up
<jackdk>
let me see if I can find a rust example in nixpkgs, one sec
<fresheyeball>
what is the differnce between gnome and gnome on xorg?
<worldofpeace>
fresheyeball: 'GNOME' is using wayland and `GNOME on Xorg` is what it says
<jackdk>
Guest41637: What I usually do is put the package into its own .nix file, and then use default.nix to get a nixpkgs, and callPackage the specific package's .nix: https://pastebin.com/d0jPRjf8
<jackdk>
Guest41637: Also your CargoSha256 should probably have a lowercase c?
<Guest41637>
jackdk: I have no idea what the Sha actually is, the doc's said just put something there and run it, then correct it
o1lo01ol1o has joined #nixos
<jackdk>
neither do I. I mean that the key name is wrong - I think it should be cargoSha256
Havvy has joined #nixos
<Guest41637>
Thanks for catching that >.<
<ldlework>
do I have to restart or something to get openssh server going?
<ldlework>
I enabled did services.openssh.enable = true; and rebuilt
ryantrinkle has joined #nixos
o1lo01ol1o has quit [Ping timeout: 250 seconds]
<fresheyeball>
ok I learned something
<fresheyeball>
I think it's graphics drivers
<fresheyeball>
and this thing has an Intel Iris Graphics 550
<fresheyeball>
any idea what driver I should be using?
<Guest41637>
jackdk: Do you know if its normal for nix-build to warn `warning: dumping very large path (> 256 MiB); this may run out of memory` ?
<jackdk>
I've seen it from time to time. *shrug*
<Church->
fresheyeball: Two gpus in it?
<fresheyeball>
Church-: just one I think
<worldofpeace>
fresheyeball: are you using the intel one or modesetting?
<iqubic>
fresheyeball: Next time, use a paste service.
<worldofpeace>
they pasted like 5 things already. don't sweat it :D
<worldofpeace>
(to a service)
<fresheyeball>
I even warned so everyone could take cover
<fresheyeball>
don't want to much spam all over the face
nD5Xjz has quit [Ping timeout: 250 seconds]
Lears has joined #nixos
<worldofpeace>
fresheyeball: Could you also describe the "crashing" exactly? From one of your comments I though it was after interaction not a hard crash
ryantrinkle has joined #nixos
<fresheyeball>
the screen goes black suddenly
<fresheyeball>
and the device reboots
[Leary] has quit [Ping timeout: 268 seconds]
<fresheyeball>
Right now I think there are multiple scenarios and possibly multiple unrelated reasons
<fresheyeball>
crashes corrolate with the following:
<fresheyeball>
touching the screen (it will work fine for a few minutes, and then crash on touch)
<fresheyeball>
leaving gdm for x11 occationally crashes it
nD5Xjz has joined #nixos
<fresheyeball>
asking for a graphically intensive application like krita
<worldofpeace>
So you can actually start a GNOME session from gdm? Xorg too right?
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<fresheyeball>
yes
<fresheyeball>
except for the times where logging in on gdm crashes it
<worldofpeace>
I'm also postulating that perhaps a newer kernel might produce an interesting effect
<fresheyeball>
ack ! nutty
<fresheyeball>
ok trying that
<worldofpeace>
I'd probably go for the latest kernel btw
<fresheyeball>
ok trying latest
<fresheyeball>
rebuilding
<{^_^}>
[nixpkgs] @peterhoeg opened pull request #51926 → nixos-artwork: make wallpapers available to KDE → https://git.io/fpd83
<fresheyeball>
rebootin
<fresheyeball>
ok rebooted
<fresheyeball>
now we got to the desktop
<fresheyeball>
so we are in x11
<fresheyeball>
going to try and make it crash
<fresheyeball>
just chuggling along
<fresheyeball>
not crashed yet
<fresheyeball>
oop
<fresheyeball>
crash corroaltion I forgot to mention
<fresheyeball>
using termite
<fresheyeball>
geeze
<fresheyeball>
it's just hasn't crashed
<worldofpeace>
I think you might have lucked out on this one
<fresheyeball>
yay new kernel!
<fresheyeball>
everybody dance
<fresheyeball>
*doot doot* *doot doot*
<fresheyeball>
still trying to break it
<ekleog>
inb4 crash
<worldofpeace>
Also selecting a xorg or wayland session won't have any effect
<worldofpeace>
In 18.09 that is
<worldofpeace>
ekleog: Hah :D
<fresheyeball>
worldofpeace: why is that?
<fresheyeball>
what do you mean? do you think I can give wayland a shot realistically?
<worldofpeace>
fresheyeball: gnome wayland support has only recently (like maybe yesterday) landed in master. So you'll always be using xorg
<fresheyeball>
ok
<worldofpeace>
Also I'm not sure it would be functional for your device
<fresheyeball>
ok sweet
<fresheyeball>
yeah still no crash
<fresheyeball>
this is good
<fresheyeball>
so there is only one thing left
<fresheyeball>
the hardware buttons need to do things
<fresheyeball>
instead of doing no things
kvda has joined #nixos
lassulus_ has joined #nixos
yurb has quit [Ping timeout: 252 seconds]
<fresheyeball>
oo even the camera works
<fresheyeball>
and the graphics performance is really good
<worldofpeace>
fresheyeball: Some research could yield a solution or documented tweak for your hardware
<fresheyeball>
worldofpeace: what would you suggest?
<fresheyeball>
I only had one idea so far
<fresheyeball>
I tried xvn
<fresheyeball>
too see if key codes would pop out for them
<fresheyeball>
ekleog: gnome has the best ux for tablets I think
<ekleog>
I'm not going to argue about taste, but it's more a question of “does it crash?” than of “is it good?”
<ekleog>
if it doesn't crash then it's a gnome issue
<ekleog>
if it does then the gnome error is the byproduct of something else
<ekleog>
(in “gnome issue” I also include potential errors of packaging gnome in nixpkgs)
<ekleog>
so knowing whether it crashes with something else than gnome would likely be useful for debugging this
<worldofpeace>
fresheyeball: I'm wondering if it's an application you're interacting with. It could help to switch if you don't want to go straight to debug symbols and stacktraces
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<fresheyeball>
worldofpeace: ok
<fresheyeball>
I think I can get this one
<fresheyeball>
but I am truely lost on how to investigate the hardward so the buttons start working
<fresheyeball>
and the device is unsable without the buttons
ensyde has joined #nixos
<fresheyeball>
if you want to keep working this with me, it's hardware next I suppose
<worldofpeace>
I actually have to go. Though they're many people who are also helpful here, also in different time zones.
<fresheyeball>
worldofpeace++
<{^_^}>
worldofpeace's karma got increased to 9
<fresheyeball>
thank you so much
<fresheyeball>
it's been a wonderful and productive night thanks to you
<worldofpeace>
Last advice would be to take your issue one at a time. They may even correlate
kvda has joined #nixos
<worldofpeace>
peace :P
worldofpeace has quit [Quit: worldofpeace]
<{^_^}>
[nixpkgs] @Fuuzetsu opened pull request #51927 → ghc: Allow the use to pass extraBuildMk to append to mk/build.mk → https://git.io/fpd88
ensyde has quit [Ping timeout: 272 seconds]
fusion809 has joined #nixos
<fresheyeball>
ok
<fresheyeball>
anyone know how to investigate the hardware so I can make the buttons do things?
<puffnfresh>
fresheyeball: xinput
<puffnfresh>
then xinput test
rhalff has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @dotlambda pushed commit from @ivan to master « pythonPackages.Yapsy: 1.11.223 -> 1.12.0 and enable tests (#51925) »: https://git.io/fpd4k
<simpson>
ivan++
<{^_^}>
ivan's karma got increased to 1
<ivan>
my very first karma
<ivan>
simpson++
<{^_^}>
simpson's karma got increased to 2
<Guest41637>
Last Christmas I gave you my karma but the very next day you gave it away
kvda has joined #nixos
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
verite has joined #nixos
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
jonaswouters has joined #nixos
cyphase has quit [Ping timeout: 268 seconds]
Xal has quit [Ping timeout: 250 seconds]
kisik21 has left #nixos ["WeeChat 2.4-dev"]
cyphase has joined #nixos
elgoosy has joined #nixos
verite has quit [Quit: quit]
thc202 has joined #nixos
<Lisanna>
what's the most minimal derivation I can create just to use shellHook?
<Lisanna>
all the stuff I've tried with stdenv.mkDerivation is trying to force me to pass a meaningful value to "src", but all of the examples I'm looking at show stdenv.mkDerivation being used without setting src
<inf>
Hmmmm... I'm trying to install NixOS on some random Celeron N3450 fanless mini PC box with UEFI. systemd-boot seems to work fine, but I wanted to try grub on it, and it just hangs on boot displaying cursor (even before grub menu; right after "vendor" splash screen) - any suggestions on how to debug it?
Dagger2 has joined #nixos
<inf>
I used efiInstallAsRemovable at first, I'll try efibootmgr option in a second, but I'd be surprised if it changed anything.
<inf>
boot-related options are exactly the same with my other system successfuly running GRUB on UEFI, so I don't think that is the issue either.
<inf>
>Could not prepare Boot variable: Function not implemented
<inf>
when I launch grubx64.efi from efi shell it just hangs as well (but still displaying EFI shell)
Ariakenom has joined #nixos
alp has joined #nixos
[Leary] has joined #nixos
Lears has quit [Read error: No route to host]
romildo has joined #nixos
<romildo>
I am needing help installing NixOS on my new DELL notebook.
Tucky has joined #nixos
<romildo>
I need to connect to internet from the wireless card. It is an Atheros QCA9377. The kernel module is ath10k_pci.
<romildo>
After booting from the unstable nixos installation media, the wireless card is not available.
<romildo>
And the following messages are displayed:
reinhardt has joined #nixos
<romildo>
could not execute otp for board id check: -110
`_ has quit [Ping timeout: 250 seconds]
<romildo>
failed to get board id from top: -110
<romildo>
could not probe fw (-110)
elgoosy has quit [Remote host closed the connection]
<romildo>
What should be done in order to have the wireless working?
<romildo>
s/top/otp/
<fpletz>
romildo: which kernel version do you use? you probably want to try with a very recent kernel version if the hardware is new
<romildo>
fpletz, Linux nixos 4.14.87 from the nixos unstable installation media
<etu>
romildo: Try adding something like: boot.kernelPackages = pkgs.linuxPackages_latest; to your configuration.nix if you're fine with using the latest kernel at all time
<etu>
you could also pick versions a bit like pkgs.linuxPackages_4_19;
<fpletz>
that's not possible on an install medium though :)
<etu>
True :/
<fpletz>
romildo: there's the iso_minimal_new_kernel attribute in nixpkgs/nixos/release.nix which builds an iso with the latest kernel
mr_noobs has joined #nixos
<fpletz>
unfortunately we don't release that like the other isos
<romildo>
fpletz, with the new iso the wireless card has been detected. I hope everything else works in this new installation I am going to do. Thank you.
zolk3ri has joined #nixos
agander has quit [Ping timeout: 240 seconds]
mr_noobs has quit [Ping timeout: 250 seconds]
mr_noobs has joined #nixos
freeman42x[nix] has quit [Ping timeout: 252 seconds]
zolk3ri has quit [Quit: leaving]
owickstrom has quit [Quit: Leaving]
owickstrom has joined #nixos
<{^_^}>
[nixpkgs] @vbgl opened pull request #51934 → coqPackages.coqprime: enable for Coq 8.9 → https://git.io/fpdBh
<ottidmes>
Should I use a session manager? I am using no desktop manager with just a window manager (bspwm), but this causes the message about SESSION_MANAGER not being set, should I be using something for this, if not, can I just set it to e.g. '${coreutils}/bin/true' to silence the message?
<{^_^}>
[nixpkgs] @neonfuz opened pull request #51935 → retroarch: Remove --menu from wrapper → https://git.io/fpdRj
ThatDocsLady_ has joined #nixos
<clefru>
What is required to allow a derivation to impurely access the network during build times? I looked at fetchurl/fetchcargo, and the only commonality that I see is "impureEnvVars = stdenv.lib.fetchers.proxyImpureEnvVars;" which doesn't seem to cut it
<ottidmes>
clefru: I believe it has to do with how the sandbox is setup with the different phases, not with the derivations themselves
<symphorien>
clefru: only fixed output derivations can access the network
<clefru>
oh that's clever! thanks
Acou_Bass has joined #nixos
<srhb>
clefru: Generally, that means outputHash and outputHashAlgo must be set (and possibly outputHashMode, which otherwise defaults to "flat"
iyzsong has joined #nixos
<ottidmes>
srhb: just for my understanding, so all fetchers needs to be fixed output derviations? and the reason I can just add a script to do extra network related things with certain fetchers, is because that is part of the implementation of the fetcher, and does not effect the fetcher itself (hence still fixed output)?
johann__ has quit [Ping timeout: 252 seconds]
simukis has joined #nixos
<srhb>
ottidmes: Yes, allowing network access only for fixed-output derivations enforces purity.
<srhb>
(We know the output in advance, so it's pure!)
sigmundv_ has joined #nixos
<srhb>
Implementing a "fetcher" yourself is as simple as adding those attributes.
<neonfuz>
how long does it take for a merged package to show up in binary caches from hydra?
<{^_^}>
[nixpkgs] @ivan opened pull request #51936 → pythonPackages.fb-re2: init at 1.0.6 → https://git.io/fpd0u
<ottidmes>
srhb: so you would be ensured that the fetcher has not been altered with, but since you have things like `extraPostFetch` in `fetchFromGitHub`, which is very impure, so you are pure it the sense of the fetcher implementation, but whether the fetcher itself ensures purity (like requiring hashes for all its fetched contents), is up to the implementation, right?
__Sander__ has joined #nixos
<srhb>
ottidmes: Well, sure. Conceivably, you could implement a "fetcher" that also has normal derivations involved.
dramforever has joined #nixos
<srhb>
ottidmes: Eg. your function (like fetchFromGitHub) could have a drv that is fixed-output and thus output hash guarded that then is used in another, normal (input hash) derivation
jtojnar has joined #nixos
Dagger2 has quit [Excess Flood]
<srhb>
Fetcher isn't really a very general thing, fixed-output and non-fixed-output derivations are :)
nek0 has joined #nixos
<ottidmes>
srhb: ok, thanks for clearing that up :)
<dramforever>
Ah, I did that a while ago!
__monty__ has quit [Quit: leaving]
<dramforever>
You can write yourself a low-level derivation without using any nixpkgs goodies, with busybox as a builder running sh -c your-thing
<srhb>
<nix/config.nix> is quite cool :-P
<srhb>
roll your own nixpkgs from scratch.
<dramforever>
Then you can see that with outputHash*, stuff like wget will work
<dramforever>
Without them they just fail to connect
<{^_^}>
#51677 (by pmiddend, 5 days ago, open): pro-office-calculator: init at 1.0.6
<Phillemann>
There already was somebody who tested (and fixed) this and I fear I'll have to fix merge conflicts in all-packages for some time if this doesn't get merged soon. ;)
<srhb>
qyliss^work: Yeah, I have much fun with that :D
<srhb>
Phillemann: Sure.
<Phillemann>
srhb: Wow, thanks! :)
jomik has joined #nixos
<Phillemann>
Should be pretty straightforward, the derivation is small.
<jomik>
Heya guys - I can't remember where the <nixpkgs> syntax comes from? But from what I know it looks at my nixpkgs channel and pulls that. Is it possible to add an <unstable> also? I'd like to add some unstable packages, without having to fetch from a specific github rev.
<srhb>
Jomik: <foo> is a lookup of "foo" in $NIX_PATH
<srhb>
Phillemann: Is.. Is this really a game? >>
<jomik>
Aaah. So that finds `nixpkgs=/nix/var/profiles/per-user/root/channels/nixos`
<srhb>
Like.. What's the purpose of this thing :P
<Phillemann>
srhb: I was asking myself the same thing. It is...well, a puzzle game.
<Phillemann>
And it's extremely hard to crack.
<srhb>
Phillemann: I can't tell if you're pulling my leg :P
<Phillemann>
There's an FPS engine in there for a Wolfenstein lookalike
<Phillemann>
No, really :D
<jomik>
\So, I could add my own channel, and it'd go in ~/.nix-defexpr/channels, right?
<dramforever>
Eh, you got me interested, now I have to do this
johann__ has quit [Quit: Leaving.]
<rardiol>
Hi. I'm trying to use nix-serve locally and i get this error: "warning: substituter 'http://192.168.1.101:7819' does not have a valid signature for path '/nix/store/24qiclqzi2p8l2x5fbn5sr7xrl44mdd5-linux-4.14.87'" Does someone have any ideas? From what I understood on a discussion on github, both machines are on nix 2(2.0.4 and 2.1.3), and /etc/nix/conf.nix contains the trusted-public-keys = cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ1
<rardiol>
6ZPMQFGspcDShjY= line
<{^_^}>
[nixpkgs] @ivan opened pull request #51937 → pythonPackages.cchardet: init at 2.1.4 → https://git.io/fpd05
<jomik>
HM, now I just need to make my home-manager use unstable for this package... :D
agander has joined #nixos
<dramforever>
(import <unstable> {}).this-package
<srhb>
Jomik: are you sure you wouldn't prefer to just define unstable in a nix expression? :) Juggling two channels might become confusing.
<jomik>
I like the idea that if I nix-channel --update, then I will update all my packages :D
<srhb>
Jomik: Okay. :-P
rardiol1 has joined #nixos
<jomik>
Huh... Tho one of them is owned by root...
<jomik>
"owned"
ottidmes has quit [Quit: WeeChat 2.2]
<srhb>
Jomik: In a default NixOS install, only root has a channel defined, namely the current stable branch
<jomik>
But I would prefer a way to easily update the channel, without me having to get a rev and a sha.
<ivan>
should https://github.com/PyYoshi/cChardet be .cchardet or .cChardet in nixpkgs? is there a rule? I really do not like uppercase surprises
<jomik>
I guess I could make home-manager track unstable - but I am not sure if that can cause issues when that points towards nixos-unstable as well..
<srhb>
ivan: It's "pip install cchardet" so you could defend that choice.
<dramforever>
Oh wait
<ivan>
srhb: yes
<dramforever>
Your own channels aren't in NIX_PATH
<dramforever>
on NixOS
<dramforever>
Guess you can just import using the path itself
<jomik>
dramforever: Oh, so it wont find it through .nix-defexpr?
<jomik>
... Lol. Home-manager doesn't even have vscode defined on the release-18.09 branch :D
<jomik>
You guys think there'd be an issue with having my home-manager track unstable? It should pull unstable packages for all things then, right? It wont use my release-18.09 that nixos points towards?
<{^_^}>
[nixpkgs] @johanot opened pull request #51938 → nixos/kubernetes: fix import path of default nixpkgs → https://git.io/fpd0p
<dermetfan>
Jomik: that's how I do it too
<jomik>
dermetfan: Perfect. I'll just do that then...
reinhardt has quit [Quit: Leaving]
<dermetfan>
dramforever: ~/.nix-defexpr/channels in on my NIX_PATH, I don't remember adding it
<jomik>
Yeah, it is by default. Was there in a fresh install for me :P
<jomik>
What's the easiest way to switch home-manager path? Should I just set that path attribute?
Synthetica has quit [Quit: Connection closed for inactivity]
<jomik>
Oh, I have a channel for it... Maybe I should just use the path :P
<ottidmes>
is there a formatter for Nix? I found some nodejs package, but that did not work for me. For readablity sake I often just use --json and pipe it through `jq`, but I would rather keep it Nix
<jomik>
Yah. I'd prefer to do it per package if possible though :o
<jomik>
Oh, looks like I can set nixpkgs.config.allowUnfree = true in my home.nix too.
<rardiol>
ottidmes: hmm, thanks. But why do I need to sign my store myself? I don't *want* to trust the secondary store, can't it download the files from my secondary untrusted substituter and somehow check if it's correct and the same file as cache.nixos.org by checking signatures?
<ottidmes>
rardiol: not sure, so far I have only used it as referenced in that log, someone else might be more experienced in the matter
<jomik>
I shouldn't need to have a .profile with home-manager, right? I can set stuff in home.sessionVariables just the same?
<ottidmes>
Hmm, I used unstable.vscode before with success, but after updating just now, when I try to remove a file, the prompt causes it to segfault with some glibc error, luckily stable.vscode does not have this issue
sonnenbloom has quit [Remote host closed the connection]
zolk3ri has joined #nixos
fendor has joined #nixos
<rardiol>
ottidmes: https://github.com/NixOS/nix/pull/2554 apparently changes the manual to something similar (I was following the manual that apparently is out of date), although it doesn't request running 'nix sign-paths --all --key-file <secret-key-file>'.
<rardiol>
But it's weird to me, why doesn't it just download the signature from cache.nixos.org together with the rest?
<rardiol>
and release 2.0 does claim to do that "Nix now stores signatures for local store paths. When paths are copied between stores (e.g., copied from a binary cache to a local store), signatures are propagated."
Wharncliffe has quit [Quit: Lost terminal]
<ottidmes>
rardiol: weird, that quote indeed seems to imply it already should be doing exactly what you want it to do
<ldlework>
how do I add environment variables to mkShell?
<rardiol>
now, can it be fixed? I just need to figure out perl
mr_noobs has joined #nixos
sysadmin_wannabe is now known as psiconauta
<ottidmes>
rardiol: it should be possible to achieve what you want through different ways, I am sure, but I would have to look into it myself too to give you an answer. I believe it really is the documentation that is lacking and the convenience tooling that are outdated, but that actual backing tooling are very good (but right now that is, if you get them to work, with is just a pitty)
<jomik>
Guys. In a home-manager module, how do I make it run a command if a directory doesn't exist?
rardiol1 has quit [Ping timeout: 250 seconds]
<ldlework>
Jomik: Are you looking for an activation script?
<ottidmes>
Jomik: systemd user service with a script I guess
<jomik>
I suppose.. I need to run a command if an option is set and a directory doesn't exist.
<jomik>
Just once to create the directory.
<ottidmes>
Jomik: you should almost always prefer systemd services over activation scripts
<rardiol>
ottidmes: hm, thanks for the help. I'm looking at nix-serve, and optimistically it seems it's just a matter of checking if there's a signature in the store to send and sending it
<dermetfan>
Jomik: or home.file."dir/.keep".text = ''; if an empty file there is no problem
<jomik>
So it should literally only be once.
<jomik>
dermetfan: I need to run the command `dotfiles clone ${url} ${dir}$ if dir does not exist.
<jomik>
Seems a bit overkill to make a service for it :P
<jomik>
Unless I make it handle push/pulling, but that's not really something I want to get into :D
<ottidmes>
Jomik: still, I think its the way to go for your use case, you want to run a script, but then questions arise like, when? What about dependencies, etc. And that is exactly what systemd services are for, and it often does not take much to write such a service, a few lines of config
<jomik>
I guess I do need to ensure that there is an internet connection.
Anton-Latukha has joined #nixos
cyounkins has quit [Remote host closed the connection]
<jomik>
Huh, can my nix package make a store thing per user to hold the git metadata?
<jomik>
Oh, duh. I guess I really have to read into that.. :p
<mightybyte>
srhb: How can I find out the path to the .doc output?
<mightybyte>
srhb: I would expect a symlink to be created in result or something
<ottidmes>
nice, I now base the evaluation of my configuration on my configuration, and since its all in the same run, the hit is pretty low (caching and such)
<srhb>
mightybyte: No, there will be a result-doc link iff you install the doc output. But: nix eval --raw -f '<nixpkgs>' haskellPackages.lens.doc.outPath
<srhb>
er, -f '<nixpkgs>' is superfluous there :-)
<srhb>
mightybyte: One of the points of multi output packages is to split results, so $out should usually not contain a reference to $doc (since that would add a runtime dependency)
<{^_^}>
[nixpkgs] @taku0 opened pull request #51943 → Thunderbird bin 60.3.3 → https://git.io/fpdzg
<srhb>
ottidmes: Elaborate? :-P
orivej has joined #nixos
<mightybyte>
srhb: How do I find the doc outputs for my package? I don't really care about lens.
orivej has quit [Ping timeout: 268 seconds]
<srhb>
mightybyte: Assuming it uses the generic builder, it's just .doc :)
<srhb>
lens was an arbitrary example.
globin has joined #nixos
cyounkins has quit [Remote host closed the connection]
<mightybyte>
$ nix eval --raw doc
<mightybyte>
error: attribute 'doc' in selection path 'doc' not found
<srhb>
mightybyte: Need more information. Does nix-build without arguments build your normal result symlink?
<mightybyte>
srhb: It builds a result symlink.
<mightybyte>
srhb: This is a reflex-platform project
<srhb>
And what about nix-build -A doc ?
<jomik>
srhb: Can you fix me a small snippet that replaces vscode with unstable.vscode? I can't get it to work :D I have (self: super: { vscode = unstable.vscode; }); but, I feel like I should use super somewhere :P
agander has joined #nixos
<mightybyte>
error: attribute 'doc' in selection path 'doc' not found
<srhb>
Jomik: Not without more context. Assuming unstable really is in scope, that should be fine.
waleee has joined #nixos
<srhb>
mightybyte: I'll have to recheck what a reflex project looks like then. It may just be docs are disabled.
<srhb>
Oh, no, you said it built them.
<jomik>
I get the error "Value is a function while a set was expected"
<jomik>
Do I need to do super.callPackage?
cyounkins has quit [Ping timeout: 250 seconds]
<srhb>
Jomik: No, what you're doing there looks correct.
<srhb>
Jomik: Did you forget to actually call the nixpkgs in unstable?
<jomik>
Nooooooo. That would be stupid.
<srhb>
Jomik: :-)
<jomik>
Uuuh. I had to call it with config allowUnfree = true as well >.o
<srhb>
Right right.
<mightybyte>
srhb: Yeah, I know they're built. But I think they have some different structure.
<mightybyte>
To drop into a shell, you use `nix-shell -A shells.ghc`
<jomik>
Lol, nixpkgs unstable has 1.32 and master has 1.34, actual is 1.36 XD I'll have to update this :P
<srhb>
Jomik++
<{^_^}>
Jomik's karma got increased to 1
<srhb>
One point now, one when PR is up :-P
<mightybyte>
srhb: How do I load it into the repl?
<jomik>
But first I need to do this assignment so that they will allow me to get my exams done :D
<qyliss^work>
mightybyte: :l .
<qyliss^work>
or `nix repl .`
<srhb>
mightybyte: or nix repl filename
<srhb>
or that ^ for default.nix/shell.nix :-)
<srhb>
mightybyte: It's sort of cargo culted from ghci, should be familiar
<mightybyte>
Ok, cool.
<srhb>
Jomik: Exams, schmexams! (Good luck ;))
jomik has quit [Quit: Page closed]
iyzsong has quit [Ping timeout: 250 seconds]
<ottidmes>
srhb: (apparently I was scrolled up, so only now see your question to eloborate)
<srhb>
ottidmes: Welcome to the present.
<ottidmes>
srhb: I am using https://github.com/NixOS/nixpkgs/pull/51894 to pass to my configuration a customized lib that is based on the profiles I have loaded (I have multiple profiles that are reused between my different hosts)
<{^_^}>
#51894 (by ottidmes, 1 day ago, open): configure the evaluation of modules in a modular way
leotaku has quit [Ping timeout: 244 seconds]
<CodeKiwi>
odd times
<ottidmes>
srhb: thank you :P I was wondering why the sudden silence on the channel ;)
<ottidmes>
srhb: And now I have it setup so that I can query my configuration for which profiles it has loaded, and based on that I query the profiles to see if they define a lib/overlay.nix, and those are then overlaid over the default nixpkgs lib and passed the configuration to be run
<gchristensen>
infinisil: cool! I think it'd be nicer if it correlated to specific channels. "unstable" isn't specific, it could be nixpkgs-unstable, nixos-unstable, nixos-unstable-small, and stable has similar troubles
<infinisil>
gchristensen: Unfortunately dashes aren't allowed as variable names currently :P
hedning has joined #nixos
<gchristensen>
nixosunstable? :)
<infinisil>
I'll fix the dashes thing, hold on
<srhb>
ottidmes: Interesting :)
avn has quit [Read error: Connection reset by peer]
ThatDocsLady_ has quit [Read error: Connection reset by peer]
<fendor>
when try to start dafny, a dotnetPackage, i get the error: Magic number is wrong: 542. Is that nix related and if yes, how can I fix that? Stack trace: https://hastebin.com/edodoqikid.bash
Ariakenom has quit [Ping timeout: 268 seconds]
iqubic has quit [Remote host closed the connection]
<ottidmes>
fendor: that has to do with .NET and terminfo
endformationage has joined #nixos
<ottidmes>
fendor: you can fix it by setting TERM=xterm
<fendor>
ottidmes, oh, i though xterm-256colour is close enough...
<fendor>
*thought
<fendor>
ok, thanks!
pie___ has joined #nixos
pie__ has quit [Remote host closed the connection]
CodeKiwi is now known as DigitalKiwi
halfbit has joined #nixos
<siraben>
the Nextcloud client package keeps asking me for my Nextcloud password on start up
<siraben>
But this problem does not happen if I use the the GNOME desktop environment because it has a GNOME keyring
<siraben>
Is there a standalone alternative? I'm using Xfce + i3 if that matters
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
<ottidmes>
siraben: services.gnome3.gnome-keyring.enable = true; should work on that setup too, not sure about any alternatives
<siraben>
ottidmes: does that work without GNOME installed?
<siraben>
ok I'll try it
<{^_^}>
[nixpkgs] @Scriptkiddi opened pull request #51946 → pythonPackages.x256: init at 0.0.3 → https://git.io/fpdgp
<ottidmes>
siraben: I have XFCE + bspwm and I had an application that required it to work, and since worked, but I have not used it a lot, so I am not sure whether there might still be open issues
<shreyansh_k>
Hi, with virtualization.virtualbox.host={enable=true; enableExtensionPack=true;} it needs to recompile vbox+extensions. Is it possible to avoid the recompilation?
ryantrinkle has joined #nixos
<qyliss^work>
No. The virtualbox extensions are not free software, so we can't / won't distribute binaries for them.
dermetfan has quit [Ping timeout: 240 seconds]
jperras has joined #nixos
<shreyansh_k>
qyliss^work: Oh! okay. thank you.
erasmas has joined #nixos
<{^_^}>
[nixpkgs] @Mrmaxmeier opened pull request #51947 → thelounge: init at v2.7.1 → https://git.io/fpd2C
<smrtak>
hello. any sublime user here? any advice how to fix issue: error: cannot download sublimetext-2.0.2.tar.bz2 from any mirror. I cannot rebuild any more :(
LysergicDreams has joined #nixos
shabius has quit [Remote host closed the connection]
shabius has joined #nixos
<Synthetica>
smrtak: Looks like the old mirror dropped it, I'll add an url for the current download that's on the website
<slabity>
smrtak: Looks like the file is no longer provided by the mirror.
<slabity>
I can confirm sublime3 works. Can you use that?
<smrtak>
yes, I realized that ver3 is already up
<smrtak>
switching to it now. thx!
<smrtak>
Synthetica: slabity thank you for your fast response
<slabity>
Synthetica: You beat me to it :P
Ariakenom has joined #nixos
<Twey>
How do I build static binaries with clang? I'm using `(makeStaticBinaries llvmPackages_6.stdenv).mkDerivation …` but I get ld errors: cannot find -lm, cannot find -lc
waleee has quit [Quit: WeeChat 2.3]
halfbit has quit [Quit: WeeChat 2.3]
<{^_^}>
[nixpkgs] @Synthetica9 opened pull request #51949 → sublime: add new download url → https://git.io/fpdaU
<Synthetica>
slabity: If you don't like S3, you should be able to switch back once that's merged
ryantrinkle has quit [Ping timeout: 250 seconds]
<slabity>
I actually don't use sublime. I was just confirming I could build it
<slabity>
But that was pretty quick. Nice
ng0 has joined #nixos
<ottidmes>
also vscode + extensions (Sublime Commands + Sublime Text Keymap) works really well, I still use sublime for some projects out lazyiness, but for the rest vscode has completely replaced sublime for me
<Synthetica>
Yeah, I also switched to VScode from Atom some time ago
<{^_^}>
[nixpkgs] @guibou opened pull request #51950 → Fix english in stdenv.xml → https://git.io/fpdaq
<Synthetica>
(My money is on that Atom will be absorbed into VScode at some point anyways)
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
<slabity>
Anyone here have experience with `pypi2nix`? I'm trying to use it to build https://github.com/taigaio/taiga-back but it says `The headers or library files could not be found for zlib` despite having `-E zlib -E zlib.dev` options
Mr_Keyser_Soze has joined #nixos
<slabity>
Can be replicated with the following two commands:
<ToxicFrog>
Oh no, I'm going to end up writing a patch to nixpkgs
<gchristensen>
oh no?
<ToxicFrog>
I was hoping to be able to do this without needing to patch it, since there's a lot of overhead involved in checking out nixpkgs, figuring out how to point one of my channels at it, writing the PR, etc
<gchristensen>
aye
<ToxicFrog>
There's an open issue that this will partially fix (#17895) and I started writing a comment there describing the partial fix, but it feels like a dick move to do that when I know how to implement it and the actual implementation isn't even that much work.
<mdash>
ToxicFrog: write the comment _then_ do the overhead work :)
tpanum has joined #nixos
<mdash>
ToxicFrog: (FWIW you don't even have to mess with channels, you can just set NIX_PATH or even put your git checkout directory in the nix expr directly)
sigmundv_ has quit [Ping timeout: 250 seconds]
pie__ has joined #nixos
<ToxicFrog>
mdash: it looks like the easiest (least-overhead) approach is to check it out and then `nixos-rebuild -I nixpkgs=path/to/working/tree ...`?
<gchristensen>
yep!
mr_noobs has quit [Ping timeout: 246 seconds]
pie___ has quit [Remote host closed the connection]
<phry>
has someone recently created a new zfs pool with zfs.enableUnstable=true? I'm getting "property 'foo' is not a valid pool property", for foo being ashift, altroot, encryption and all other options o_O
<phry>
(zpool is in version 0.8.0-rc2)
WilliamHamilton[ has joined #nixos
<WilliamHamilton[>
after a `sudo nix-channel --update` and `sudo nixos-rebuild --switch` the installation halts with: `error 7 while decompressing xz file`
<DigitalKiwi>
phry: I had tons of problems
<WilliamHamilton[>
how could I debug the problem, and discover which packages is doing that?
<DigitalKiwi>
phry: I got it eventually
<DigitalKiwi>
are you doing it from a live disk or?
<phry>
yes, the graphical installer. I have done this at least 5 or 6 times in the past the same way on different machines
<DigitalKiwi>
ok yeah so uh
<DigitalKiwi>
it doesn't work
<DigitalKiwi>
I had to build my own image with unstable enabled already
<phry>
only difference being that now it's a little more recent version of zfs
<DigitalKiwi>
because the livedisk wouldn't load the kernel module if you looked at dmesg it would still be on 7
<DigitalKiwi>
fucked around with that for a few days :|
<phry>
modinfo zfs and modinfo spl both say it's 0.7.0-rc2
<phry>
eh 0.8.0-rc2
<DigitalKiwi>
what does dmesg|grep ZFS say
<phry>
whoa, yeah. 0.7.12-1 o_O
<DigitalKiwi>
:)
<eyJhb>
Hey, if a package might be marked broken, is it then a issue and PR?
<DigitalKiwi>
if you do the instructions to build a live disk and change one line before you do you can do it, it takes a while but not tooooo long, it's only one line
jonaswouters has quit [Quit: Connection closed for inactivity]
<{^_^}>
[nixpkgs] @ivan opened pull request #51954 → maintainers: add github for ivan → https://git.io/fpdV7
<phry>
yup, seems there's no way around that. thanks, I don't think I'd ever found that
<DigitalKiwi>
I dunno if there's a better way to enable that but that's what I ended up with on like the...3rd-4th time :|
<phry>
I guess using an old isntaller without zfs and then using kexec to swap into a current version could work too. But I don't know if that's simpler ;)
<DigitalKiwi>
interestingly if you use the copy to ram option you can build a live usb from the live usb but if you build the wrong image it won't boot and you'll have wasted your time and have to download it again
<DigitalKiwi>
oh I was pissed because the github issues and instructions all claimed that switching would work but no the old kernel module stuck around
<DigitalKiwi>
gchristensen: ^^^
<DigitalKiwi>
consider this my bugreport if it's not already a bug report because I had SO MANY issues and they were all like from years ago so either they are different or shit still broke :|
<{^_^}>
[nix] @catern opened pull request #2579 → nix-store: make --dump-db take a list of paths to dump → https://git.io/fpdVd
<asymmetric_>
how does one go about adding a new electron based app to nixpkgs? should i add it to node-packages-vx.json? or should it have its own default.nix somewhere in the tree?
asymmetric_ is now known as asymmetric
Mr_Keyser_Soze has quit [Quit: Then he was gone...]
megfault has joined #nixos
<cbarrett>
greetings all. is there a way to get "nix-shell -p bar --run 'baz --version'" to use the unstable version of a package? I've tried a few things, and I'm having trouble figuring out the right incantation. For instance, I've added unstable to my nix-channels w/ the name 'unstable'. I tried putting "<unstable>" or "unstable" in a few places but I'm not sure what I'm doing wrong...
<cbarrett>
i've done nix-channel --update, and I've gotten to see it build a new version of my package. I just can't seem to figure out how to get it to make that package visible during --run...
<cbarrett>
seeing the "right way" would help a lot
<cbarrett>
thx in advance
<asymmetric>
cbarrett: nix-shell '<unstable'> -p bar ?
<cbarrett>
It's reporting an outdated version. But let me check something, maybe the package wasnt updated in unstable, I dont think I actually checked
<cbarrett>
nix-shell '<unstable>' -A bar was what got it to build, but then --run wasn't able to see the actual command
<asymmetric>
yeah, i think that's what -p is for
<asymmetric>
so you should use -p
worldofpeace has joined #nixos
Dedalo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
agander has joined #nixos
<cbarrett>
so it looks like in unstable, the version I want is available as haskellPackages.dhall_1_19_1, whereas dhall is what I'm normally installing
nD5Xjz has quit [Ping timeout: 244 seconds]
<cbarrett>
$ nix-shell '<unstable>' -p 'haskellPackages.dhall_1_19_1' --run 'dhall --version' #fails, attr not found
imdoor has joined #nixos
<cbarrett>
(i'm not totally sure that's correct)
mariel__ has quit [Ping timeout: 252 seconds]
Dedalo has joined #nixos
mariel__ has joined #nixos
nD5Xjz has joined #nixos
<{^_^}>
[nixpkgs] @worldofpeace pushed commit from @asymmetric to master « slither-analyzer: init at 0.3.0 »: https://git.io/fpdo9
<infinisil>
cbarrett: you might have an outdated unstable?
<ToxicFrog>
So, if I refer to a relative path in the NixOS configuration, at build time it gets automatically interned into the store and replaced with the path to the interned file.
<ToxicFrog>
How do I do that with absolute paths?
<symphorien>
> /tmp/foo
<{^_^}>
/tmp/foo
<ottidmes>
ToxicFrog: builtins.toFile name s
<ToxicFrog>
ottidmes: thank you!
<ottidmes>
ToxicFrog: but its not an exact match
<asymmetric>
cbarrett: i was asking for another issue :)
<cbarrett>
asymmetric: ah, my bad :) sorry for the spam
<ottidmes>
ToxicFrog: expects a string, which you could get with builtins.readFile I guess...
<ToxicFrog>
So I see
<cbarrett>
infinisil: I did nix-channel --update, and then darwin-rebuild switch
<cbarrett>
same result
cyounkins has quit [Read error: Connection reset by peer]
<ToxicFrog>
Backing up a bit, the actual problem I have is that I have a configuration option that's a list of paths, which may be absolute or relative and may be files or directories
cyounkin_ has joined #nixos
<ToxicFrog>
And I need a directory in the nix store that contains copies of all of those
<ToxicFrog>
Where is symlinkJoin documented? It's not in the Nix manual or the Nixpkgs manual.
<infinisil>
Oh wait, not symlinkJoin
<infinisil>
You want linkFarm
<infinisil>
It's documented in that file (both linkFarm and symlinkJoin)
<{^_^}>
[nixpkgs] @matthewbauer merged pull request #51954 → maintainers: add github for ivan → https://git.io/fpdV7
<{^_^}>
[nixpkgs] @matthewbauer pushed commit from @ivan to master « maintainers: add github for ivan »: https://git.io/fpdKK
mr_noobs has joined #nixos
<Twey>
#What pulls in libstdc++ when I compile something with gcc-wrapper?
<{^_^}>
libstdc's karma got increased to 1
<slabity>
Nice
<cbarrett>
lol
<Twey>
I'm so confused
Mateon3 has joined #nixos
<Synthetica>
Guess how much karma C has? :P
<Twey>
Does it do that for any double-plus mention anywhere in the string?
<Twey>
Hahaha
<ottidmes>
fjasoidjasfj++
<{^_^}>
fjasoidjasfj's karma got increased to 1
<ToxicFrog>
infinisil: and use (map copyPathToStore) to get all the files/directories into the store in the first place?
<Twey>
I'm really confused about static linking. We have makeStaticBinaries but it doesn't seem to actually pull in a static libc
<Twey>
Even static.nix doesn't have a static libc in its stdenv
<Twey>
So presumably the compiler is broken?
<cbarrett>
correct me if i'm wrong, but static except for system libraries like libc is a valid configuration right?
<Twey>
cbarrett: I… guess? It produces a dynamic binary though
Mateon1 has quit [Ping timeout: 268 seconds]
Mateon3 is now known as Mateon1
<infinisil>
ToxicFrog: Nah, just `linkFarm [ { name = "foo"; path = ./the/path/itself; } ]` should work
<ottidmes>
ToxicFrog: I know how you could leverage the default behavior of copying paths to the store, but there are probably better ways, if you want it let me know and I will write it down
* infinisil
tests that
<ToxicFrog>
infinisil: won't that break on absolute paths since they aren't automatically copied into the store?
<Twey>
cbarrett: You can in theory mix static/dynamic libraries however you want; if there's at least one dynamic library then you get a dynamic binary
<ToxicFrog>
Like, part of the problem I'm having is that if `path = /usr/src/whatever`, I get a symlink to /usr/src/whatever, not a symlink to a copy of it in the store
<ottidmes>
ToxicFrog: if they are strings, then I do not see why they would be copied to the store, no
<ToxicFrog>
ottidmes: where do strings come into it?
<srhb>
But they're not, so they will. :)
<Twey>
cbarrett: But makeStaticBinaries passes the -static flag to the compiler, which asks it to make a static binary… but there's no static libc available. So I'm confused as to how it works
<cbarrett>
interesting
<infinisil>
ToxicFrog: There are actually no relative paths in Nix, they get turned to absolute ones automatically:
<infinisil>
> ./.
<{^_^}>
/var/lib/nixbot/state/nixpkgs
<infinisil>
And if such paths are interpolated in strings, they get copied to the store automatically:
<Synthetica>
(That's one of the features I wish every language had)
<infinisil>
> "${./nixos/modules}
<{^_^}>
error: syntax error, unexpected $end, expecting '"', at (string):214:20
<infinisil>
> "${./nixos/modules}"
<{^_^}>
access to path '/var/lib/nixbot/state/nixpkgs/nixos/modules' is forbidden in restricted mode
<infinisil>
> "${./.}" # This works but it takes a while..
<{^_^}>
access to path '/var/lib/nixbot/state/nixpkgs' is forbidden in restricted mode
<gchristensen>
hehe
<infinisil>
Or not!
<ToxicFrog>
infinisil: right, but my point is, if youre conguration includes the path `./foo/bar`, that gets ingested and turned into "/nix/store/.../bar" at compilation time.
<ToxicFrog>
infinisil: But if it includes the path `/foo/bar`, that does not get ingested into the store automatically, it just turns into "/foo/bar"
<Twey>
cbarrett: Oh, it just doesn't work
<cbarrett>
lol
<ToxicFrog>
So builders can't see it (because it's not in the sandbox), and if it becomes part of the generated system configuration you now have this big chunk of mutable data hanging around outside /nix that things depend on.
<ottidmes>
ToxicFrog: I thought you had possibly "/usr/src/whatever" as well (i.e. as a string, but absolute)
<infinisil>
ToxicFrog: It should, there's no difference between relative paths and absolute paths in Nix evaluation
<gchristensen>
infinisil: the reason you're getting a strange behavior is Nix won't even bother touching the original directory when it knows it can't use it. if it could touch it, it'd copy it in
<gchristensen>
ToxicFrog: if test.sh in this case was a symlink, it will, confusingly, copy in the symlink
<ottidmes>
today I was testing pkgs.path in nix-instantiate, and it too copied it over to the Nix store, did not see that coming
<ToxicFrog>
gchristensen: huh. That does not match the behaviour I'm seeing.
<infinisil>
> pkgs.path
<{^_^}>
/var/lib/nixbot/nixpkgs/master/repo
<gchristensen>
is the file you're pointing to a symlink?
<ToxicFrog>
If I have a builder that takes a list of absolute paths as input the buildCommand ends up referring to those, not copies of them in the nix store.
<gchristensen>
can you show some code?
<ToxicFrog>
(which means if it actually needs them at build time, it fails, and if it's just creating symlinks, it's creating symlinks outside the store)
<ToxicFrog>
Yeah, hang on
<ToxicFrog>
And no, they aren't symlinks themselves
asymmetric has quit [Ping timeout: 240 seconds]
<ottidmes>
infinisil: with this shell function: nix-instantiate --eval --strict --expr --json "with import <nixpkgs/nixos> { }; $@" | jq, running it like so: nixos-eval pkgs.path, resulted in a /nix/store path, I had to use toString
<infinisil>
> builtins.toJSON pkgs.path
cyounkin_ has quit [Remote host closed the connection]
<ottidmes>
infinisil: haha, taking his time, so probably :P
<infinisil>
(It seems to be importing it, judging from how long this takes)
<ToxicFrog>
I also could have sworn I read a thing in the manual earlier today about how relative paths are automatically copied and absolute ones aren't, but now I can't find it :/
<gchristensen>
oh, heh, ToxicFrog the problem is you're toStringing them
<fresheyeball>
nixos is running great on my wacom mobile studio
<gchristensen>
which explicitly says don't make this a path
<fresheyeball>
except for the physical hardware buttons
<fresheyeball>
it looks like the kernel is not even giving them a device number
graphene has quit [Remote host closed the connection]
<fresheyeball>
not sure how to proceed
elibrokeit has quit [Ping timeout: 252 seconds]
<ToxicFrog>
gchristensen: argh! I'm calling toString on a list, so I would have expected this would cause the contents of the list to be evaluated (ingesting the paths) and then the list itself to be stringified (by concatenating the contents)
graphene has joined #nixos
<gchristensen>
very interesting
<ToxicFrog>
But I guess (toString list) is just something like (reduce (strJoin " ") (map toString the-list))?
<fresheyeball>
it also appears to me that putting random strings in kernelModules does not cause an issue
<fresheyeball>
so I am never sure if I have added a kernelModule or not
<gchristensen>
ToxicFrog: not sure, I didn't know toString worked on lists :P
cyounkins has quit [Ping timeout: 250 seconds]
<ToxicFrog>
Welp.
<ToxicFrog>
I'll try mapping the list through copyPathToStore before feeding it to toString.
<infinisil>
fresheyeball: Have you tried xsetwacom?
<gchristensen>
why not just use that command there ^ ?
<fresheyeball>
infinisil: yes
<ToxicFrog>
gchristensen: an even better idea! Sorry, I missed that.
<infinisil>
Ah, you mentioned no device number
<gchristensen>
no worries :)
<fresheyeball>
infinisil: if I call `xsetwacom` I get back 3 things
<fresheyeball>
Pen stylus of type: STYLUS
asymmetric has joined #nixos
<fresheyeball>
Touch finger type: TOUCH
<fresheyeball>
and Pen eraser type: ERASER
<fresheyeball>
based on poking about online, it looks like there should be a forth one of tyep: PAD
<infinisil>
fresheyeball: Did you look at the udev rules and debug with udevadm?
<fresheyeball>
I did not!
<fresheyeball>
that sounds promising
<fresheyeball>
I had to do some copy pasta to make steam work on my other box with udev
<fresheyeball>
it would make sense we need to do a thing there
<infinisil>
You did enable services.xserver.wacom.enable right?
<infinisil>
This should install a whole bunch of udev rules
<infinisil>
But they might not be complete which is my guess
<ToxicFrog>
Hmm. Ok, I'm going to have to be more clever about this and probably use linkFarm after all, because without it ln gives me things like "mydpng3r7id2hpwpl7zl67mf4i8hw28i-zfs_usage_"
<fresheyeball>
infinisil: yesir
<ToxicFrog>
And since in munin the name of the plugin file is significant, this is bad news bears
<infinisil>
Oh actually, the udev rules are rather small
<infinisil>
Just a couple lines
<fresheyeball>
the pen, touch surface and other things do work
<fresheyeball>
just not the physical hardware buttons
<fresheyeball>
and without those it's not really a usable tablet
orivej has joined #nixos
chimay has quit [Ping timeout: 250 seconds]
<{^_^}>
[nixpkgs] @Ericson2314 opened pull request #51957 → pkgsStatic for 18.09 → https://git.io/fpdXe
<fresheyeball>
infinisil: I don't see any udev in there
<infinisil>
fresheyeball: vim $(nix-build --no-out-link '<nixpkgs>' -A xf86_input_wacom)/lib/udev/rules.d/wacom.rules
<basvandijk>
I have PR #51256 that causes 1308 packages to be rebuild (according to nox-review). That's a bit too much for my laptop to work through. What's the best way to test this?
<qyliss>
basvandijk: so change the PR base to staging, and then don't worry about it too much
<fresheyeball>
infinisil: doesn't look like it
<infinisil>
You have the wacom module enabled?
<fresheyeball>
infinisil: yes
<basvandijk>
qyliss: ok thanks. I think the PR is pretty harmless. It just upgrades pythonPackages.certifi to its latest version. Will do the rebase and merge.
<fresheyeball>
shite
<fresheyeball>
I was on the wrong terminal
<fresheyeball>
sec
<fresheyeball>
ok yes, I see wacom.rules in there
<qyliss>
basvandijk: yeah, PR looks fine to me, fwiw
<fresheyeball>
infinisil: ok so I have those rules
<fresheyeball>
but they might not be the right rules
<fresheyeball>
how does one determine the right rules?
jperras has joined #nixos
<infinisil>
learn to use udevadm, read up on udev rules, something like that
<fresheyeball>
ok
NKataDelYoda has joined #nixos
<infinisil>
sudo udevadm monitor is most important command
Diagon has joined #nixos
<NKataDelYoda>
Hey all! I was here yesterday with an issue related to `node2nix` and a Node project with certain binaries that were failing to build. I've dug deeper into the packages, the nix store, nix-build processes etc. but I'm still a little lost. If you're familiar with Nix builds and Node please lend a hand: https://github.com/svanderburg/node2nix/issues/123 ~ Thank you!
<{^_^}>
svanderburg/node2nix#123 (by BenSchZA, 1 day ago, open): nix-build fails to build binaries: getaddrinfo ENOTFOUND raw.githubusercontent.com raw.githubusercontent.com:443
<gchristensen>
NKataDelYoda: sounds from the issue title that the build is trying to fetch from the internet, but is failing because Nix doesn't allow that
psiconauta has quit [Quit: Cya]
<{^_^}>
[nixpkgs] @Twey opened pull request #51960 → libcxxabi: also install libc++abi.a → https://git.io/fpdy2
<NKataDelYoda>
gchristensen: I think you're right - so I'd imagine I'd need to set up a Nix override of sorts. I would have hoped `node2nix` would have handled setting up the configuration files properly. For now I just need assistance setting it up manually I guess :) I'll keep at it.
<NKataDelYoda>
There must be another example of someone needing to build those dependancies in a Node project. They're pretty common.
<Twey>
cbarrett: nix-shell -p '(import <unstable> { }).hello' will work though
<NKataDelYoda>
gchristensen: Alternatively, if I could build those binaries in a mutable location like my home directory that'd be great, at least for a temporary solution.
mr_noobs has joined #nixos
<Twey>
What's the difference between stdenv.extraBuildInputs and stdenv.defaultBuildInputs?
nDuff has joined #nixos
<{^_^}>
[nixpkgs] @volth opened pull request #51961 → freebind: init at 2017-12-27 → https://git.io/fpdSY
<ToxicFrog>
Where is runCommand documented?
<ToxicFrog>
Or is it another one that's defined in trivial-builders.nix but not in any of the manuals?
<Twey>
There are a lot of *examples* of it in the nixpkgs manual
<Twey>
But no explanation I think
<slabity>
Lots of missing documentation right now when it comes to Nix
<Twey>
Well, nixpkgs
<Twey>
Nix is pretty well documented, but nixpkgs keeps changing under us. :)
<Twey>
The nixpkgs manual is… aspirational :þ
mr_noobs has quit [Ping timeout: 268 seconds]
<leotaku>
How can I check why a specific nixops deployment depends on something?
mr_noobs has joined #nixos
<nDuff>
What restrictions are there on which nix store contents can be accessed by a sandboxed build? I have a runCommand failing with an ENOENT trying to read a file that's clearly there in the store; I'm wondering if maybe it needs to be listed in buildInputs to be accessible.
leotaku has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @Twey opened pull request #51966 → makeStaticBinaries: add a static glibc when performing a mkDerivation → https://git.io/fpd9Q
drakonis has joined #nixos
<Twey>
nDuff: I think the usual rules about what's considered to be an input to the derivation apply?
grp has joined #nixos
sysadmin_wannabe has joined #nixos
<Twey>
nDuff: i.e. anything that's in the environment is considered to be an input, and the sandbox has visibility of anything that's an input
sysadmin_wannabe is now known as psiconauta
<grp>
nix search doesn't list haskellPackages. How do I make it list them?
<grp>
it does list python packages and what not, but not haskell
<nDuff>
Ahh. So in the text of the script but not the environment doesn't count. That explains things.
<Twey>
grp: -A nix[os|pkgs].haskellPackages
<grp>
nope, flag not accepted
<Twey>
That's odd, `nix-env -qaA nixos.haskellPackages` works for me
<grp>
'cause you are using nix-env, I said "nix search"
<Twey>
nDuff: Yeah, it's not safe to embed absolute store paths into the text anyway
<Twey>
grp: Apologies, misinterpreted :)
<Twey>
nDuff: You can use *path literals* in the text of your derivation, e.g. buildPhase = "bash ${./my-cool-script.sh}"
<Twey>
nDuff: And then it's an input
<nDuff>
Twey, ...sticky thing is that I'm using an attrset to map things from the store to their location in the generated build product. So the ability to turn a list or a single key/value doesn't work, because I'm trying to copy N things in (one per value)
<nDuff>
...so the current workaround is to pass builtins.attrValues theMap out-of-band, but then generate code referencing those things anyhow.
<catern>
hey #nixos, is there a way to provide a channel for an overlay?
<Twey>
nDuff: There are a few ways to pass an attrset to a bash script, but none of them very nice
<Twey>
nDuff: If you have some safe separators you can do a string of "name1=value1 name2=value2" pairs
<Twey>
nDuff: Or you can use indirect references on the bash side and define something like attrsetname_keyname=valuename and pass a list of keys
<Twey>
nDuff: Then in bash you can: declare -A attrsetname; for keyname in attrsetkeys; do name="attrsetname_$keyname" attrset[$keyname]="${!name}"; done
drakonis_ has joined #nixos
<Twey>
Sorry, attrsetname[$keyname]=…
basvandijk has quit [Ping timeout: 268 seconds]
<fresheyeball>
infinisil: so I am trying to add my own rules file
<fresheyeball>
I am trying to add it with pkgs.writeTextFile in services.udev.packages
<infinisil>
fresheyeball: You can just use `services.udev.extraRules`
<nDuff>
...hmmm; using show-derivation, the inputSrcs entries for the items I'm trying to pass in have an extra hash added (so as opposed to /nix/store/<hash>-<name>, they're now /nix/store/<hash2>-<hash1>-<name>, but with the same content.
drakonis has quit [Ping timeout: 246 seconds]
lsyoyom has joined #nixos
drakonis has joined #nixos
<Twey>
nDuff: If you go the string-of-pairs route you can extract them as: declare -A dict; for kv in $attrsetname; do [[ "x$kv" =~ x([^=]+)=(.*) ]] && dict[${BASH_REMATCH[1]}]="${BASH_REMATCH[2]}"; done
drakonis_ has quit [Read error: Connection reset by peer]
<Twey>
nDuff: That's because you've used them as inputs
<Twey>
nDuff: So they've been copied to the store; their names are their original filenames (including their original hashes) and they've had a hash prepended, like all store elements
<Twey>
nDuff: You don't want to reference absolute store paths, probably
<catern>
is there a concise explanation of how .nix-defexpr is actually used??
<catern>
it seems very confusing what is actually going on
<Twey>
nDuff: Instead, reference the derivation expressions that generated those output paths
kvda has joined #nixos
<Twey>
nDuff: The point of the hashes is precisely that you *shouldn't* put them into your expressions :)
<nDuff>
I'm not putting them into my expressions myself :)
<nDuff>
I've got a custom fetcher, modeled off of Target's nix-fetchers, that emits a store location with its output.
<nDuff>
(what that "fetcher" is *actually* doing is a code-signing operation that requires access to credentials that can't be passed to an unprivileged builder process).
<gchristensen>
oh COOL nDuff!
<nDuff>
...so the place where I'm getting into trouble is trying to use the output from that fetcher in another derivation.
<Twey>
nDuff: Useful :)
<Twey>
nDuff: You can always make a derivation that just renames the files, if the double hashes make you sad
asymmetric_ has joined #nixos
<Twey>
The example on nix-fetchers will result in double-hashed files
<Twey>
Errr
<Twey>
Wait, no it won't
<Twey>
… will it? *tries*
<{^_^}>
[nixpkgs] @Mic92 merged pull request #51930 → llvm 7: Allow for specifying an arbitrary list of backends to build → https://git.io/fpd8d
<catern>
nDuff: you can use storePath I think to convert a string into a store path
<catern>
or something like that, I don't recall exactly
vk3wtf has quit [Quit: WeeChat 2.3]
drakonis has quit [Ping timeout: 252 seconds]
asymmetric has quit [Ping timeout: 245 seconds]
vk3wtf has joined #nixos
<catern>
(mm, I really don't like the nix-fetchers plugin approach :) it would be much better to have a user-specific proxy process for the nix daemon, which has user credentials, which knows to intercept certain low-level derivations and build them itself and addToStore them)
<nDuff>
There's definitely a lot to dislike about the fetcher approach, insofar as one ends up jumping back and forth between evaluation and execution stages
<nDuff>
but it's something I was able to throw together quickly, and there's value to that.
grp has quit [Quit: box shutting down...]
<catern>
yes, it's fine, my approach needs a lot of up-front work which I haven't really shared yet
<nDuff>
De we have clear documentation for how Nix converts lists to stringified form for environment variables? Handling of the simple case is clearly "just combine entries with spaces", but that doesn't say anything about what (if any) escaping &c is done when the entries contain literal whitespace themselves.
aanderse has quit [Read error: Connection reset by peer]
* nDuff
would *hope* that those strings are, say, given eval-safe escaping (or escaping that xargs 'printf '%s\0' could convert to a NUL-delimited list), but would like to actually see a documented guarantee somewhere.
cyounkins has joined #nixos
dermetfan has joined #nixos
Thra11 has quit [Ping timeout: 272 seconds]
alex`` has quit [Ping timeout: 250 seconds]
alex`` has joined #nixos
asymmetric_ has quit [Ping timeout: 250 seconds]
graphene has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @worldofpeace pushed 2 commits to master: https://git.io/fpdbA
<Synthetica>
When I do `nix-instantiate --eval --strict --json somefile` and that file has relative file links in it, I get /nix/store paths that aren't actually in the store. When I remove the --json flag, I just get the absolute paths. Any pointers? (I want to use --json, because I want to use the output externally)
<ottidmes>
fresheyeball: did you already check what other distros do for the device?
sysadmin_wannabe has quit [Client Quit]
Ariakenom has quit [Quit: Leaving]
sysadmin_wannabe has joined #nixos
sysadmin_wannabe is now known as psiconauta
<ottidmes>
fresheyeball: I dont know the details of your problems outside getting Linux to work on a Wacom tablet, but for example the Arch Linux wiki seems to have a lot of details covered, including the buttons: https://wiki.archlinux.org/index.php/wacom_tablet
<{^_^}>
[nixpkgs] @Ericson2314 pushed 2 commits to release-18.09: https://git.io/fpdhX
<rardiol1>
Is someone here familiar with how the nix binary substituter signature checker works? I managed to get nix and nix-serve to give the same "cache.nixos.org-1:wsywhHheqyPKMux6N/vbbcN4Fmy0Joi+qaEhe7F1gZpfnZkV4Grd4poFZm/gSNL79NrN9Nuw+HjQDzMJ/RRqDQ==" line as cache.nixos.org when curling the .narinfo, but nix build stills complains it can't get a valid signature.
cyounkin_ has quit [Remote host closed the connection]
<ottidmes>
rardiol1: I am sorry I cannot help you, but were you able to extend the nix command line through the use of Perl, or did I misunderstood your Perl question? I ask, because I am curious about it myself and because I know of someone who asked about it recently
<fresheyeball>
ottidmes: thanks!
<kvda>
Is there a "NixOS way" of managing data/config?
<hyper_ch>
nginx is manage through configuration.nix
<fresheyeball>
rardiol1++
<{^_^}>
rardiol1's karma got increased to 1
goibhniu has quit [Ping timeout: 272 seconds]
<hyper_ch>
not sure what you mean with db management
<kvda>
Pardon I mean migrations, init etc. So you bring up a system with the nix derivation then you have a script running to make sure your db is in sync?
<hyper_ch>
still no idea what you mean
<nDuff>
kvda, ...which specific kind of database are you talking about?
<rardiol1>
ottidmes: I expanded the nix perl API and used the extra API on nix-serve
jackdk has joined #nixos
<kvda>
hyper_ch nDuff, you have a project that uses a db, regardless of which db, you want to pre-populate it with some data, and keep it around from revision to revision
<nDuff>
so an application-layer database deployed as part of a service, then?
o1lo01ol1o has joined #nixos
<rardiol1>
fresheyeball: can I ask for karma on the main account ( rardiol ) :P ? I'm logged on both on both main and the substituter. thanks
<nDuff>
kvda, ...I've seen some tooling for state management for those available I think in Disnix, though I didn't look very closely (wasn't applicable to my own use cases).
<hyper_ch>
I still fail to see what the problem is
<ottidmes>
rardiol1: ah, not exactly what I was searching for, but interesting nonetheless, thank you for sharing it!
<o1lo01ol1o>
how can I set the substitutes attribute in /etc/nix/nix.conf from /etc/nixos/configuration.nix? I'm told nix.substitutes doesn't exist.
<nDuff>
kvda, ...but I really do think it's false to claim that database population and migration logic is universal -- what migrations look like is application-dependent by nature.
<hyper_ch>
kvda: I just can't see the problem or what you're trying to achieve
<ottidmes>
rardiol++
<{^_^}>
rardiol's karma got increased to 1
<kvda>
nDuff that's correct. it's state management essentially.
<rardiol1>
ottidmes: Did you have a better solution in mind? I just tried to expand nix-serve the obvious way
<kvda>
hyper_ch i'm not sure i can describe it any other way. nDuff might be?
<kvda>
nDuff I think that's my answer, it's not something that NixOS provides for. And that's fair.. I'm just checking if there's some notion of it addressing that..
<kvda>
Thanks both nDuff hyper_ch
<nDuff>
*nod*, nothing I know of in NixOS proper, and the support elsewhere in the *Nix ecosystem is maybe not fully-baked.
<nDuff>
s/is maybe not/exists but is maybe not/
<nDuff>
see https://nixos.org/disnix/ for a general intro to disnix, which does at least have a concept of database migrations &c.
<hyper_ch>
kvda: if you want to have different versions of the db, why not just use zfs dataset for it?
<kvda>
hyper_ch it's not db the software, it's the db the data.
<hyper_ch>
I fail to understand
<kvda>
For example you're running and application with a Postgres 7. Youre application gets upgraded to POstgres 8. You need to migrate your old data that's on all the systems from 7 to 8
<ottidmes>
rardiol1: I believe nix serve has become somewhat obsolete since Nix 2, its basically a HTTP wrapper around something that can now be done more directly with SSH and by connecting to the nix-daemon of the other machine, but I remember having trouble with it because my substituters were not always online, causing it to fail, so I had to supply the config dynamically by creating wrappers around the relevant
<ottidmes>
executables, and then still did not work the way I expected, so I ended up with using nixops instead, but that would depend on your use case of course
<hyper_ch>
kvda: ah ok
<nDuff>
kvda, ...well, there *is* a NixOS story for that specific case, but it just relies on continuing supprort for PG 7 even in systems that would use 8 on new installs
rfold has quit [Quit: doei]
<kvda>
Does NixOS offer 'protection' from moving through revisions (going back would require a reverse migration)
<nDuff>
kvda, ...such that you don't have datastores replaced with versions that can't read their data without affirmative user involvement/consent.
<hyper_ch>
isn't that what the stateSytemVersion is for?
<nDuff>
Exactly what I was just describing :)
<hyper_ch>
system.stateVersion
<nDuff>
kvda, ...so, stateSystemVersion (or its theoretical future more fine-grained replacement) stops you from having applications (where the derivations were written by someone who had this in mind) swapped out under you without revving the version -- but that doesn't actually automate performing migrations, it just stops there from being package updates that would require a migration behind your back.
<kvda>
Interesting, I'm not fully understanding how this address the issues but doing some more reading on it
<kvda>
You only change it when NixOS release notes say to do so?
<nDuff>
kvda, ...see, I thought you were talking about application-level migrations, not datastore-layer migrations.
<{^_^}>
[nixops] @aszlig merged pull request #1032 → hetzner: Don't use localCommands, set interface device of default gateway → https://git.io/fxQmm
<kvda>
One more question, just so that I got this right, NixOS promises that you can replicate an env locally for dev purposes (nix-shell) and use the same to deploy to multiple env?
<kvda>
*multiple remote servers/cloud etc
<kvda>
(Because this sounds ideal)
<hyper_ch>
you mean nixops?
<kvda>
Yep deploying through nixops
<hyper_ch>
never used it... I'm just an average computer user... but some people here manage loads of servers through nixops
<kvda>
hyper_ch you just NixOS a desktop?
<kvda>
*you use
<hyper_ch>
and on some servers
<hyper_ch>
but all setup traditionally with nixos live usb
<kvda>
Ah I see. For me I'm looking at it as a replacement for Docker
<hyper_ch>
:)
<nDuff>
One can directly expose a Nix closure as a Docker image
<hyper_ch>
don't ask me... never used docker
<nDuff>
so it's pretty easy to go between those worlds
<kvda>
nDuff I gather that you don't need Docker at all
<nDuff>
agreed
<nDuff>
I use Docker where it eases integration with other, non-Nix-based, groups.
<kvda>
I don't see the need for it from what I've read. Nix seems to do it better
<kvda>
nDuff that makes a lot of sense, it's nice that you can do that
<hyper_ch>
docker can still be usefull for stuff not packaged in nix
<kvda>
nDuff do you use a shared nix/store in your team?
<kvda>
hyper_ch good point
<nDuff>
kvda, ...to an extent; we have a canonical source-of-record host.
<kvda>
is that a machine you just have in the office?
<nDuff>
well, for the moment. Going to be another instance owned by a different team eventually, in a segmented-off network.
<nDuff>
Box sitting in a lab I've never been to, rather.
<kvda>
good stuff, that's where I want to take things to
<kvda>
as well
<nDuff>
48-core, 512GB-of-RAM host, backups managed by Borg, on-disk deduplication with Bees.
<hyper_ch>
why not just use zfs?
<nDuff>
hyper_ch, ...we've had bad experiences with ZFS dedup in the past. There's a certain amount of institutional memory that argues against it.
ntd has quit [Quit: ntd]
<hyper_ch>
never used dedup :)
<nDuff>
also, we have licensing-based reasons to want to get experience/familiarity with btrfs for places where we ship binaries around, so the CDDL/GPL conflict is problematic.
<hyper_ch>
btrfs... ieeks
<nDuff>
*shrug*. There are enough people putting money into it that it's getting better over time.
<hyper_ch>
after 3x having complete dataloss with btrfs I just learnt my lesson
<hyper_ch>
simple power outage renders btrfs completely useless
<nDuff>
not today.
hamishmack has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<hyper_ch>
it did so 1 1/2 years ago
<nDuff>
and I say that as someone who had a machine hard-locking and getting cold-booted while under heavy write load on a very regular basis within the last few months.
<hyper_ch>
I'm burnt by btrfs :)
<hyper_ch>
also it's nice to have remotely unlockable native encrypted root zfs :)
drakonis has quit [Ping timeout: 250 seconds]
<nDuff>
ZFS has a lot of very nice properties. If it weren't for the licensing being a mess... but it is.
<hyper_ch>
yeah.... :( that's a bit a sour point of zfs
* nDuff
was acquired by someone with enough money to be an attractive litigation target, incl. for an entity the size of Oracle.
<hyper_ch>
nDuff: you were acquired? sounds like human trafficking ;)
<nDuff>
...not that I ever knew Oracle to stay clear of trying to extract the big bucks from penniless startups foolish enough to use their products either.
erasmas has quit [Quit: leaving]
<hyper_ch>
I don't like Oracle
<hyper_ch>
still sad that Sun was bought by Oracle :(
<Synthetica>
I'm pinning `nixpkgs` like described in http://www.haskellforall.com/2018/08/nixos-in-production.html Is there any way I can still `nixos-rebuild switch` into such a configuration, instead of `nix build && sudo ./result/bin/switch-to-configuration switch`?
<elvishjerricco>
Synthetica: The easiest way is to have a local copy of nixpkgs and just add `nixpkgs=/path/to/nixpkgs` to your `NIX_PATH`
<Synthetica>
Ouch, that was what I was trying to avoid 😓
<Synthetica>
Is there a less easy way that avoids that?
jabranham has quit [Quit: ERC (IRC client for Emacs 27.0.50)]
<elvishjerricco>
Synthetica: Which part do you not like? The local copy or the NIX_PATH setting?
<elvishjerricco>
Either can be avoided, but avoiding both will require some command line trickery.
hedning has quit [Quit: hedning]
<Synthetica>
I don't like either tbh
<Synthetica>
Just feels like it should be so avoidable, because you have an instance of nixpkgs _right there_
orivej has quit [Ping timeout: 244 seconds]
<elvishjerricco>
Synthetica: Well, the options are: Set `NIX_PATH`, either manually in your terminal or by setting `nix.nixPath = [...];`, or pass `-I nixpkgs=...` on the CLI
<freeman42x[nix]>
anyone know how to configure Agda standard-library? I installed it using the AgdaStdlib attribute
<elvishjerricco>
Synthetica: Personally, I just have nixpkgs as a submodule in my dotfiles git repo, and I use a wrapper script that has `-I nixpkgs=./nixpkgs`