2019-06-27
23:29
<
clever >
pie_: you can also use extend instead of composeExtensions
23:26
<
clever >
pie_: i usually call it packages = self: { ... }
22:52
<
clever >
somebody stop me!
22:52
<
clever >
meltdown or spectre, in a nix expr......
22:51
<
clever >
manveru: yep, all primops like attrNames will sort by name, and hide this from you
22:51
<
clever >
but, it only leaks that detail in terms of the order it evals (and runs trace)
22:51
<
clever >
and i was able to control if the output was 12 or 21, based on what files i parsed before tracing
22:50
<
clever >
for example, i was running a trace method over { a=1; b=2; }
22:50
<
clever >
and if you are careful about parse order, you can influence the id's, and then cause impurity in the eval order
22:50
<
clever >
manveru: sort of, its not actually a hash, but just an index into an array of all keys
22:48
<
clever >
so you dont have to bother doing strcmp() against "name" 2 million times
22:48
<
clever >
and certain keys like "name" have the magic int held in a global variable
22:48
<
clever >
and it will do a one-time string->int check, and then use the int==int compare when searching the set
22:48
<
clever >
behind the scenes, attrsets are int->value, for fast lookups
22:47
<
clever >
all primops that give the contents of a set, will sort by the key strings, and hide that detail from you
22:47
<
clever >
but the only time you will ever see that order, is when you mapAttrs builtins.trace over the set
22:46
<
clever >
manveru, pie_: note, that all attrsets are sorted by a magic int behind the key, not the string of the keys themselves
22:26
<
clever >
m1cr0man: i think so
22:03
<
clever >
monokrome: it can also be a partial filename
21:44
<
clever >
monokrome: that searched by filename, not package name
21:32
<
clever >
which is similar to with, but has a whitelist, and it should fail at parse time
21:32
<
clever >
you can also, `let inherit (lib) mkOption; in ...`
21:31
<
clever >
i just dont use it
21:30
<
clever >
with also introduces a slight overhead in attr lookups
21:30
<
clever >
so the callstack and time of failure is drastically different
21:30
<
clever >
but this fails (with an identical message) at eval time, when the value is forced
21:30
<
clever >
> with { a = 42; }; shouldnotexist
21:29
<
clever >
> with { a = 42; } in shouldnotexist
21:29
<
clever >
this fails at parse time
21:29
<
clever >
> let a = 42; in shouldnotexist
21:29
<
clever >
> let a = 42; in b
21:29
<
clever >
another, is that it mutates errors
21:23
<
clever >
gchristensen: fileSystems
21:20
<
clever >
neither is 'foo' but that may be harder to parse
21:19
<
clever >
`foo` isnt used yet
21:18
<
clever >
pie_: i dont think so
19:41
<
clever >
the subdomain says ftp, but the protocol is http!
19:41
<
clever >
and the domain is misleading
19:26
<
clever >
the install cd is also weird, sshd is enabled, but not running on bootup
19:25
<
clever >
kraem: the installation cd or a normal install?
19:19
<
clever >
standard breakpad stuff, that can be auto-uploaded to valve and merged with the split debug symbols
19:19
<
clever >
but it did internally make its own coredump
19:19
<
clever >
../common/pipes.cpp (766) : CClientPipe::BWriteAndReadResult: BWaitResult failed, disconnected
19:19
<
clever >
assert_20190626204219_1.dmp[24093]: file ''/tmp/dumps/assert_20190626204219_1.dmp'', upload yes: ''CrashID=bp-e4bdc89c-4dd1-4990-93fc-da53a2190626''
19:18
<
clever >
backtrace in coredump is useless, the frame pointers are kaput
19:18
<
clever >
Wed 2019-06-26 22:49:20 ADT 7511 1000 100 11 present /tmp/chrootenv5KHA4Z/home/clever/.local/share/Steam/ubuntu12_32/steam
19:09
<
clever >
Dandellion[m]: ive got amdgpu, but my steam has mostly been crashing after i exit a game
07:01
<
clever >
anttih_: nix-shell -E 'with import <nixpkgs> {}; callPackage ./foo.nix {}'
2019-06-26
23:54
<
clever >
`wpa_cli` will open a repl, where you can query wpa directly, with things like status
23:54
<
clever >
`iwconfig` will show the status of all wireless cards`
23:53
<
clever >
yeah, restart it, and then investigate what is broken
23:52
<
clever >
day|flip: check the status in `wpa_cli`, check `iwconfig`
23:52
<
clever >
day|flip: i would investigate what is wrong, without restarting it, to see why its broken
23:51
<
clever >
and i dont see any errors from either end
23:51
<
clever >
it started both connman and wpa_supplicant at exactly 17:17:57
23:48
<
clever >
day|flip: how does that compare to the timestamps in `journalctl -u connman -b 0` ?
23:48
<
clever >
day|flip: looks like it started normally, and was restarted a few times
23:46
<
clever >
day|flip: what is the actual error your seeing?
23:45
<
clever >
day|flip: `journalctl -u wpa_supplicant -b 0` ?
23:44
<
clever >
day|flip: you want to make one of the services require the other
22:55
<
clever >
pie_: nice
15:03
<
clever >
sonercirit[m]: i just read all the source
14:59
<
clever >
sonercirit[m]: nix-repl> lib.filter lib.isDerivation (builtins.attrValues kdeApplications)
14:51
<
clever >
,callPackage noonien
14:51
<
clever >
sonercirit[m]: you want [ "foo" "bar" ]
14:51
<
clever >
sonercirit[m]: [ ... ] is an array of items
14:50
<
clever >
noonien: nix-build
14:40
<
clever >
Guest77: root is trusted by default
14:40
<
clever >
Guest77: if the receiving end is a trusted user, it wont check
14:24
<
clever >
sonercirit[m]: nix repl '<nixpkgs>'
2019-06-25
23:06
<
clever >
Notkea[m]: nope
23:03
<
clever >
Notkea[m]: you want to set the outer config, after you mapAttrs over config.yourthing.yoursubmodule
22:43
<
clever >
emptyflask: probably
22:39
<
clever >
emptyflask: if nix-daemon is running, then NIX_SSL_CERT_FILE would have to be set for the nix-daemon process
16:29
<
clever >
Guest25435: `journalctl -f -t kernel` will show dmesg logs
16:29
<
clever >
which also lands in the journal
16:14
<
clever >
elux: and then below that, is what depended on pyqt
16:10
<
clever >
slabity: did you check `systemctl status name.service` ?
16:09
<
clever >
elux: nixops is a tool to auto-create hardware in the cloud, and deploy nixos to it in bulk
16:07
<
clever >
slabity: all services must be defined in the nixops deployment files
16:07
<
clever >
slabity: nixops will also ignore the remote configuration.nix file
16:05
<
clever >
slabity: nixops will never touch configuration.nix
16:02
<
clever >
elux: nix gives you a stack trace when it fails, to say what depended on it
15:24
<
clever >
disasm: it looks like the rust code is using a different nixpkgs, so it has a diff glibc
15:23
<
clever >
and 2 util-linux's
15:23
<
clever >
but there are 2 glibc's
15:23
<
clever >
disasm: closure is now 72mb, and doesnt depend on pam
15:15
<
clever >
closure is currently 93mb, and includes util-linux and pam
15:15
<
clever >
[clever@amd-nixos:~/iohk/jormungandr-nix]$ du -h --max=0 -c $(nix-store -qR ./result) | sort -h
15:14
<
clever >
nope, sd_journal_sendv!
15:14
<
clever >
36661: 0000000000000000 0 FUNC GLOBAL DEFAULT UND sd_journal_sendv@@LIBSYST
15:14
<
clever >
oh, it might be sd_notify
15:14
<
clever >
libsystemd.so.0 => /nix/store/mpz6fgvrz75lcczsdni94254jp5nmxw3-systemd-239.20190219-lib/lib/libsystemd.so.0 (0x00007f7cdd718000)
15:14
<
clever >
/nix/store/c8k8dl7k6hahagzzkyw501dp1548sp99-openssl-1.0.2r/lib:/nix/store/mpz6fgvrz75lcczsdni94254jp5nmxw3-systemd-239.20190219-lib/lib:/nix/store/681354n3k44r8z90m35hm8945vsp95h1-glibc-2.27/lib
15:14
<
clever >
gchristensen: its in the rpath
15:13
<
clever >
[nix-shell:~/iohk/jormungandr-nix]$ patchelf --print-rpath /nix/store/npw1ck04ps0x497hrlwzmiqidyp8x1yr-jormungandr-0.2.3/bin/jormungandr
15:12
<
clever >
disasm: *cries*, we depend on systemd!! lol
15:12
<
clever >
again, runCommand can solve that
15:11
<
clever >
and we need uuidgen
15:11
<
clever >
gchristensen: libuuid, is actually an alias to util-linux!
15:09
<
clever >
disasm: the override fails
15:09
<
clever >
rm: cannot remove '/nix/store/0syviigzsncd94hypp618c0ahz2w76cc-util-linux-2.33.1-bin/bin/su': No such file or directory
15:05
<
clever >
nix-repl> :b utillinux.override { pam = null; }
15:04
<
clever >
disasm: util-linux is to blame
15:02
<
clever >
disasm: building jormungandr-bootstrap....
15:01
<
clever >
disasm: bash doesnt depend on pam
14:59
<
clever >
disasm: let me check the cat drv...
14:58
<
clever >
but it depends on glibc
14:57
<
clever >
lordcirth: 991kb on nixos
14:57
<
clever >
-r-xr-xr-x 1 root root 991K Dec 31 1969 busybox
14:53
<
clever >
disasm: runCommand to copy cat to /nix/store/hash-cat/bin/cat ?
14:46
<
clever >
Neo--: yeah, you need to logout and log back in
14:45
<
clever >
uid=1000(clever) gid=100(users) groups=100(users),1(wheel),72(vboxusers),131(docker),500(wireshark)
14:39
<
clever >
Neo--: run `id` to confirm what groups your in
14:36
<
clever >
but it also has regular pcie slots, so i can just ignore that
14:36
<
clever >
NinjaTrappeur: its a laptop sized card, mini-pci-e
14:31
<
clever >
NinjaTrappeur: my nas came with this on the motherboard, and the antenna has 2 coax wires, so its much more modern
14:31
<
clever >
02:00.0 Network controller: Qualcomm Atheros AR9462 Wireless Network Adapter (rev 01)
14:29
<
clever >
NinjaTrappeur: the dlink router only has 100mbit ethernet ports, and the firmware is from 2005
14:27
<
clever >
and ive been wanting to use hostapd on my nas to resolve that
14:26
<
clever >
NinjaTrappeur: ah, in my case, my wifi is coming from an aging d-link router, and its capped at ~19mbit
14:18
<
clever >
NinjaTrappeur: ah, i did notice hostapd is only running in g band for me right now, and wanted to get more speed out of it
03:52
<
clever >
Notkea[m]: you want mkMerge
03:11
<
clever >
infinisil: i was trying to use the compare operator, lol
02:59
<
clever >
Notkea[m]: or was it !=
02:58
<
clever >
Notkea[m]: i think you can just use the = comparison to implement xor
02:58
<
clever >
infinisil: oh crap....
02:58
<
clever >
> true = false
02:58
<
clever >
> true == false
2019-06-24
14:48
<
clever >
zacts: it just tells nix-channel to --update, so mixing with -I nixpkgs= is pointless
14:48
<
clever >
zacts: yeah, the --upgrade is useless
14:19
<
clever >
ddellacosta: why do you need your own config file?
14:03
<
clever >
pbb: they should just be available in the initrd, do you have an example of what your doing?
03:48
<
clever >
day|flip: journalctl -f -u wpa_supplicant
02:18
<
clever >
infinisil's thing will filter by type
02:18
<
clever >
sonercirit[m]: this will filter by key, so you can also exclude rider
02:18
<
clever >
builtins.attrValues (lib.filterAttrs (key: value: ! builtins.elem key [ "recurseForDerivations" ]) jetbrains)
02:16
<
clever >
sonercirit[m]: one of the entries in that set, is not a package
02:16
<
clever >
> jetbrains.recurseForDerivations
02:14
<
clever >
sonercirit[m]: may need some () to scope things right, environment.systemPackages = with pkgs; ([ wget ] ++ builtins.attrValues jetbrains);
02:13
<
clever >
sonercirit[m]: probably
02:12
<
clever >
sonercirit[m]: so you would do: environment.systemPackages = builtins.attrValues pkgs.jetbrains;
02:11
<
clever >
sonercirit[m]: that returns a list, containing every value in the jetbrains set
02:11
<
clever >
> builtins.attrValues jetbrains
02:10
<
clever >
sonercirit[m]: what do you want the * to do?
01:33
<
clever >
aanderse: that gets more messy, i would patch the cmake layer to just take a pre-built copy of the npm stuff in an env var
01:26
<
clever >
CloudNinja: you can then continue with the installation as normal
01:26
<
clever >
CloudNinja: if you run kexec_nixos like in this example, it will immediatelly boot into nixos, without any changes to the hdd
01:25
<
clever >
aanderse: ah, then youll want to just fetchFromGitHub a copy, like daedalus does
01:24
<
clever >
elux: definitely looks like you have a _latest version on one machine
01:24
<
clever >
aanderse: youll want to import it, via fetchFromGithub, or use the copy nixpkgs provides
01:24
<
clever >
master linux, 4.19.41, master linux_latest 5.1
01:23
<
clever >
19.03 linux_latest is 5.1
01:21
<
clever >
elux: did you set boot.kernelPackages ?
01:21
<
clever >
for the .linux attr
01:20
<
clever >
nixos-19.03 is at linux-4.19.41
01:19
<
clever >
elux:
*looks*
01:07
<
clever >
while nixos-unstable gets upgrades, and potentionally deletions
01:07
<
clever >
elux: yeah, nixos-19.03 is the release channel, so it will only get stability and security updates
01:01
<
clever >
elux: what does `nix-channel --list` and `sudo nix-channel --list` report?
2019-06-23
22:24
<
clever >
day|flip: services.udev.extraRules
22:13
<
clever >
day|flip: i think it goes in $out/lib/firmware, and then into hardware.firmware = []
21:52
<
clever >
adamantium: and that may include your root pw, if you did users.users.root.initialPassword = "hunter2";
21:52
<
clever >
adamantium: of note, if your sloppy and have secrets in /nix/store/, the guests can just read them
21:48
<
clever >
adamantium: yeah, nixos containers are based on systemd-nspawn, and it will share /nix/store/ to every guest
21:39
<
clever >
foo_bbar: /usr/bin/env isnt in the nix sandbox, you need to run patchShebangs
20:10
<
clever >
kraem: yeah, it should
20:07
<
clever >
kraem: yep, looks good
20:05
<
clever >
kraem: rest of the file looks good
20:05
<
clever >
kraem: oops, ^^
20:05
<
clever >
bgamari: it should be changed to { config = config.nixpkgs.config; }
20:04
<
clever >
ar: why do you think its broken?
20:00
<
clever >
so you will need the 2nd part
20:00
<
clever >
kraem: { config = config.nixpkgs.config; } (where i put inherit) tells nixos to copy the 2nd half of your question to the vinefix packages
19:59
<
clever >
kraem: oh, and typo on the config part
19:59
<
clever >
kraem: you would replace the first part with vinefixPkgs.chromium
19:54
<
clever >
usually between the { pkgs, ... }: and the main attrset
19:54
<
clever >
kraem: yeah
19:53
<
clever >
kraem: you can then put vinefixPkgs.chromium into your systemPackages
19:52
<
clever >
kraem: that will just fetch the fixed nixpkgs, and pass it your existing nixpkgs.config values (which enable widevine)
19:51
<
clever >
kraem: one min
19:49
<
clever >
kraem: oh, i think its `git fetch origin pull/60833/head`
19:37
<
clever >
kraem: that will put you on the same commit as the PR, so you can just `nix-build -A chromium`
19:37
<
clever >
kraem: clone nixpkgs, and then run `git fetch pulls/60833/head` and then `git checkout FETCH_HEAD`
19:31
<
clever >
mog: if you want clang, you must use clangStdenv on linux, adding clang to the inputs causes issues
19:20
<
clever >
Netsu: NIX_CFLAGS_COMPILE = "-I${jerasure}/include/jerasure"; in the nix file
19:19
<
clever >
Netsu: no .pc files present, youll need to just generate your own -I flags then
19:14
<
clever >
Netsu: you would need to install jerasure, and then check its lib directory
19:08
<
clever >
Netsu: the pc file may only exist after building the package
19:07
<
clever >
mog: everything looks like it should be working
19:06
<
clever >
mog: you forgot the `type `
19:05
<
clever >
mog: what does `type g++` return in that shell?
19:02
<
clever >
mog: you can also `make VERBOSE=1` to make cmake reveal the commands
19:02
<
clever >
mog: are you sure that is inside nix-shell?
19:01
<
clever >
Netsu: it will be a .pc file somewhere under lib
19:01
<
clever >
Netsu: yeah, when dealing with include/jerasure, you need to add pkg-config into the mix, does jerasure have a pkgconfig file?
18:46
<
clever >
same for -I flags, just put headers in $out/include/ for the thing providing the header, and then put that in buildInputs
18:46
<
clever >
nix will handle -L for you
18:46
<
clever >
Netsu: for the most part, just omit all -L flags, and put the packages in the buildInputs for the derivation
18:27
<
clever >
mog: it might also need something like -std=c++11 to enable c++11
18:26
<
clever >
mog: can you paste the full error and the cmds it was running?
18:26
<
clever >
mog: are you using gcc or g++ to link it?
18:25
<
clever >
Netsu: if you gave some example code, i can look at it
18:21
<
clever >
Netsu: for most packages, you can just -lfoo to link against foo, no pkgconfig needed
18:20
<
clever >
sonercirit[m]: or just forward the port manually
18:19
<
clever >
sonercirit[m]: compare the output off ldd when ran on both binaries
18:19
<
clever >
sonercirit[m]: the client stuff should be built into the torrent client
18:18
<
clever >
sonercirit[m]: on the router or client?
17:29
<
clever >
the nix copy stuff is mainly to deal with updating such a copy, or making partial copies
17:29
<
clever >
youll want to backup /nix as a whole next time
17:28
<
clever >
qyliss: ahhh, yeah, no real way to recover from a missing db.sqlite
17:27
<
clever >
qyliss: do you know much of sqlite? poke around in nix/var/nix/db/db.sqlite
17:24
<
clever >
qyliss: `nix path-info --store local?root=/home/qyliss` and check its help page, can you query anything from that store?
17:22
<
clever >
though it may been awk to add a / to that
17:22
<
clever >
qyliss: nix copy --from local?root=/home/qyliss nix/store/* ?
17:21
<
clever >
qyliss: what about just using * ?
17:21
<
clever >
qyliss: ahh
17:16
<
clever >
qyliss: find ran locally, and is listing paths you already have
17:11
<
clever >
not sure if --all works like that, but you can try
17:08
<
clever >
qyliss: nix copy --from local?root=/path/to /nix/store/foo
17:02
<
clever >
and swap in --from to reverse the flow
17:02
<
clever >
you can even copy it to /mnt on a remote machine, over ssh
17:02
<
clever >
nix copy --to ssh://root@target?remote-store=local?root=/mnt /nix/store/hash-nixos
17:01
<
clever >
but it wont get gcroots and profiles
17:01
<
clever >
qyliss: that will copy things from one store to another, and maintain the database as it does so
17:01
<
clever >
qyliss: nix copy --to local?root=/mnt /nix/store/foo or --all
01:42
<
clever >
ive found most can be fixed with a dontCheck
2019-06-22
18:21
<
clever >
Guest20: yeah
18:19
<
clever >
Guest20: that can be put at any level of the config, so you could do systemd.services = mkMerge [ .... ];
18:18
<
clever >
Guest20: config = mkMerge [ { ... } { ... } ];
17:54
<
clever >
balder11: yep, so you need to also add firefox-bin to the whitelist
17:54
<
clever >
error: Package ‘firefox-bin-66.0.5’ in /nix/store/xcn5jx4di3fbkfgdv3bjmj3ap3p65k9z-nixos-19.09pre179307.bc94dcf5002/nixos/pkgs/applications/networking/browsers/firefox/wrapper.nix:176 has an unfree license (‘unknown’), refusing to evaluate.
17:54
<
clever >
[clever@amd-nixos:~/apps/nixpkgs]$ nix-build '<nixpkgs>' -A firefox-bin --arg config '{}'
17:53
<
clever >
balder11: oh,
*looks*
17:52
<
clever >
balder11: i can reproduce the problem with this
17:52
<
clever >
nix-build '<nixpkgs>' -A dropbox --arg config '{ allowUnfreePredicate = let whitelist = ["dropbox"]; parsePkgName = (pkg: (builtins.parseDrvName pkg.name).name); in (pkg: builtins.elem (parsePkgName pkg) whitelist); }' --arg overlays '[]'
17:51
<
clever >
balder11: i would expect firefox to still work though
16:09
<
clever >
justanotheruser: you want to be editing still.nix
16:08
<
clever >
> libreoffice.meta.position
16:07
<
clever >
justanotheruser: what about `sudo nix-instantiate --find-file nixpkgs` ?
16:06
<
clever >
justanotheruser: all --upgrade does, is run nix-channel --update
16:06
<
clever >
justanotheruser: --upgrade is pretty much pointless then and will never do anything useful
16:05
<
clever >
justanotheruser: and what is NIX_PATH set to?
16:04
<
clever >
justanotheruser: where is the file you edited?
16:04
<
clever >
justanotheruser: you shouldnt need --upgrade, and how did you change the configureFlags?
15:02
<
clever >
mpickering: i think you want `nix build -f .`
13:30
<
clever >
and every user has their own channels
13:29
<
clever >
fasd: nixos-rebuild --upgrade, will only update the channel called nixos
06:04
<
clever >
lurpahi: gist updated one last time, i'm off to bed, it compiles fully with nix now!
06:00
<
clever >
lurpahi: it compiles!
05:53
<
clever >
lurpahi: making progress now...
05:04
<
clever >
lurpahi: updated my gist again
05:00
<
clever >
mac10688: nix-env adds things to ~/.nix-profile, nix-shell sets up env vars, nix repl lets you eval chunks of nix
05:00
<
clever >
jackmaster-0.0.2/README:If you have a different CPU than athlon-xp, you have to adjust the
04:59
<
clever >
lurpahi: the build script inserted -march=athlon-xp
04:58
<
clever >
cc1: error: CPU you selected does not support x86-64 instruction set
04:55
<
clever >
lurpahi: oh, i see the problem its the sticky bit
04:53
<
clever >
the `ls -ltrh` i left in my function for debug, made it not fail
04:53
<
clever >
oh, interesting
04:52
<
clever >
and it still works, `Cannot change mode to rwxrwsrwx: Operation not permitted` is just a warning
04:52
<
clever >
lurpahi: heh, i just did exactly that after reading the man page for 7z
04:51
<
clever >
,locate gtk-config
04:50
<
clever >
lurpahi: how did you try running cpio?
04:47
<
clever >
lurpahi: ah, i only tested cpio outside of nix so far
04:45
<
clever >
lurpahi: it also looks like cpio can unpack it just fine
04:43
<
clever >
its just an optional thing to make it cleaner
04:43
<
clever >
lurpahi: and if you add a bash function to the unpackCmdHooks like this, the default unpackPhase will run it to unpack things
04:42
<
clever >
lurpahi: which tries to run unpackCmd
04:42
<
clever >
lurpahi: but it would also be nice to get it integrated into unpackFile
04:41
<
clever >
lurpahi: the default unpackPhase did already chmod, so its not that abnormal to put it into your own
04:40
<
clever >
lurpahi: ah, 7z's cpio, that is a weird thing to deal with
04:37
<
clever >
lurpahi: can you pastebin your nix expr?
04:24
<
clever >
bpye: what fs is /boot/ on?
04:23
<
clever >
bpye: what fs is /boot/ on?
04:23
<
clever >
s/boot/mount/
04:23
<
clever >
bpye: if its configured to not boot that dataset via fileSystems.whatever, i would expect it to boot
03:18
<
clever >
mac10688: all nix-shell does is set env vars, no namespacing occurs
01:42
<
clever >
fasd: and then `nix copy --to local?root=/mnt /nix/store/hash-source`
01:42
<
clever >
fasd: find the path under /nix/store/hash-source/
01:41
<
clever >
fasd: thats a bug with local?root=, you need to copy that storepath to /mnt with `nix copy`
00:49
<
clever >
day|flip: should be simple enough to update
00:47
<
clever >
or update the one in nixpkgs