2017-06-29
01:19
<
clever >
Fare: systemd-resolved isnt running on my machine
01:07
<
clever >
manveru: it boots!
01:07
<
clever >
but ive not actually used it yet
01:07
<
clever >
Infinisil: i would expect it to work
01:06
<
clever >
manveru: strange, its not loading virtio_blk
01:02
<
clever >
manveru: strange, /dev/vda isnt the squashfs anymore...
01:00
<
clever >
manveru: yep, its broken on this end
01:00
<
clever >
manveru: i have recently done some changes to make the store r/w, and that might not have been fully tested
00:53
<
clever >
testing it on this end
00:51
<
clever >
manveru: line 5 of the paste
00:51
<
clever >
manveru: looks like it failed to mount the nix store
00:51
<
clever >
manveru: looking...
00:51
<
clever >
noobly: i just read any source i can to find out how things work
00:50
<
clever >
noobly: correct
00:49
<
clever >
noobly: yeah
00:39
<
clever >
noobly: that goes into /etc/nixos/ and then i do imports = [ ./vim.nix ];
00:39
<
clever >
noobly: and then 36 puts that into the systemPackages
00:39
<
clever >
noobly: all of that gets baked into a bash script called "vim" that is contained in the myVim derivation
00:39
<
clever >
noobly: line 29 does the main plugins, 24 configures a vundle plugin, and 8-22 do the rest of my config
00:38
<
clever >
mellowmaroon: nix-build '<nixpkgs>' -A rustStable.rustc -o rustc-stable-root
00:37
<
clever >
noobly: yeah, opening that config now
00:37
<
clever >
noobly: i have them working just fine
00:36
<
clever >
gchristensen: yeah
00:36
<
clever >
mellowmaroon: you may need to pass it '<nixpkgs>' and setup the overlay in your ~/.config/nixpkgs/config.nix
00:35
<
clever >
ive heard that the macs have crazy power saving features, and that linux has worse battery life on the same hardware
00:32
<
clever >
like, back when i was still getting into linux old, lol
00:31
<
clever >
thats pretty old though
00:29
<
clever >
so in the event of failure, it will re-build whatever just failed, without -Q
00:29
<
clever >
Infinisil: i also just wrote this, because -Q hides the errors
00:29
<
clever >
nix-build -A cardano-sl --no-build-output --keep-going || nix-build -A cardano-sl -j 1 ;
00:29
<
clever >
so the docs are wrong
00:29
<
clever >
and the source says that the verbosity defaults to lvlError, which is 0
00:28
<
clever >
Infinisil: the curl's are ran in the sandbox as normal builds, and -Q is the only way i know of to hide them
00:21
<
clever >
Infinisil: this is another handy trick, i can override config.nix on the fly, temporarily
00:21
<
clever >
$ nix-build -A sage '<nixpkgs>' --arg config '{allowBroken=true;}'
00:19
<
clever >
ah, slightly different variant of that issue
00:18
<
clever >
noobly: nix-env -iA nixos.sage
00:18
<
clever >
Infinisil: line 8 has the enum, at level 0, errors can still be seen
00:16
<
clever >
Infinisil: a random debug msg, and how the debug macro works
00:16
<
clever >
/home/clever/nix/src/libutil/logging.hh:#define debug(args...) printMsg(lvlDebug, args)
00:16
<
clever >
/home/clever/nix/src/libstore/gc.cc: debug(format("downgrading to read lock on ‘%1%’") % state->fnTempRoots);
00:15
<
clever >
yeah, just noticed that
00:14
<
clever >
let me check the sources
00:13
<
clever >
so just none
00:13
<
clever >
i think it defaults to 0
00:04
<
clever >
but both work
00:04
<
clever >
oh oops, meant to say --query --tree
00:03
<
clever >
i usually nix-store --query --roots and --query --graph
00:01
<
clever >
so nix has to provide that "feature"
00:01
<
clever >
yeah, people will expect things they install as root to be available to everybody
00:00
<
clever >
and we already confirmed, only systemPackages was at play
00:00
<
clever >
2017-06-28 20:32:35 < mellowmaroon> clever: `which rustc` gives => /run/current-system/sw/bin/rustc
00:00
<
clever >
the priority order is the users profile, roots profile, then configuration.nix
2017-06-28
23:57
<
clever >
Infinisil: everything managed by nix-env as root
23:53
<
clever >
mellowmaroon: its better to just GC less, and use nix-shell everywhere
23:52
<
clever >
mellowmaroon: the issue, is that each project may want a different version, and now you have to rebuild the entire system to change it
23:52
<
clever >
GetalMear: yeah, buildPythonPackage leads to python.stdenv.mkDerivation
23:51
<
clever >
pkgs/top-level/python-packages.nix: buildPythonPackage = makeOverridable (callPackage ../development/interpreters/python/build-python-package.nix {
23:48
<
clever >
GetalMear: nearly everything in nixpkgs calls stdenv.mkDerivation
23:45
<
clever >
GetalMear: overrideAttrs lets you change any attribute in the derivation
23:44
<
clever >
mellowmaroon: without more context, i cant really see why its doing that again
23:39
<
clever >
and you can nix-shell -p rust.rustc to open a shell with that
23:39
<
clever >
as long as the rustc-root symlink remains, it cant be GC'd
23:39
<
clever >
nix-build -A rust.rustc -o rustc-root
23:38
<
clever >
not sure then
23:35
<
clever >
it doesnt know which rustc to use
23:35
<
clever >
thats because you had multiple things in systemPackages, that all provide rustc
23:34
<
clever >
mellowmaroon: does this mention any warnings about collisions on rustc?
23:34
<
clever >
$ nix-store -l /run/current-system/sw
23:33
<
clever >
you should only use them in nix-shell
23:33
<
clever >
generally, you shouldnt install compilers on nix or nixos
23:33
<
clever >
ah, then you may have several rustc's in the systemPackages
23:31
<
clever >
mellowmaroon: what about just which rustc
23:30
<
clever >
mellowmaroon: what does "realpath $(which rustc)" say?
23:30
<
clever >
nix-repl> pkgs.rustStable.rustc
23:30
<
clever >
«derivation /nix/store/qjpgbbpwlmrzpfr2vchd07c10z3lw5s3-rustc-1.17.0.drv»
23:27
<
clever >
i think so
23:27
<
clever >
rustNightly, rustStable, rustUnstable
23:24
<
clever >
the 'rust' attribute works exactly the same way in normal nixpkgs
23:22
<
clever >
mellowmaroon: i believe it also has a rustStable.rustc and rustStable.cargo
23:20
<
clever >
depends on which ones you want
23:20
<
clever >
it contains rust.cargo and rust.rustc
23:19
<
clever >
mellowmaroon: ah, i see the problem
23:13
<
clever >
what about the full error from --show-trace?
23:12
<
clever >
mellowmaroon: line 18 doesnt have the fix i did to my gist
23:11
<
clever >
ah, didnt notice the pastebin
23:10
<
clever >
mellowmaroon: can you gist the entire error from --show-trace, and the code where you referenced the overlay?
23:05
<
clever >
mellowmaroon: edited the gist, try it now
23:05
<
clever >
that gist wasnt vinished
23:05
<
clever >
mellowmaroon: oh i see it
23:04
<
clever >
mellowmaroon: with imports or import?
23:00
<
clever >
mellowmaroon: can you gist your nix expression?
22:57
<
clever >
mellowmaroon: just pkgs.foo
22:41
<
clever >
mellowmaroon: already helped somebody with that about 3 days ago, let me check my irc logs
22:39
<
clever >
and i think wow is to run 16bit apps on a 32bit kernel
22:39
<
clever >
so confusingly, wow64, is the support layer to run 32bit apps on a 64bit kernel
22:38
<
clever >
In computing, Windows on Windows (commonly referred to as WOW,[1][2][3]) is a compatibility layer of 32-bit versions
22:37
<
clever >
this is what i was building
22:37
<
clever >
wine.override { wineBuild = "wineWow"; }
22:36
<
clever >
anelson: i also have a nix expression for building the 64bit wine, let me see
22:33
<
clever >
some things like .net i think, just dont work in the 64bit wine
22:33
<
clever >
i'm guessing its because its flagged as unstable
22:32
<
clever >
Infinisil: i only ever use it to do one-time conversion from svn to git, but i have seen others use it to work full-time on svn based projects
22:31
<
clever >
but when you push it back to the svn repo, it will rewrite the git commits to match the format used by "git svn", and also flatten the history out (no more branching and merging history)
22:31
<
clever >
Infinisil: you can then work locally using normal git
22:30
<
clever >
Infinisil: "git svn" will download every commit from an svn repo, and create a local git commit that applies the same changes
20:50
<
clever >
builtins.trace can help with figuring that out
20:48
<
clever >
i picked it up fairly fast
20:45
<
clever >
sounds like a bug in fetchurl
20:45
<
clever >
the nix-instantiate is trying to directly import things into the store, without asking nix-daemon to do things
20:45
<
clever >
ah, i think i know whats wrong
20:38
<
clever >
due to lazy evaluation, you have to insert it where a value is going to be used
20:37
<
clever >
and you can use string interpolation to print variables in that msg
20:37
<
clever >
ixxie: you can insert calls to trace anywhere in your expression, and nix will print the message out as it runs the code
20:37
<
clever >
"returnme"
20:37
<
clever >
nix-repl> builtins.trace "printme" "returnme"
20:37
<
clever >
trace: printme
20:34
<
clever >
ixxie: do you have another trace i can explain?
20:33
<
clever >
ixxie: so you can safely ignore lines 1-84 in this example
20:33
<
clever >
ixxie: and line 84 mentions the pkgs attribute of the system-path derivation, which is responsible for merging all of systemPackages up
20:32
<
clever >
ixxie: line 46 mentions the unitConfig, that eventualy lands into the service file
20:32
<
clever >
ixxie: line 17 makes mention of the dbus.service file
20:31
<
clever >
Infinisil: what about fetchTarball?
20:31
<
clever >
Infinisil: ah yeah, i ran into that a few days ago, dont know why fetchurl is complaining like that
20:22
<
clever >
ixxie: now it should work when turned back into a nixos module and used in nixos-rebuild
20:21
<
clever >
and pkgs.fetchurl needs a set, not a string
20:21
<
clever >
Infinisil: you need to pass it strings
20:21
<
clever >
error: cannot coerce an integer to a string, at /tmp/fetch/default.nix:3:21
20:17
<
clever >
so that file wont exist
20:16
<
clever >
does it have the files you are expecting it to have?
20:16
<
clever >
ls /nix/store/9llr9h6n86kp5zs55rphwihkjijmdgk8-flux-f2b75c2/nix
20:13
<
clever >
does it give an error or a value?
20:13
<
clever >
ixxie: what values do you see in that environment.systemPackages list when you eval it in nix-repl?
20:03
<
clever >
Infinisil: nix-instantiate --eval -E 'expression'
20:03
<
clever >
ixxie: nearly 80% of your error is because there was an invalid entry in environment.systemPackages, and only ~10 lines are actualy of use
20:02
<
clever >
that makes it eval faster, and puts less clutter into the errors
20:02
<
clever >
ixxie: first step, try building the package with nix-build, dont put it in systemPackages yet
19:58
<
clever >
ixxie: can you gist your code and the error?
19:54
<
clever >
as long as the value of items doesnt depend on the result of map, its not circular
19:54
<
clever >
Infinisil: import from derivation will download those things at eval time, and then import the result
19:52
<
clever >
Infinisil: i would instead do map (a: import (fetchzip "
https://example.com/ ${a}")) items, and thats not fixed-output, so its impure
19:51
<
clever >
ixxie: and import can take strings pointing to a local path
19:51
<
clever >
ixxie: all derivations return a string pointing into the store
19:49
<
clever >
sphalerite: i think it makes an interactive shell, not a login shell
19:48
<
clever >
Infinisil: import (fetchzip .... ) will load the default.nix in whatever it just unpacked
19:48
<
clever >
Infinisil: import from derivation
19:47
<
clever >
srhb: this gist shows where every variable setting winds up, and how they chain together
19:47
<
clever >
sphalerite: "sudo -i" will just run the proper shell for whatever user you point it at, no need for messy tricks
19:44
<
clever >
srhb: running login probably messes up a lot of things
19:44
<
clever >
srhb: i always use "sudo -i" and it doesnt break xorg when giving a root shell
19:44
<
clever >
srhb: #1 might be vlc trying to auto-hijack a spare tty, and chvt over to it
19:41
<
clever >
Coyin: that is the first bullet point under "partition the disk" when it says the type must be ef02
19:40
<
clever >
LnL: i usualy do it with fdisk, let me see what that uses
19:39
<
clever >
Coyin: i think the command LnL gave with EF02 does part of that
19:39
<
clever >
Coyin: you must create a bios boot partition, 1mb, no filesystem, never mounted, for gpt to boot with legacy
19:38
<
clever >
Coyin: GPT or MBR partition tables?
07:04
<
clever >
so i could just raise the averaging window, and it was less eager to change freq
07:04
<
clever >
but that was back before the kernel even had automatic freq changing, it was all driven by powernowd, which had flexible config
07:03
<
clever >
the hardware keyboard buffer must have been really short
07:03
<
clever >
and the timing was just right, that it always dropped key events when i finished reading and tried to do something
07:03
<
clever >
and "ls -ltrh" used enough cpu to make it want to clock up
07:03
<
clever >
sphalerite: with one of my old laptops, the first one with cpufreq scaling, the entire system would lock up for ~0.5 seconds every time the freq changed
07:02
<
clever >
sphalerite: that used to be a daily occurance for me
03:27
<
clever >
adisbladis: what does this one say?
03:27
<
clever >
# btrfs filesystem df /
03:26
<
clever >
adisbladis: ah, btrfs has its own problem, with the balance of metadata vs data
03:14
<
clever >
adisbladis: what about df -i /nix/store/
2017-06-27
20:42
<
clever >
default.nix also has a shortcut to it, so nix-build -A runner
20:42
<
clever >
runner = test1.config.system.build.runvm;
20:41
<
clever >
manveru: oops, if you build the system.build.runvm attribute, you get a bash script that runs it under qemu
20:39
<
clever >
MP2E: so you need to manualy write runit units for any service you want
20:39
<
clever >
so nearly every service under services.foo is non-functional
20:38
<
clever >
MP2E: not-os replaces the entire init system with runit, but systemd.services obviously doesnt work
20:37
<
clever >
yep, thats it
20:37
<
clever >
noobly: i have gotten a highly customized variant of nixos to compile down to ~45mb
20:36
<
clever >
i just sudo mount, lol
20:28
<
clever >
makes things so much simpler
20:28
<
clever >
sphalerite: yeah, i also didnt know about that until the guy running that server sent me that file
20:26
<
clever >
manveru: systemctl start/stop openvpn@linkname i believe
08:14
<
clever >
check nix-env -q and read the man page for the -e flag
08:13
<
clever >
tommyangelo[m]: you need to uninstall the version in roots nix-env
08:13
<
clever >
telotortium: you installed it in both nix-env and systemPackages
08:06
<
clever >
hyper_ch: or i have to manualy delete the snapshots
08:06
<
clever >
hyper_ch: i didnt do that on some systems, and now there is a multi-month delay on any nix-collect-garbage
08:05
<
clever >
hyper_ch: for example, i can turn snapshots off in /nix, but leave it on in / and /home
08:05
<
clever >
hyper_ch: i use 3 filesystems, so /nix and /home can optionaly have different options
05:51
<
clever >
hyper_ch: pong
03:53
<
clever >
pxc: not currently planning on it
02:16
<
clever >
i see 62 things refering to perl on my nixos machine
02:16
<
clever >
at least on nixos
02:16
<
clever >
pxc: but perl is probably being pulled in by other things
02:14
<
clever >
pxc: it seems to be a mix of perl and elf
02:13
<
clever >
pxc: nearly every script in groff is using a perl #!
02:12
<
clever >
/nix/store/cjmnrbfqrdnllb4j6a6qlzbv55gqzrih-groff-1.22.3/bin/groffer:#!/nix/store/nsa311yg8h93wfaacjk16c96a98bs09f-perl-5.22.3/bin/perl
02:12
<
clever >
[clever@amd-nixos:~]$ grep -r --color nsa311yg8h93wfaacjk16c96a98bs09f /nix/store/cjmnrbfqrdnllb4j6a6qlzbv55gqzrih-groff-1.22.3
02:12
<
clever >
we need to grep the groff storepath for the perl path
02:11
<
clever >
so its not a mistake in the fish package
02:10
<
clever >
it appears to embed the path to groff into a fish script involved in printing help
02:10
<
clever >
every file, binary and text
02:10
<
clever >
more like grep
02:10
<
clever >
nativeBuildInputs just means it has to be from the host, not the target
02:09
<
clever >
all runtime stuff is based on what paths are in $out, not the nix expressions
02:09
<
clever >
if its in the $out of groff, its in the closure of groff
02:08
<
clever >
i'm guessing somebody put it in the wrong field of fish
02:08
<
clever >
groff is usualy involved in generating man pages
02:07
<
clever >
what is your storepath for fish?
02:06
<
clever >
this is what i tend to use
02:06
<
clever >
[clever@nas:~]$ du -hc --max=0 $(nix-store -qR /run/current-system) | sort -h
02:06
<
clever >
pxc: one min
01:05
<
clever >
it wont add any values into the global or local scope
01:04
<
clever >
the import statement will return the top-level value of the named file
2017-06-26
22:31
<
clever >
so you can grep the exact nixpkgs copy that your running against
22:30
<
clever >
which is usualy what <nixpkgs> maps to
22:30
<
clever >
qmake: this directory contains the nixos channel for root
22:30
<
clever >
$ ls ~/.nix-defexpr/channels_root/nixos/
22:29
<
clever >
i do see a qtx11extras attribute in some of the qtxx sets
22:29
<
clever >
nix-repl> qt56.qtx11extras
22:24
<
clever >
- wrapQtProgram $out/bin/qt5ct
22:23
<
clever >
qmake: it was using makeQtWrapper
22:23
<
clever >
-{ stdenv, fetchFromGitHub, fftw, libsndfile, qtbase, qtmultimedia, qmake, makeQtWrapper }:
22:23
<
clever >
oh, interesting
22:23
<
clever >
c816bbc8a86 (Thomas Tuegel 2017-05-17 14:26:11 -0500 1) { stdenv, fetchurl, qtbase, qtsvg, qttools, qmake }:
22:20
<
clever >
qmake: i do see a related commit from ~9 days ago
22:20
<
clever >
22b10bac78e pkgs/top-level/all-packages.nix (Thomas Tuegel 2017-06-17 11:26:19 -0500 9754) libsForQt59 = recurseIntoAttrs (lib.makeScope qt59.newScope mkLibsForQt5);
22:18
<
clever >
qmake: with this, i can point it to a copy of master
22:18
<
clever >
nix-build -E 'with import <nixpkgs> {}; libsForQt5.callPackage ./mvesua2m {}' -I nixpkgs=/home/clever/apps/nixpkgs/
22:18
<
clever >
it breaks on nixos-unstable, but it works on master
22:18
<
clever >
qmake: it looks like a recent redesign of the qt stuff in nixpkgs
22:14
<
clever >
qmake: can you gist your default.nix file?
22:14
<
clever >
qmake: i do see a qmake at qt59.qmake
22:14
<
clever >
qmake: adding things to systemPackages will never fix build errors in nix
22:12
<
clever >
that is strange
22:11
<
clever >
qmake: what other qt packages are you looking at?
22:09
<
clever >
qmake: it may also not need qmake in the arguments of the file
22:07
<
clever >
qmake: you must load it with callPackage, or possibly qt5.callPackage
22:07
<
clever >
nix-build -E 'with import <nixpkgs> {}; callPackage ./molotov.nix {}'
22:07
<
clever >
as an example of what can go wrong, if you install nixops on ubuntu 14.04, it just fails to import modules, but the exact same nixops on 12.04 works fine
22:06
<
clever >
noobly: i prefer baking absolute paths into everything i build, so it will work even with nix-build and ./result/bin/foo
22:02
<
clever >
that is how pkgs is being added
22:02
<
clever >
ij: and via config._modules.args, you can add any custom argument you want, which is passed to every module
22:01
<
clever >
and the pkgs argument comes from loading <nixpkgs> and passing it the config in config.nixpkgs.config
22:01
<
clever >
so every module is being passed its own return value as an argument
22:00
<
clever >
which is passed to all of them
22:00
<
clever >
ij: nixos will then inteligently merge all of the configs (and the ones lacking either) together, to create a single master config attribute
22:00
<
clever >
ij: the top-level value of every nixos module (including configuration.nix) will return either { options = {}; config = {}; } or just { something };
21:50
<
clever >
and it uses this override to build a custom glibc locales package, with just the locales you selected
21:47
<
clever >
which is a result of merging environment.variables and a couple of others
21:47
<
clever >
which means they came from this variable
21:47
<
clever >
the 1st clue, those are in the first bank of variables
21:46
<
clever >
ij: nvm, that exact file is in the binary cache, which exact variable are you asking about?
21:46
<
clever >
ij: can you give an exact example?, there are subtle clues that can reveal where it came from gist the entire set-environment file
21:43
<
clever >
its in the nixos side of things, so its not a normal package and the normal tools wont find it
21:42
<
clever >
ij: its a combination of environment.variables and environment.extraInit
21:41
<
clever >
ah, i have a gist on that
21:40
<
clever >
ij: nix-index is one method, which file are you looking for?
21:39
<
clever >
because they cant just make it easy :P