<clever>
gchristensen: is the nameserver written in lua?
<clever>
freeluv60spropag: ive been using https://dns.he.net/ for free dns, but aws is another service i use often
<clever>
i dont know a single thing about forth :P
<clever>
bemeurer: ultimately, you can just do a single nix-build command, and it will build the entire emulator, and kernel, then build a bash script to run the emulator on the kernel!
<clever>
or `nix-build -A foo` to build just one thing
<clever>
bemeurer: so you can run `nix repl default.nix` and then eval them
<clever>
bemeurer: that exposes various things, as a set that default.nix returns
<clever>
so i need to take that thing, override just the rust inside it, then re-assemble a new thing that has the same structure
<clever>
bemeurer: and the rust channel thing returns such a set
<clever>
bemeurer: makeRustPlatform needs a special set, containing .rust, .cargo, and some others
<clever>
bemeurer: :D
<clever>
adamt: nope
<clever>
bemeurer: nix.distributedBuilds+nix.buildMachines is basically distcc
<clever>
bemeurer: meant to say nix.binaryCaches = lib.mkForce [];
<clever>
bemeurer: oh oops, wrong key
<clever>
and it will stop using all caches
<clever>
bemeurer: just set nix.binaryCachePublicKeys = lib.mkForce []; in your configuration.nix
<clever>
bemeurer: you could simply turn off the binary cache, and build the world without the help of hydra.nixos.org!
<clever>
why do you want to change your CFLAGS?
<clever>
i dont think its really documented, but it should be possible
<clever>
with the proper overrides, or changes to nixpkgs, you can
<clever>
i was a gentoo user, prior to discovering nixos
<clever>
the nix file deals with fetching a linux kernel, compiling the haskel code (with musl, as a fully static binary), and then buildint an initrd with that code as /init
<clever>
teto: also note, if you leave the sha256 unchanged, nix assumes the output is unchanged, and wont re-run the derivation, no matter how much you change the postFetch
<clever>
teto: but otherwise, it appears to be working normally
<clever>
teto: your overlay does a `exit 1` so the build fails
<clever>
yl[m]: the example from nixos uses a pkgsModule to set nixpkgs.system
<clever>
yl[m]: it can also be raw functions
<clever>
teto: and what is the error when you try to build with that overlay?
<clever>
teto: can you pastebin the show-derivation output?
<clever>
teto: so postFetch may need to `cd $out` first
<clever>
teto: the body of the fetch command usually outputs directly to $out
<clever>
teto: run `nix show-derivation /nix/store/foo.drv` on the drv that fails to build
<clever>
yl: oh, and now that it is using the module framework, you could do: a = lib.mkMerge [ [1] [2] ]; i think
<clever>
and imports is recursive, so any module can define more modules to load
<clever>
yl: you can also set a default value inside the mkOption block, which will vanish if the config is set anywhere
<clever>
yl: nixos is just repeating that pattern, across 100's of files, until you have a full distro
<clever>
yl: yep
<clever>
yl: example.nix defines a to be an option, that is a list of ints, and then exrp.nix and expr2.nix set a to different things, [1] and [2], default.nix then merges all 3 files together, and looks at config.a
<clever>
gillmanash: then its in the $out/nix-support/propagated-* of something of something else the python-user-env depends on
<clever>
yl: the module system is fairly easy to work with, let me toss together an example...
<clever>
gillmanash: nix already tells you the dependency chain, when it prints everything that failed to build, in the order they depend on eachother
<clever>
yl: both // and recursiveUpdate will overwrite the list, not merge it, so you would need to either use a custom recursive function, or the module framework
<clever>
gillmanash: you can also give it storepaths to finished builds
<clever>
gillmanash: it operates on the runtine closure, which is only known after the build is finished
<clever>
but it has since been fixed
<clever>
ddellacosta: something was updated for a newer ghc, and it broke older ghc's
<clever>
ddellacosta: already fixed in nixos-unstable
<clever>
yl: it only works if it passed thru the module framework
<clever>
file.out 157,040 x /nix/store/8kn3pq1aks4lclicfa56ifgi6frvwxl4-file-5.30/lib/libmagic.so.1.0.0
<clever>
nix-locate libmagic
<clever>
,locate libmagic
<clever>
python things may break if you use one package from a different channel, so it may help to get the entire set of python things from staging-next
<clever>
slightly modified though, because staging-next doesnt have a channel
<clever>
,unstable
<clever>
gillmanash: its a fairly common pattern
<clever>
so you may want to replace staging-next with the current git rev
<clever>
gillmanash: but that will re-fetch the latest staging-next every time you eval the expression
<clever>
monotux: nix does a lot of fun things, like giving a function its own return value
<clever>
monotux: thats more about how you would fix nixpkgs properly, but you can use the ugly hostname trick while waiting for nixos-unstable to update
<clever>
hyper_ch: snapshots alone dont help you when trim just deletes the data a snapshot refers to
<clever>
hyper_ch: trim can have weird edgecase bugs, bug luckily zfs has scrub, so you can audit all data to verify its still there
<clever>
hyper_ch: thought you where asking for different config, about what i mentioned above
<clever>
hyper_ch: oh, yeah, i got the link
<clever>
hyper_ch: that boot stuff is from my pre-nixos days, so it wont be of much use
<clever>
elvishjerricco: yeah, the entire os, and all user-data, lived in ra,
<clever>
gchristensen: but nixos makes it trivial to exclude the "os" from that whole process, and the user-data is much easier to deal with
<clever>
gchristensen: and then i would optionally re-compress it and write-to-disk, at shutdown
<clever>
gchristensen: ive manually done similar before with gentoo, my entire rootfs was a squashfs, that i would copy to ram on bootup
<clever>
gchristensen: i had another crazy idea recently, what if the initrd used `nix copy` to copy the closure of the active generation, to a tmpfs, and then ejected the boot media
<clever>
-rw-r--r-- 1 root root 507 Feb 21 01:34 /var/lib/nixos/gid-map
<clever>
-rw-r--r-- 1 root root 897 Feb 21 01:34 /var/lib/nixos/uid-map
<clever>
hyper_ch: got a link to the nixos module to apply all the patches?
<clever>
slack1256: thats usually done with a nixos module that handles it for you, like programs.light.enable
<clever>
vaibhavsagar: you could just run docker on the real host, and then expose /var/run/docker.sock to the nixos container?
<clever>
samrose: what does `file result/bin/holochain` report?
<clever>
samrose: what is the exact error you get when you run that binary?
<clever>
samrose: thats a missing library, not a permisison error
<clever>
samrose: you need to add zmq to the rpath
2019-02-26
<clever>
hyperfekt: correct, nixos-rebuild is calling eval-config.nix before it loads configuration.nix
<clever>
hyperfekt: it may be simpler to call <nixpkgs/nixos/lib/eval-config.nix> and pass it a moduleList param, then to disabledModules every single thing
<clever>
asymmetric: currentSystem, can break if you are trying to configure a cross-build from darwin->windows, while doing the eval on linux (hydra)
<clever>
asymmetric: not really
<clever>
> stdenv.isDarwin
<clever>
> stdenv.isLinux
<clever>
asymmetric: from nix or bash?
<clever>
GryphOne: its a text file, not a binary
<clever>
eyJhb: is it using this syscall?
<clever>
int isatty(int fd);
<clever>
eyJhb: strace it?
<clever>
petersjt014: its due to a lack of NCG, and bugs in the llvm backend
<clever>
petersjt014: i also looked at ghc on arm (aarch64 to be specific), and it fails to build if you specify more then -j1
<clever>
therealwaphire[m: sure
<clever>
:D
<clever>
lol
<clever>
therealwaphire[m: i mainly use it with kexec, which lets me build a tarball that can boot nixos on any linux box
<clever>
main problem, is that the params like nvme/uefi, are hard-coded into it, so you have to rebuild the image if you change them
<clever>
or build a custom livecd image, with justdoit pre-installed
<clever>
therealwaphire[m: edit configuration.nix of the livecd, and nixos-rebuild
<clever>
therealwaphire[m: and when the installer is built, it will generate a justdoit bash script, that lands in $PATH at runtime
<clever>
therealwaphire[m: justdoit.nix is a nixos module, you add it to the imports section of an "installer" configuration.nix, and also set options like kexec.justdoit.nvme = true;
<clever>
edef: not-os is another option, just start over from basically nothing
<clever>
such an override would prevent nixos from activating them, which also works, lol
<clever>
edef: if any pre-existing lvm exist on the disk your trying to nuke
<clever>
edef: nixos will also activate all lvm's, so you must `vgchange -a n` or it will fail to delete those partitions