2017-10-22
16:52
<
clever >
iqubic: maybe 4.12
16:52
<
clever >
iqubic: 4.9 i believe
16:47
<
clever >
Yaniel: that one didnt work, and neither does libinput
16:47
<
clever >
seequ: this is where most of the closed-source nvidia driver names are defined
16:43
<
clever >
seequ: which one do you want to use?
16:36
<
clever >
sphalerite: thats a bug that got introduced a few months ago by some refactorings
16:28
<
clever >
iqubic: not sure what else to check
16:27
<
clever >
iqubic: what was the model of laptop again?
16:22
<
clever >
iqubic: there is a lot of xorg output missing, is there an xorg log within /var/log/ ?
16:22
<
clever >
kuznero: nix-repl '<nixpkgs>' then "${stdenv.cc.cc.lib}"
16:21
<
clever >
kuznero: you can eval that part in nix-repl
16:19
<
clever >
kuznero: you want to write a nix expression that will patch it for you
16:15
<
clever >
kuznero: $NIX_CC will have that path, as long as gcc is in the inputs (nix-shell -p gcc)
16:11
<
clever >
iqubic: anything interesting in the journal? journalctl -u display-manager, scroll near the bottom
16:04
<
clever >
kuznero: where the binary will search for its libraries
16:04
<
clever >
kuznero: you need to set both the interpreter and rpath
16:04
<
clever >
iqubic: xorg will have to be restarted, systemctl restart display-manager
16:02
<
clever >
iqubic: it will ignore it if its disabled
16:01
<
clever >
iqubic: set synaptics.enable = false;
16:00
<
clever >
kuznero: patchelf, it should be in the nixpkgs manual
15:57
<
clever >
sphalerite: and make sure you unset, rather then setting it to an empty string
15:57
<
clever >
sphalerite: double-check the value of $NIX_REMOTE in both shells
15:57
<
clever >
iqubic: so you can fix it on either OS
15:56
<
clever >
iqubic: so every time you change OS, the clock is off by a few hours
15:56
<
clever >
iqubic: linux sets the hardware clock to UTC
15:56
<
clever >
iqubic: yeah, thats the issue, windows sets the hardware clock to local
15:56
<
clever >
iqubic: oh, is this going to be a dual-boot?
15:55
<
clever >
iqubic: time, or timezone?, does "date" show the right zone?
15:53
<
clever >
sphalerite: can you gist the output of the strace?
15:52
<
clever >
sphalerite: oh, and also, try deleting /nix/var/nix/binary-cache-v3.sqlite* then try again
15:49
<
clever >
sphalerite: we are looking for an IP starting with 128
15:49
<
clever >
sphalerite: try again with "strace -e trace=connect,execve -s 300 -f" at the start
15:47
<
clever >
ghostyyy: add boot.debug1 to the kernel params and it will force a shell
15:46
<
clever >
sphalerite: can you gist the full output?
15:45
<
clever >
hodapp: it will move everything in / to /old-root, except /nix
15:43
<
clever >
Dezgeg: ah, yeah, that will force it to only go thru the cache, it will fail to build
15:43
<
clever >
woffs: somebody in #nixos made lustrateRoot after hearing the story of how i manually did that when installing nixos onto a netbook without the install media
15:41
<
clever >
sphalerite: -vvvvv maybe
15:40
<
clever >
nschoe: can you throw that project and its .cabal file onto github?
15:37
<
clever >
if it has +w to the store and the var is unset, it will just directly spawn the worker
15:37
<
clever >
sphalerite: yeah
15:34
<
clever >
Dezgeg: and port 80 redirects elsewhere
15:33
<
clever >
sphalerite: also, that server isnt listening on 443
15:33
<
clever >
url: (7) Failed to connect to nixos-arm.dezgeg.me port 443: Connection refused
15:32
<
clever >
sphalerite: did you restart nix-daemon?
15:31
<
clever >
vaibhavsagar: sudo -u hydra -i
15:31
<
clever >
vaibhavsagar: you have to run those commands as the hydra user
15:30
<
clever >
nschoe: what about making a Setup.hs and using runhaskell on it, rather then using nix-shell again
15:27
<
clever >
vaibhavsagar: you may also need to: export HYDRA_DBI=dbi:Pg:dbname=hydra;user=hydra;
15:26
<
clever >
vaibhavsagar: hydra-create-user admin --password hunter2 --role admin
15:26
<
clever >
vaibhavsagar: you first need to create a user using a CLI program, ran as the hydra user
15:26
<
clever >
nschoe: and is librarySystemDepends set in that expression?
15:25
<
clever >
nschoe: just running it directly on the directory and then using nix-shell on the resulting expression
15:25
<
clever >
nschoe: have you tried using cabal2nix?
15:23
<
clever >
woffs: that nix-build command is basically the same as "nixos-rebuild build"
15:23
<
clever >
woffs: oh, and -A system is an alias to that full attrpath
15:22
<
clever >
woffs: ah, not really, i just read the source for nixos and nixos-rebuild
15:21
<
clever >
woffs: which part?
15:20
<
clever >
sphalerite: "touch /etc/NIXOS_LUSTRATE" will fix that
15:20
<
clever >
only problem, is that the garbage in /bin and /etc breaks nixos :P
15:19
<
clever >
sphalerite: then it will boot nixos, on the previous rootfs
15:19
<
clever >
sphalerite: the above will build nixos in /nix, on any distro, and then overwrite the bootloader config
15:19
<
clever >
sphalerite: basically, just: nix-build '<nixpkgs/nixos>' -I nixos-config=/etc/nixos/configuration.nix -A config.system.build.toplevel && touch /etc/NIXOS && ./result/bin/switch-to-configuration boot
15:18
<
clever >
sphalerite: i have also installed nixos, without nixos-install or nixos-rebuild
15:17
<
clever >
sphalerite: that was in the old linode guide, on the previous wiki
15:17
<
clever >
sphalerite: you can even install them with nix-env
15:16
<
clever >
CrazedProgrammer: yeah, that looks good, only other thing i can think of would be to squash it into a single commit
15:16
<
clever >
and if there is no initrd, and no init flags, it will try /sbin/init, /etc/init, /bin/init, and /bin/sh
15:15
<
clever >
and the stage-1 script in the initrd is what chooses to obey init=
15:15
<
clever >
sphalerite: when using an initrd, init= has basicaly zero impact, and it will only appear in /proc/cmdline, and rdinit= is what actually affects the kernel
15:13
<
clever >
sphalerite: thats the code responsible for starting pid 1
15:12
<
clever >
hmmm, root dev is missing now
15:12
<
clever >
/nix/store/38x3r16rhpiwcvnsp1gsm04zfnixllpx-linux-4.9.46/bzImage: Linux kernel x86 boot executable bzImage, version 4.9.46 (nixbld@localhost) #1-NixOS SMP Wed Aug 30 08:24:43 UTC 2017, RO-rootFS, swap_dev 0x3, Normal VGA
15:12
<
clever >
[root@amd-nixos:~]# file /nix/store/38x3r16rhpiwcvnsp1gsm04zfnixllpx-linux-4.9.46/bzImage
15:12
<
clever >
sphalerite: there is also a default root device in the kernel (file will tell you what it is)
15:11
<
clever >
sphalerite: you could even symlink /bin/init to /nix/var/nix/profiles/system/init and then the kernel default would work
15:11
<
clever >
sphalerite: init=/nix/var/nix/profiles/system/init will always point to the current generation, and now you dont have to make nixos manage a bootloader config
15:11
<
clever >
sphalerite: the tricky part is the init=, but you could cheat some
15:10
<
clever >
sphalerite: ah, that should work then, just pass the right root=/dev/sda1 to the kernel, in addition to the existing init= that the nixos bootloader generates
15:09
<
clever >
sphalerite: but the default kernel has too much as modules, and it cant mount any filesystem on its own
15:09
<
clever >
sphalerite: if you can manage to mount the rootfs without relying on kernel modules, you could boot it without an initrd
15:08
<
clever >
CrazedProgrammer: lib is also present at stdenv.lib, so the lib on line 1 is optional
15:08
<
clever >
CrazedProgrammer: one trick you could do, line 11, icon = desktopIcon; then it will use the file directly from the store and you dont have to copy it anywhere special
15:07
<
clever >
so you have to re-do the build without -Q and wait for it to re-fail
15:06
<
clever >
the only downside of -Q, is that it wont show the error output either
14:44
<
clever >
i think the /proc api is fairly limited
14:42
<
clever >
sphalerite: ah, -1
14:42
<
clever >
You can remove one entry or all entries by echoing -1 to /proc/.../the_name or /proc/sys/fs/binfmt_misc/status.
14:41
<
clever >
sphalerite: i think you can write it to arm, instead of register, to overwrite an existing type
14:39
<
clever >
sphalerite: there is a delete file under /proc/sys/fs/binfmt_misc/ somewhere, that you can write a 1 to
14:38
<
clever >
sphalerite: you can try the unwrapped qemu-arm instead, and remove the P flag at the end of the register string
14:37
<
clever >
sphalerite: oh, qemu-wrap has an absolute path in it, that was to fix a bug
14:34
<
clever >
that line contains the raw bytes to look for in the header of a file, and a mask of what bytes actually matter
14:33
<
clever >
sphalerite: yeah, that also works, just update the register script for binfmt-misc
14:33
<
clever >
GRBurst: you would need to use the qemu-user stuff, and it would greatly slow it down
14:32
<
clever >
if you imperatively copy the qemu binary into the store (mine is static), then nix will ignore it until you run a GC
14:31
<
clever >
or just bind-mount all of /nix into the chroot
14:31
<
clever >
you have to copy the qemu binary into that new root
14:31
<
clever >
at the same path
14:30
<
clever >
sphalerite: once thats done, binfmt-misc will be configured, and you can just run any arm binary
14:30
<
clever >
sphalerite: nix-build -A qemu-user-arm && ./result/bin/register
14:29
<
clever >
sphalerite: sure
14:29
<
clever >
GRBurst: the build slave stuff needs the slaves to have the right cpu for target your building for
14:21
<
clever >
sphalerite: ive also got a hydra, its building the armv7 gcc right now
12:58
<
clever >
Neo--: this is something i have used before
12:57
<
clever >
Neo--: latex2pdf = name: input: runCommand name { buildInputs = [ (texlive.combine { inherit (pkgs.texlive) scheme-full lm tipa; }) pandoc ]; } ''
12:53
<
clever >
that should have the same effect
12:52
<
clever >
srhb: you could also just set the default to 25 and type int
12:20
<
clever >
CcxWrk: kk
11:32
<
clever >
aristid: yeah
11:32
<
clever >
knupfer: an thats missing for arm
11:32
<
clever >
knupfer: nixpkgs ghc needs a bootstrap that is already built for that platform
11:31
<
clever >
aristid: and shellcheck is haskell
11:31
<
clever >
aristid: there is something in the nix build process that runs shellcheck over a few things
11:30
<
clever >
aristid: shellcheck
11:30
<
clever >
aristid: nix depends on ghc now, thats blocking some of my arm builds
11:25
<
clever >
srhb: i have no idea why, but thats the way it is
11:24
<
clever >
srhb: and false is ""
11:20
<
clever >
CcxWrk: it hasnt even finished the stdenv
11:20
<
clever >
CcxWrk: yeah, xz is what had failed
11:17
<
clever >
CcxWrk: nix gives the entire dependency chain when it fails
11:17
<
clever >
CcxWrk: that error wasnt in hello
11:17
<
clever >
CcxWrk: can you gist more of that error?
11:17
<
clever >
mc_Der: the rev argument can also take a branch name
11:16
<
clever >
CcxWrk: what error did it show above that?
10:59
<
clever >
sphalerite: what happens if you run "reset" ?
10:51
<
clever >
desync ensues :P
10:51
<
clever >
vim said it was 3 columns wide
10:51
<
clever >
the tty said it was 0 columns wide
10:51
<
clever >
i also ran into a problem where i copy/pasted strings from the aws docs into vim, and i wound up with a 3 byte unprintable character
10:51
<
clever >
i have noticed some weird conflicts when i used screen under tmux
10:50
<
clever >
sounds like desync
10:42
<
clever >
[clever@amd-nixos:~]$ cat /nix/store/.links/1zzzranqs5bvyvb1i1ing6nbj0yni0wihgmfs276w9bifv1gaccw | wc -c
10:42
<
clever >
i think i have those backwards
10:42
<
clever >
sphalerite: i'm not even sure how ls knows its using 3.7k on-disk and 4.5k of actual data
10:41
<
clever >
4.5K -r--r--r-- 2 root root 3.7K Dec 31 1969 /nix/store/.links/1zzzranqs5bvyvb1i1ing6nbj0yni0wihgmfs276w9bifv1gaccw
10:41
<
clever >
[clever@amd-nixos:~]$ ls -lhs /nix/store/.links/1zzzranqs5bvyvb1i1ing6nbj0yni0wihgmfs276w9bifv1gaccw
10:40
<
clever >
sphalerite: for example, compare the block count to the block size!
10:40
<
clever >
Size: 3759 Blocks: 9 IO Block: 4096 regular file
10:40
<
clever >
File: /nix/store/.links/1zzzranqs5bvyvb1i1ing6nbj0yni0wihgmfs276w9bifv1gaccw
10:39
<
clever >
Size: 97 Blocks: 1 IO Block: 512 symbolic link
10:39
<
clever >
File: /nix/store/.links/1zzzy73kdz5jdmgf4dy4yiij72j1fb8bpsvza25fsv3fdvxaq38s -> /nix/store/xp5b1nzlxxjsblkp66wr7xyqnxi9sw17-ncurses-6.0-man/share/man/man3/update_panels_sp.3x.gz
10:39
<
clever >
block size is horribly wrong on zfs
10:39
<
clever >
sphalerite: what filesystem are you on?
10:28
<
clever >
but there is several layers of hashing hashes
10:28
<
clever >
so storepaths can possibly have collisions
10:28
<
clever >
while .links uses the full sha256
10:28
<
clever >
Path linkPath = linksDir + "/" + hash.to_string(Base32, false);
10:28
<
clever >
Hash hash = hashPath(htSHA256, path).first;
10:27
<
clever >
sphalerite: storepaths, use the first 20 bytes of a sha256
10:27
<
clever >
sphalerite: oh, i think i see the reason
10:26
<
clever >
ah, and it also runs thru compressHash
10:26
<
clever >
+ compressHash(hashString(htSHA256, s), 20).to_string(Base32, false)
10:26
<
clever >
sphalerite: the algo for storepaths is pretty complex
10:25
<
clever >
Path linkPath = linksDir + "/" + hash.to_string(Base32, false);
10:23
<
clever >
sphalerite: mine go as high as 1zzzy73
10:18
<
clever >
and if the link count is >1, it will check the inode hashmap
10:18
<
clever >
optimisePath_ will recursively call itself on any directories
10:17
<
clever >
and just skips because the hardlink count is >1
10:17
<
clever >
i highly suspect it doesnt notice, and re-reads all directory metadata on every run
10:16
<
clever >
what does --optimize do when reading a storepath thats already been optimized?
10:16
<
clever >
another difference that could be improved
10:16
<
clever >
it would still have to scan the metadata of the dirs, but it can omit reading the data for the small files
10:15
<
clever >
sphalerite: i think having subdirs would also help a lot as well
10:15
<
clever >
sphalerite: that could reduce the number of links within .links/
08:19
<
clever >
fearlessKim[m]: i think so
08:01
<
clever >
srodal: yeah, that should also work
07:58
<
clever >
mount /dev/sda1 /mnt/boot/
07:58
<
clever >
mount NAME/nix /mnt/nix -t zfs
07:58
<
clever >
mount NAME/home /mnt/home -t zfs
07:58
<
clever >
mount NAME/root /mnt -t zfs
07:58
<
clever >
zpool import NAME -o altroot=/mnt/
07:57
<
clever >
import makes the pool available
07:57
<
clever >
oops, give a pool name, not a device name
07:57
<
clever >
and re-run all of the mount commands
07:57
<
clever >
iqubic: zpool import /dev/sda? -o altroot=/mnt/
07:52
<
clever >
above is an example of how to make your own entry
07:52
<
clever >
srodal: nix-env will only use things that contain a default.nix
07:50
<
clever >
srodal: by default, nix-env will only look in ~/.nix-defexpr
07:49
<
clever >
[clever@amd-nixos:~]$ cat .nix-defexpr/test/foo/default.nix
07:49
<
clever >
import /home/clever/apps/nixpkgs
07:49
<
clever >
it doesnt use a manifest file
07:45
<
clever >
srodal: you will probably want to remove the old nixpkgs within nix-channel at a minimum
07:42
<
clever >
which forces it to look in nixpkgs, within NIX_PATH
07:42
<
clever >
srodal: for nix-env, you can do: nix-env -f '<nixpkgs>' -iA firefox
07:40
<
clever >
srodal: nix-env basically ignores NIX_PATH
07:38
<
clever >
iqubic: mount -o remount,size=7G /nix/.rw-store
07:37
<
clever >
under total
07:36
<
clever >
iqubic: free -m
07:36
<
clever >
iqubic: how much ram does this machine have?
07:36
<
clever >
yeah, its the tmpfs for the live image
07:35
<
clever >
iqubic: can you pastebin the full df output?
07:34
<
clever >
iqubic: df -h, what is full?
07:34
<
clever >
iqubic: fails with what error?
07:33
<
clever >
jtojnar: i cant see an easy way to just turn on bz2 support
07:26
<
clever >
but i dont see the right configure function...
07:25
<
clever >
so its probably configured the same way as vim
07:25
<
clever >
jtojnar: oh, its using composableDerivation.composableDerivation
07:20
<
clever >
jtojnar: where did you add the flag, and where are you referencing php?
07:19
<
clever >
jtojnar: hydra only pre-builds one arrangement, so any changes you do get built locally
07:14
<
clever >
its just networking.hostId
07:14
<
clever >
remove the config. prefix on that line
07:13
<
clever >
iqubic: did you add something starting with config?
07:10
<
clever >
iqubic: yep
07:10
<
clever >
jtojnar: it reads the config you set in config.nix or nixpkgs.config
07:09
<
clever >
iqubic: the man page for configuration.nix tells you how you can generate a hostId, just search for hostId with /
07:09
<
clever >
iqubic: zfs uses the hostid to figure out what system last mounted a pool
07:07
<
clever >
yeah, i believe its ready for that
07:06
<
clever >
iqubic: if you install things properly, it wont
07:05
<
clever >
the man page says how
07:05
<
clever >
you have to set the cpio archive to the newc format
07:04
<
clever >
and must already be a full cpio archive, gziped
07:04
<
clever >
the file you refer to must be in a region that grub can read
07:01
<
clever >
and if any files get in the way, it overwrites them
07:01
<
clever >
the kernel will just unpack each to a tmpfs, in order
07:01
<
clever >
ghostyyy: it looks like the path is added directly to the grub config
06:59
<
clever >
ghostyyy: that line of the config goes into an xml file
06:47
<
clever >
then copy configuration.nix over
06:47
<
clever >
iqubic: after mounting everything, including boot, you can run "nixos-generate-config --root /mnt" to generate the config
06:46
<
clever >
iqubic: you usually want some compression
06:45
<
clever >
iqubic: lz4 will compress all files you write to disk
06:44
<
clever >
dedup is off by default
06:44
<
clever >
iqubic: if you want lz4 compression: zfs set compression=lz4 POOLNAME
06:43
<
clever >
and also mount sda1 to /mnt/boot/ (and mkdir that first)
06:43
<
clever >
iqubic: nixos requires legacy mountpoints to boot
06:42
<
clever >
mount -t zfs rpool/nix /mnt/nix
06:42
<
clever >
mount -t zfs rpool/home /mnt/home
06:42
<
clever >
mkdir -pv /mnt/nix /mnt/home
06:42
<
clever >
mount -t zfs rpool/root /mnt/
06:42
<
clever >
iqubic: use a command like this to make 3 filesystems, called home, nix, and root
06:42
<
clever >
zfs create -o mountpoint=legacy rpool/home
06:40
<
clever >
yeah, this is the only time its right to update stateVersion
06:40
<
clever >
iqubic: yeah, just copy it to /mnt/etc/nixos/ after you have mounted everything
06:39
<
clever >
iqubic: just give it time
06:38
<
clever >
ah, it got moved there, not removed
06:36
<
clever >
hyper_ch: licensing problems
06:35
<
clever >
iqubic: add boot.supportedFilesystems = [ "zfs" ]; to /etc/nixos/configuration.nix and run "nixos-rebuild test"
06:33
<
clever >
you only need 1 zpool
06:33
<
clever >
after you have the pook, you want to create a few filesystems inside it, i usually make one for root, home, and nix
06:33
<
clever >
zfs create -o mountpoint=legacy rpool/home
06:33
<
clever >
but it should be unique when you make a second one
06:33
<
clever >
sometimes i just call it "laptop"
06:32
<
clever >
i name the pool after the hostname
06:32
<
clever >
iqubic: all of that goes inside one partition
06:29
<
clever >
if you already know you want 10gig, it may be simpler to make sda4 10gig, then make sda5 take the rest
06:28
<
clever >
which will format sda4 to be a zfs device
06:28
<
clever >
and run "zpool create -o ashift=12 -o altroot=/mnt NAME /dev/sda4"
06:28
<
clever >
then you will need to pick a name for the zfs pool
06:27
<
clever >
then make sda4 smaller
06:26
<
clever >
iqubic: to start with, use fdisk to create an sda4 that uses up the rest of the drive
06:25
<
clever >
iqubic: fairly easy
06:25
<
clever >
iqubic: some steps will have to be modified, and dont use sfdisk like this guide showed
06:24
<
clever >
i like zfs more then btrfs
06:18
<
clever >
and if your using zfs, mounting it to /mnt is a bit more complex
06:18
<
clever >
iqubic: you will need a new partition for nixos, which will probably be sda4, then mount sda4 to /mnt/ and sda1 to /mnt/boot/, and run nixos-generate-config
06:17
<
clever >
iqubic: do you want to keep windows?
06:17
<
clever >
ghostyyy: line 446 of stage-1 is where it mounts all filesystems
06:16
<
clever >
ghostyyy: the zfs always happens after the postlvm i believe
06:15
<
clever >
iqubic: it means the numpad will type numbers instead of arrow keys
06:14
<
clever >
ghostyyy: ah, i see that in the source
06:13
<
clever >
iqubic: you have to add copytoram to the kernel params when you boot, then you can unplug it
06:13
<
clever >
with the default options, no
06:12
<
clever >
iqubic: if you connect up a usb keyboard, what does its numlock do?
06:10
<
clever >
that would be the next thing to check
06:09
<
clever >
iqubic: have you checked google to see what others have siad about that model?
06:07
<
clever >
could be a hardware problem
06:06
<
clever >
about half of the disk is in use
06:05
<
clever >
looks like you simply have unpartitioned space