<clever>
vika_nezrimaya: the top half of a floor fan is just jammed into the shelving unit, above the open case, lol
<clever>
vika_nezrimaya: i thought it might be related to the summer heat, and stuck an extra fan in it (tech support gore style!) but its still happening
<clever>
vika_nezrimaya: yeah, some things do fail every now and then
<clever>
ldlework: cp --no-preserve=mode -r
<clever>
ldlework: cp preserves the permissions, one minute
<clever>
the problem is that it tends to happen in bursts, sometimes back to back, so it keeps re-breaking
<clever>
vika_nezrimaya: but it recovers after ~30 seconds
<clever>
vika_nezrimaya: both the lan and wan cards are failing, so either the router looses internet, or the house looses the router, lol
<clever>
and lately, the network card has been having eratic hanging issues
<clever>
the cpu's are pretty old, and its not dual core, its dual socket!
<clever>
Aug 25 17:58:42 router kernel: e1000 0000:04:02.1 enp4s2f1: Detected Tx Unit Hang
<clever>
model name : Intel(R) Xeon(TM) CPU 3.20GHz
<clever>
then i fixed it
<clever>
vika_nezrimaya: its actually an old machine from my dads work, that had the power supply fail, so it was replaced
<clever>
vika_nezrimaya: a 2U server with a pair of xeon cpu's (dual socket) and 8gig of ecc ram
<clever>
vika_nezrimaya: nas.nix and router.nix take the place of configuration.nix
<clever>
vika_nezrimaya: next fun step is deploying to it with nixops and the none backend
<clever>
but if you only run make yourself in the shell, then you can just do only `make` in `nix-shell`
<clever>
vvbb[m]: if qtcreator is going to be running `make`, then you need to run it within nix-shell
<clever>
vvbb[m]: the makefile also has to use $CFLAGS when building things
<clever>
vvbb[m]: then put CFLAGS=$(pkg-config --cflags cairo) into your Makefile
<clever>
vvbb[m]: create a default.nix with these contents: with import <nixpkgs> {}; stdenv.mkDerivation { name = "name"; buildInputs = [ cairo pkgconfig ]; }
<clever>
yeah
<clever>
and the compiler toolchain for producing compatible binaries
<clever>
but if you have a static ELF file that fits the cpu arch, you dont care
<clever>
angerman: the NDK is basically the libraries you link to (which live in /system/lib) and the headers for those libraries
<clever>
you can ignore the entire android NDK issue
<clever>
angerman: since that would open up android fairly easily
<clever>
angerman: id be interested in static arm builds
<clever>
dang thats some high lag
<clever>
,
<clever>
ldlework: grep nixpkgs for `etc/ssl/certs/ca-bundle.crt`
<clever>
trust*
<clever>
ldlework: the sandbox is stopping openssl from finding the default ca cert list, you have to set an env var to tell it who to tust
<clever>
ldlework: and this tweet explains my secret :P
<clever>
2019-08-19 14:55:57 < pie_> Profpatsch: sigfig confirms why clever is so good v
<clever>
ldlework: some env var has to be set to ${cacert}/etc/ssl/certs/ca-bundle.crt
<clever>
turion: and `runhaskell Setup.hs configure --enable-tests`
<clever>
turion: runhaskell Setup.hs test
<clever>
ldlework: oh, ssl, one minute
<clever>
ldlework: you must figure out how to force it to stop doing that
<clever>
ldlework: i think its trying to query the package db, to know what the latest version is, and if it can just use what its finding on disk, or has to update
<clever>
and then, `ghci -c "runhaskell Setup.hs repl"` to pull up ghci
<clever>
`runhaskell Setup.hs repl` is then `cabal repl`
<clever>
`runhaskell Setup.hs` is identical to `cabal`, but will get the right version
<clever>
then you dont have to remember how it works, you just `cd foo ; nix-shell`
<clever>
but its simpler to just make a `(import ../.).foo.env` in `foo/shell.nix`
<clever>
then nix-shell ../shell.nix --argstr project foo
<clever>
{ project }: (import ./.).${project}.env
<clever>
you could
<clever>
and then a shell.nix goes into each subdir
<clever>
turion: the default.nix goes in the root dir, and loads all of the cabal files, like i showed
<clever>
then your shell.nix for each subdir, would be something like: (import ../.).foo.env
<clever>
turion: repeat the foo=...; for each directory with a cabal file
<clever>
so you must use pkgconfig to "discover" the right -I path
<clever>
which breaks nix :P
<clever>
jollyjester: to solve the same problem nix solves
<clever>
jollyjester: the cairo devs decided to put the headers in $out/include/cairo/cairo.h
<clever>
ldlework: yeah, if you dont delete result, nix-collect-garbage wont be able to delete /nix/store/3h6w6dbai6ph3mm8rzrqy330cxf2lgkf-disinfo-dependencies
<clever>
ldlework: do that now
<clever>
iqubic`: variable = "value";
<clever>
ldlework: did you delete the result symlink and nix-collect-garbage?
<clever>
sphalerite: ah, messing with nix-channel --add like you showed is probably the best option then
<clever>
sphalerite: -I nixpkgs=foo
<clever>
sphalerite: does it need to be a channel?
<clever>
ldlework: can you gist all of the nix files?
<clever>
ldlework: thats why you have to split it into 2 pieces, download and build
<clever>
ldlework: so nix is trusting your lie, and ignoring all changes
<clever>
ldlework: then you set outputHash on the main build, which is a promise that the output will be the same as last time
<clever>
ldlework: that you didnt make false assumptions about how reproducible it is
<clever>
ldlework: make a change to the source code so it has to build again
<clever>
ldlework: and-or delete result and run a GC
<clever>
ldlework: youll want to make a change to the source as well
<clever>
ldlework: now try building it with: --option repeat 9
<clever>
aanderse: so mkForce cant cant override things, and just inserts a 2nd element into the list
<clever>
aanderse: i think i see the problem, behind the scenes, environment.etc."foo" turns into environment.etc = [ { name = "foo"; source = ...; } ];
<clever>
LouisDK: you cant directly read services.xserver from default.nix, so it needs to be an argument to receive via .override
<clever>
LouisDK: i would make a single mythtv default.nix, that has an option like withNvidia ? false in its args, and then callPackage it twice, with it set to true or false
<clever>
still get an assertion in ghc, when on a mac
<clever>
assertion failed at /private/var/root/michael/nixpkgs/pkgs/development/compilers/ghc/8.2.2-binary.nix:7:1
<clever>
but i can also see qemu-user helping, to let you run template haskell for proper cross
<clever>
qemu-user lets you cheat a bit
<clever>
there was no proper cross in my setup, it was all "native", either on an aarch64 kernel, or qemu-user-aarch64
<clever>
angerman: i tried native (and qemu) arm builds a few months ago, and thats when i discovered (with your help) that it lacks native codegen, and the llvm backend is a bit segfaulty under -j>1