2017-05-20
23:43
<
clever >
that casts a string to a path i think
23:41
<
clever >
and $out's hash depends on the path to those commands (the shell)
23:41
<
clever >
so it has to use a normal "run these commands" derivation to "compile" the file
23:41
<
clever >
its more of an issue that nix has no write-file primitive
23:40
<
clever >
so when the aarch64 does its own native build, it has a different path, and has to rebuild everything that depends on the text file
23:40
<
clever >
ben: but then the $out path wont be the same
23:40
<
clever >
ben: in theory, you can mess with things to always use the hostPkgs.runCommand in here, so it wont try to cross-compile the textfile
23:38
<
clever >
ben: the writeTextFile derivation uses the shell from the target platform to run echo
23:38
<
clever >
johnramsden: then it will overwrite file1.conf every time you open a shell, updating it to what the last nixos-rebuild made
23:37
<
clever >
johnramsden: butif you do something like environment.interactiveShellInit = "cp -vi ${file1} ~/.config/foo/bar/file1.conf";
23:37
<
clever >
johnramsden: because the language is evaluated lazily
23:36
<
clever >
johnramsden: if you dont assign the result of the map to anything, nix will not even run it
23:36
<
clever >
johnramsden: so you could put a command that writes to $HOME/.config/ in the spots where i set B thru F
23:35
<
clever >
johnramsden: then writes things wherever it wants
23:35
<
clever >
johnramsden: the closest you can do, is make a script that lands in /etc/profile, and runs upon login
23:34
<
clever >
johnramsden: and then the function returns the /nix/store/<hash>-<name> part
23:34
<
clever >
johnramsden: so it will leave files at locations like /nix/store/<hash>-<name>/home/user/.config/libvirt/qemu.conf
23:33
<
clever >
johnramsden: it will write all of those paths into /nix/store
23:30
<
clever >
johnramsden: what do you want to do with environment_user?
23:25
<
clever >
ben: so you can set "build-extra-platforms = aarch64-linux" in /etc/nix/nix.conf, and nix will try to run aarch64 programs
23:24
<
clever >
ben: then using the patched nix on line 10 as an override of nix on the host (so it replaces nix-daemon), will add a new build-extra-platforms option
23:24
<
clever >
ben: if you run the register script inside the arm64 package, then linux will be able to just run aarch64 binaries
23:23
<
clever >
ben: one option is the qemu stuff i wrote a while ago
23:17
<
clever >
which it will ssh into and push all the dependencies to
23:16
<
clever >
it wants an aarch64 build slave in /etc/nix/machines
23:15
<
clever >
ben: what are the 2 platforms its censoring out?
19:47
<
clever >
so the first person to pickup the phone cant just plug in and steal your files, without being able to unlock the phone
19:47
<
clever >
i'm guessing you need to approve the desktop in the iphone ui?
19:46
<
clever >
[20:30:03.611][4] preflight_worker_handle_device_add: Device 5bdd7301098fd52c91a76a4c4ea1496134730707 is not paired with this host.
19:46
<
clever >
[20:30:03.604][1] preflight_worker_handle_device_add: The stored pair record for device 5bdd7301098fd52c91a76a4c4ea1496134730707 is invalid. Removing.
19:45
<
clever >
thats different then
19:45
<
clever >
oh, even root
19:45
<
clever >
jbo: under nixos, normal users lack access to usb nodes by default
19:44
<
clever >
in the case of this device, it maps to that exact node, which isnt writable by me
19:44
<
clever >
crw-rw-r-- 1 root root 189, 134 May 19 19:10 /dev/bus/usb/002/007
19:44
<
clever >
Bus 002 Device 007: ID 046d:0a1f Logitech, Inc. G930
19:43
<
clever >
if its using libfuse, then it must have permission to the /dev/bus/usb/ nodes
19:41
<
clever >
not sure about iphone
19:41
<
clever >
android uses mtp, to provide a fs level access, rather then a block level access
19:40
<
clever >
and they generaly cheat and use 1 partition, so the whole thing would have to shutdown
19:40
<
clever >
modern phones cant appear as block devices, because that would require the phone to un-mount the fs first
08:56
<
clever >
then it would rely on an interactive bash being in the $PATH at runtime, which is pretty much always there
08:54
<
clever >
anything your output references when its done installing, becomes a runtime dep
08:53
<
clever >
nix doesnt have a way to list runtime dependencies, only build-time dependencies
08:42
<
clever >
nixy: if your using "#!/usr/bin/env bash", and bashInteractive comes first in $PATH, it should
05:51
<
clever >
if you have another hdd for the mbr
05:51
<
clever >
another option, is to just chainload the nixos grub from the other grub
05:50
<
clever >
and tries to load modules that arent compatible with the grub core
05:50
<
clever >
it changes the module search path
05:49
<
clever >
but if you pre-load the gentoo versions, it worked fine
05:49
<
clever >
ive found that the gentoo grub cant load the nixos grub modules
05:48
<
clever >
if your using a different grub, you may want to run insmod on everything nixos uses, before you source the nixos grub.cfg
05:43
<
clever >
that sounds safer
05:42
<
clever >
trikl: i think if you rename unicode.pf2 and background.png, it will stay in plaintext mode
05:40
<
clever >
but i always do ext4 for /boot if zfs is at play
05:40
<
clever >
i dont know what grub does in that situation
05:40
<
clever >
but some filesystems like zfs hash the crap out of the data, and wont like that
05:39
<
clever >
so it can write to it in-place, without having to touch the FS metadata
05:39
<
clever >
so it generaly pre-allocates a lot of space in the grubenv file
05:39
<
clever >
write support for filesystems in grub is a bit limited
05:39
<
clever >
looks normal
05:37
<
clever >
whats in it?
05:36
<
clever >
its a file in either /boot or /boot/grub/
05:36
<
clever >
does grubenv exist?
05:35
<
clever >
trikl: what error does it give if you just leave it to the default?
05:33
<
clever >
trikl: the commandlines look identical
05:30
<
clever >
trikl: can you gist the grub.cfg file?
05:28
<
clever >
trikl: i think you would need to modify the perl script that generates grub.cfg
03:46
<
clever >
(but -A is already claimed in nix)
03:46
<
clever >
similiar to ssh -A
03:46
<
clever >
but if the issue i opened on nix gets solved, then you could run nix-build with the right flag, and it just works
03:45
<
clever >
yeah, i usualy do that instead
03:40
<
clever >
that allows fetchgitPrivate to access the ssh agent
03:39
<
clever >
the private key is a seperate part, finding that link
03:38
<
clever >
/etc/ssh/ssh_known_hosts
03:38
<
clever >
nixy: ah, then you would need to manualy do the same thing, under /etc/ssh/
03:37
<
clever >
nixy: and this appears to be a dup of an issue i already posted a full answer on
03:36
<
clever >
nixy: you can configure the knownHosts system wide in nixos
03:36
<
clever >
nixy: are you loading it with callPackage?
00:57
<
clever >
Infinisil: i have been thinking about looking into do again myself
00:43
<
clever >
Infinisil: line 1 also implies its looking for an FS with the label DOROOT
00:41
<
clever >
Infinisil: try symlinking /boot/grub.cfg to point to /boot/grub/grub.cfg ?
00:26
<
clever >
Infinisil: what error does it have on boot?
00:16
<
clever >
ext4 would be safer against improper shutdowns, but rule out efi
00:16
<
clever >
vfat should work either way
00:14
<
clever >
vda1 will be your /boot
00:14
<
clever >
looks good
00:11
<
clever >
but gpt uses more then just 1 sector, and thats an ugly hack to begin with
00:10
<
clever >
with the old mbr style, grub just put it into 'unused' space between sector 0 and partition 0
00:09
<
clever >
if anything is done to that partition after a grub-install, the hdd will cease to be bootable
00:09
<
clever >
Infinisil: grub uses the bios boot partition to store raw x86 executable code
00:00
<
clever >
the boot partition cant be in the zfs pool
2017-05-19
23:58
<
clever >
that is seperate from /boot
23:58
<
clever >
the bios boot partition must not be formated or mounted
23:57
<
clever >
what does this say about vda15?
23:57
<
clever >
fdisk -l /dev/vda
23:52
<
clever >
another common problem is not putting the /boot config into configuration.nix's fileSystems."/boot"
23:52
<
clever >
mount /dev/sdXY /mnt/boot
23:51
<
clever >
was /boot mounted to /mnt/boot/ when installing grub?
23:49
<
clever >
this is how i setup some of the filesystems on my machine
23:49
<
clever >
"/nix" = { device = "amd/nix"; fsType = "zfs"; options = [ "noatime" ]; };
23:49
<
clever >
"/" = { device = "amd/root"; fsType = "zfs"; };
23:49
<
clever >
Infinisil: device should be in the form of pool/fs
23:43
<
clever >
Infinisil: yep
22:49
<
clever >
i would expect overrideAttrs to work, but the buildPythonPackage stuff may be messing with that
22:48
<
clever >
henrycrutcher: too many files missing from the gist, cant recreate the problem here
22:46
<
clever >
error: ipython-6.0.0 not supported for interpreter python2.7
22:44
<
clever >
henrycrutcher: can probably do it on line 4
22:43
<
clever >
i only fixed the let blocks
22:43
<
clever >
oh, i forgot to fix the list part
22:39
<
clever >
you can also join most of those let blocks
22:38
<
clever >
need to wrap it in another ()
22:38
<
clever >
[ f x ] doesnt run f on x, it makes a list of f, and x
22:38
<
clever >
this is a list with 2 functions in it
22:38
<
clever >
[ ... jedi.overrideAttrs( oldAttrs: rec { doCheck = false; }) ... ]
22:38
<
clever >
oh, found your problem
22:37
<
clever >
and what line does it say the error is on?, if you run it with --show-trace
22:35
<
clever >
can you gist the default.nix?
22:34
<
clever >
henrycrutcher: what are you trying to run?
22:19
<
clever >
and nix-build will allow them to leak into the build
22:19
<
clever >
impureEnvVars is an array of strings (variable names)
21:47
<
clever >
1, you can use .overrideAttrs on something, 2, it only works on fixed-output derivations
20:10
<
clever >
currently only using the automatic snapshot creation in nixos, with no send/recv
20:08
<
clever >
so its much safer to have an ext4 /boot for the kernls
20:07
<
clever >
grub has trouble reading the kernel from certain zfs directories
20:06
<
clever >
some of it is in /boot/grub/, but some is in raw binary on the hdd
20:05
<
clever >
what kind of info do you want?
20:04
<
clever >
Infinisil: grub on gpt needs a bios boot partition
19:59
<
clever >
Infinisil: and then the grub kernel you pick in the DO control panel will read grub.cfg
19:59
<
clever >
Infinisil: if i'm reading disasm's link right, you can configure grub2 in nixos, probably with boot.loader.grub.device="nodev";, and nixos will generate a /boot/grub/grub.cfg
19:57
<
clever >
disasm: looks like grub2 i think
19:56
<
clever >
disasm: is that grub1 or grub2?
19:50
<
clever >
how much data do you want to save, and where do you want the final install to be located?
19:50
<
clever >
the bios has to be told to look there
19:49
<
clever >
Infinisil: but also, the nice thing about nixos, you dont really need to keep much, you could just copy configuration.nix and remake the system in minutes
19:49
<
clever >
Infinisil: if you want to keep the data, then you would copy it over to the zfs pool first
19:43
<
clever >
uefi needs vfat
19:43
<
clever >
depends on if your using legacy or uefi
19:42
<
clever >
and if you aim boot.loader.grub.device to the root of that new hdd, it will be bootable
19:42
<
clever >
i would make a dedicated ext4 for /boot/ to handle the boot issues ive seen
19:40
<
clever >
shlevy: yeah, ive been wanting to patch nix-build to add agent forwarding
19:39
<
clever >
shlevy: it should also be possible to do private githubs with an ssh-agent
19:36
<
clever >
Infinisil: then fix hardware-configuration.nix/configuration.nix, and nixos-rebuild boot
19:35
<
clever >
Infinisil: then you can mount the new zfs filesystems up under /mnt/, and "nixos-install --chroot" to get a shell inside it
19:35
<
clever >
Infinisil: if you have enough free space in the zfs pool to hold the entire fs, you should be able to just copy the data over while booted into an install iso
19:32
<
clever >
LnL: ah yeah, ive done that before as well, --arg config '{}' will make most nix commands ignore config.nix
19:29
<
clever >
[ "aarch64-linux" "armv5tel-linux" "armv6l-linux" "armv7l-linux" ....
19:29
<
clever >
nix-repl> nix.meta.platforms
19:29
<
clever >
[clever@amd-nixos:~/apps/nixpkgs]$ nix-repl default.nix
19:27
<
clever >
LnL: works fine in nix-repl
19:27
<
clever >
Infinisil: yeah, i use zfs on every new install
19:24
<
clever >
18255 nixUnstable;
19:24
<
clever >
18249 inherit (callPackages ../tools/package-management/nix {
19:24
<
clever >
there is an inherit in all-packages.nix
19:24
<
clever >
LnL: ah, the pkgs.nix attribute?
19:23
<
clever >
but with tmp on tmpfs, your going to get that anyways
19:23
<
clever >
but there will be some performance loss if /tmp and /nix/store are on different volumes
19:23
<
clever >
koserge: when using zfs, i always put /nix/store on its own volume
19:14
<
clever >
overrideDerivation happens after it
19:14
<
clever >
overrideAttrs happens before all of that, so the attributes are still where you expect them to be
19:14
<
clever >
stdenv.mkDerivation does a lot of funky stuff like renaming buildInputs to nativeBuildInputs
19:09
<
clever >
its like they expect you to only ever use the internet
19:09
<
clever >
so ssh and nfs are imposible
19:09
<
clever >
the 2nd n band router refuses to let wifi clients talk to wired clients
19:08
<
clever >
the first one refused to stop sending ipv6 ra packets, and blackholes all ipv6 traffic
19:08
<
clever >
ive had very bad luck with all the N band routers ive tried
19:06
<
clever >
i barely get 30mbit out of my current wifi
19:05
<
clever >
gchristensen: nice
19:02
<
clever >
i always -Q when using -j, to make it more readable
18:59
<
clever >
either you tried to manualy write to $out from nix-shell, or the package is somehow broken
18:57
<
clever >
it needs root to modify things vital to the system, so just never use sudo, and your safe
18:56
<
clever >
also, if you run the above commands without root, it cant brick the machine
18:56
<
clever >
there was a bug about 6 months ago that corrupted grub.cfg
18:56
<
clever >
just beware that booting master may cause other unrelated problems
18:56
<
clever >
Infinisil: yeah
18:53
<
clever >
yeah, it wont clear the search path
18:52
<
clever >
adelbertc: nix-env -f all-packages.nix -iA dev
18:51
<
clever >
Infinisil: the above nix-build can also be used to just build it
18:50
<
clever >
then run the vm and test it out
18:50
<
clever >
in there, you can enable the service, and create a user with a pre-set password
18:49
<
clever >
this will build a qemu vm, using a given configuration.nix file (in the current dir)
18:49
<
clever >
nix-build nixos -A vm -I nixos-config=./configuration.nix
18:49
<
clever >
services are harder to test, is it a new or old service?
18:48
<
clever >
use -A to direct it towards the package you have changed
18:48
<
clever >
"nix-build -A hello" will build just the hello-world package
18:47
<
clever >
including everything that has been flagged as broken
18:47
<
clever >
just 'nix-build' alone in the nixpkgs root, means build EVERYTHING in nixpkgs!
18:47
<
clever >
ah, that explains it
18:46
<
clever >
Infinisil: what exact arguments did you run nix-build with?
18:46
<
clever >
Infinisil: did you give nix-build a -A flag?
18:45
<
clever >
Infinisil: so you need to --show-trace, and find the usage of pkgs.activator, and remove it
18:45
<
clever >
ah, the pkgs.activator attribute is directly set to a throw statement
18:44
<
clever >
and mkRootLayer fires up an entire vm
18:44
<
clever >
looks like mkPureLayer is just rsync + tar
18:43
<
clever >
Infinisil: what exactly is the error coming from?, can you gist the entire output?
18:43
<
clever >
i'm still curious as to what its doing differently
18:43
<
clever >
Infinisil: running nix-build in the root of nixpkgs?
18:42
<
clever >
and if its not null, mkRootLayer
18:42
<
clever >
if its null, it will call mkPureLayer
18:41
<
clever >
it can often help to read the nix expressions behind something to learn how it works
18:40
<
clever >
exarkun: and that needs /dev/kvm setup correctly to get any kind of performance
18:40
<
clever >
exarkun: manipulating filesystem level stuff as root needs a qemu vm on nix
18:32
<
clever >
but its been like this for months
18:31
<
clever >
its almost like some 3 letter agency is mitm'ing me poorly
18:31
<
clever >
why does it give me a different cert:S
18:31
<
clever >
strange, exact same ip i have
18:30
<
clever >
oh, and 4/5 are a bit funky, because i need to also do 802.1q
18:29
<
clever >
line 5&6 of the gist defines which card is each
18:29
<
clever >
one port for the modem, one port for a normal switch that handles the lan
18:29
<
clever >
the machine i'm using happens to have 3 gigabit ports, but i'm only using 2
18:28
<
clever >
main requirement, is that you have a computer with 2 nics, that can match the speed of your internet
18:28
<
clever >
almost directly connected to the modem
18:27
<
clever >
that file as a whole, runs my router
18:26
<
clever >
and also handles 2 custom domains, for .localnet
18:26
<
clever >
this runs a dns cache in nixos, and allows 192.168.2.0/24 to use it
18:25
<
clever >
i just run my own dns
18:25
<
clever >
it could be that only the dns server is fubar, and everything else is fine
18:24
<
clever >
strange, maybe your dns server is acting up?
18:23
<
clever >
dns only takes a domain
18:22
<
clever >
run dig or ping on it in a shell
18:20
<
clever >
oh, and what ip does it resolve to?
18:20
<
clever >
and its not expired?
18:18
<
clever >
for me, it was signed by geotrust, and it expired on oct 7th, 2016
18:17
<
clever >
i think the load balancer is broken, and masking the problem
18:17
<
clever >
and the funny thing is, they use a different cert depending on where you connect from
18:17
<
clever >
it could be worse, one of the datacenters i use has an expired ssl cert on the front page!
18:13
<
clever >
what is the name of the program?
18:12
<
clever >
Infinisil: (facepalm)
18:10
<
clever >
Infinisil: is there at least a .deb available?, or did some idiot imperatively install the entire thing, then clone the vm en-mass? lol
18:08
<
clever >
what error comes up when you dont use 6?
18:07
<
clever >
and java7 isnt backwards compat?
18:07
<
clever >
did you check openjdk?
18:03
<
clever >
Infinisil: package those deps and show them!
07:28
<
clever >
for the last 2 lines, if the video seems to work fine for you, you can probably ignore it
07:28
<
clever >
yeah, if you dont care about bluetooth audio, you can ignore the first half
07:27
<
clever >
rhon: what kind of warnings?
07:23
<
clever >
justanotheruser: it looks like you put an attrset in your systemPackages
07:23
<
clever >
justanotheruser: i see system-path near the bottom
2017-05-18
21:23
<
clever >
disasm: add an "exit 1" to one of the phases
19:54
<
clever >
it will just hide the old tmp with a tmpfs
19:54
<
clever >
but you will want to clean it out manualy before you turn it on
19:53
<
clever >
trikl: it appears to be false right now
19:53
<
clever >
the default of that nixos option has changed at some point
19:52
<
clever >
the hdd was damn slow, and i left a mess in there and rarely booted
19:51
<
clever >
gchristensen: i have had issues a decade ago, when my server would take half an hour to boot, because it cleaned /tmp on startup
19:51
<
clever >
so the wifi part is completely stock
19:51
<
clever >
joniWoni: oh, and in my case, i'm using an old-ass router (with the dhcp turned off) to add wifi to my network
19:43
<
clever >
joniWoni: this file is configured to run my router, with normal ethernet on both sides, but you should be able to easily switch it to a wifi port, after you get hostapd up
19:41
<
clever >
joniWoni: i would use iptables/dnat (nixos has an option for that), hostapd, dhcpd, and bind
19:17
<
clever >
ah, thats it
19:17
<
clever >
Infinisil: i think there is a doc attribute in nixos/release.nix
19:06
<
clever >
kiloreux: and you have to uninstall your previous attempts, look in "nix-env -q"
19:04
<
clever >
kiloreux: with just -i, you told it to install everything in the default.nix
19:04
<
clever >
kiloreux: you should have ran nix-env -f nix-directory -iA both
19:03
<
clever >
kiloreux: what command did you run?
19:00
<
clever >
copy/paste the entire output to a gist
19:00
<
clever >
did it actually error?
18:58
<
clever >
kiloreux: did you set ignoreCollisions like i showed in the gist?
18:56
<
clever >
kiloreux: with what error?
18:51
<
clever >
cant think of any just yet