<maurer> nix-env -iA nixos.gist
<clever> nix-env -iA nixpkgs.gist
et4te has joined #nixos
<maurer> gist somefile
<maurer> will upload it anonymously
<maurer> gist -p somefile
<maurer> will upload it to your account, privately, after you log in
<clever> i prefer this over most pastebins, because you can edit things, and github shows a history, you can also clone a gist with just "git clone"
<clever> login with gist --login
<maurer> I mostly like gist because it doesn't delete my paste, and I can go back through them later
<maurer> because if it was important enough to give to someone else, chances I need it again are nontrivial
<clever> yeah
<sphalerite> or `nix-shell -p gist --run gist` :D
<kainospur[m]> sorry for commented out lines.
<kainospur[m]> far exceeding others. but i think it just needs a src def
<clever> src = if pkgs.lib.inNixShell then null else nix;
<kainospur[m]> to be .
<sphalerite> kainospur: you're trying to use the nix package as the source for your package
<taktoa> holy shit I just found a $600 roundtrip flight from chicago to munich around the weekend of nixcon
<clever> kainospur[m]: you have set your source directory to be the compiled version of nix
<gchristensen> taktoa: wow!
<clever> kainospur[m]: the compiled version of nix lacks a Makefile
rpifan has quit [(Quit: Leaving)]
<sphalerite> Talking about nixcon, anybody spare an invite? :D
<clever> kainospur[m]: try instead using src = ./.;
<taktoa> is icelandair a terrible airline or something?
<kainospur[m]> excellent! thanks clever sphalerite
<kainospur[m]> so i was using the nix package as the source...
* kainospur[m] unpacking.
mudri has quit [(Ping timeout: 260 seconds)]
<Infinisil> I have no idea why this guide does this src thing: https://nixos.org/nixpkgs/manual/#installation
<Infinisil> And why is this R chapter named #installation
<sphalerite> Good question…
thblt` has joined #nixos
<clever> very good question, that example is just wrong
ertes has joined #nixos
<clever> the version="1"; also does absolutely nothing
<clever> all it serves to do is to mislead people into thinking it does something useful
* sphalerite git blame
<kainospur[m]> it just versions your own package right clever ?
<clever> heh, was doing the same
<clever> kainospur[m]: all it does is set an env variable called "version" to 1
<kainospur[m]> :)
<clever> kainospur[m]: the build script never reads that, so absolutely nothing happens
<kainospur[m]> also, i have this line: `buildInputs = with rPackages; [ `
<clever> so it never sets a version in anything
<kainospur[m]> what do i do if i want it to install pandoc, which is not an rPackage?
thblt has quit [(Ping timeout: 260 seconds)]
<kainospur[m]> oh okay. i assumed it labeled something :)
<kainospur[m]> to your point.
<clever> kainospur[m]: the "with pkgs" already brought all of nixpkgs into scope
<clever> kainospur[m]: so just 'pandoc' is enough
<kainospur[m]> okay... so the `with ...` just adds packges to the scope for the set ?
<clever> for everything after that
<clever> any place you can have a value, you can also do: with <set>; value
<clever> and then the value that follows, can access any attribute within <set>
<kainospur[m]> hmm... nifty
<clever> so where you normaly would have done buildInputs = <value>;, for example, buildInputs = [ rPackages.R rPackages.ggplot2 rPackages. knitr ];
<clever> you can also do buildInputs = with rPackages; [ R ggplot2 knitr ];
<kainospur[m]> ah...
<kainospur[m]> so syntactic sugar?
<clever> yeah
* kainospur[m] knows nothing of sugar
<kainospur[m]> okay sweet.
<clever> and this entire thing, is already inside another "with pkgs"
bennofs has joined #nixos
<kainospur[m]> so if i want to add a new package (tex stuff) where would i look up the names for those
<kainospur[m]> ?
<kainospur[m]> can buildInputs be a single value?
<kainospur[m]> sorry now i'm being lazy :)... can read the manual.
dywedir has quit [(Ping timeout: 268 seconds)]
<clever> the stdenv expects buildInputs to be a list
<maurer> buildInputs needs to be a list, but it can be a 1 or 0 element list
<kainospur[m]> ah okay.
arximboldi has joined #nixos
v0|d has quit [(Remote host closed the connection)]
<kainospur[m]> does nixpkgs support a tex distro in mac? like mactex?
takle has joined #nixos
<clever> i dont see mactex anywhere in nixpkgs
<Infinisil> texlive could work
<clever> https://gist.github.com/cleverca22/e411a205908cfd14a012d931f1dbdaf7 this is a nix function i wrote a while back
<clever> you run it on a string (a name), and a path to a latex file (can be a derivation), and it spits out a pdf
<kainospur[m]> does texlive have a 'set' get error `error: cannot coerce a set to a string,`
simukis has quit [(Ping timeout: 255 seconds)]
<Infinisil> But I think generally Mac support isn't that great, most people are on Linux (especially NixOS)
<kainospur[m]> yeah, i was testing it out to see how far it would go :)
* kainospur[m] still trying to understand a derivation
<clever> nix-repl> texlive.<tab><tab>
<kainospur[m]> how do you specify an input file?
<clever> Display all 3097 possibilities? (y or n)
<Infinisil> y
<kainospur[m]> Does that exist on mac: `zsh: command not found: nix-repl`
<clever> kainospur[m]: one example i had was just pdfit = latex2pdf "CT" ./input3.tex;
<clever> kainospur[m]: nix-env -iA nixpkgs.nix-repl
<kainospur[m]> okay. does '.' mean the 'src' relative path?
<kainospur[m]> or does that mean the path from the file?
justanotheruser has quit [(Ping timeout: 240 seconds)]
<kainospur[m]> the default.nix file i mean.
takle has quit [(Ping timeout: 276 seconds)]
<clever> any path starting with a . is relative to the directory the nix file is in
<kainospur[m]> ah excellent.
<Infinisil> That's the same on all Unix
<gnuhurd> clever: what if the path is a file
<gnuhurd> like .file
Wizek__ has quit [(Ping timeout: 240 seconds)]
<kainospur[m]> if my system has a version of mactex, can i somehow tell the nix environment where that is and use those binaries?
<clever> it must either start with: ./ ../ or /
<clever> anything else isnt considered valid
<clever> kainospur[m]: nix will go out of its way to ignore things already on the host at all costs
<clever> kainospur[m]: it will only ever use what is defined within nixpkgs
zennist has joined #nixos
<evangeline> hi, where can I find kernel headers in nixos; this is similar to the "apt-get install linux-headers-$(uname -r)" in Ubuntu for example?
<Infinisil> clever: It isn't? nix-repl> test/hi -> /home/infinisil/test/hi
<kainospur[m]> so i may be out of luck on mac for latex compilation.
<kainospur[m]> nix-repl doesn't appear to be on my command line.
<clever> Infinisil: oh, weird, havent seen it work like that
<clever> kainospur[m]: nix-env -iA nixpkgs.nix-repl
<dtzWill> evangeline: linuxHeaders ?
<clever> evangeline: nix-shell -p linuxHeaders
<kainospur[m]> so where did that install nix-repl clever ?
tommd has quit [(Ping timeout: 260 seconds)]
<kainospur[m]> it is now on my shell... but is that something local to me or is that in some sandboxed environment?
<clever> kainospur[m]: into ~/.nix-profile/bin/ which should already be in $PATH
<kainospur[m]> okay, so its just a package install
<clever> yeah
<clever> nix-env installs things into your users profile
<clever> nix-shell spawns a shell with it just added to PATH, so its isolated
<kainospur[m]> hmm... so a nix-shell is almost some form of chroot?
<clever> kainospur[m]: it just sets a bunch of env variables to change the search paths for things
<taktoa> hmm, one of the funny side effects of using nix so much is that now whenever I think "oh, I should use a hash function" I immediately jump to SHA256
<Ralith> I like blake2b personally
<kainospur[m]> so to inlcude texlive: i can just use texlive. :)
zennist has quit [(Ping timeout: 276 seconds)]
<taktoa> yeah I'm not saying it's like a technical decision or anything
<evangeline> clever: dtzWill the "nix-env -iA nixos.linuxHeaders" tries to install 4.4.10, while my current kernel is 4.9.36
<clever> evangeline: you must never install things like headers
<clever> evangeline: that breaks a lot of what nix does to make building simple
<taktoa> just like, the word association engine in my brain has a very strong edge from "hash function" to "sha256"
<evangeline> clever: the nix-shell just drops me into a shell at ~ , not sure how I can find headers form there.
<clever> evangeline: the shell automatically added the headers to the gcc search path
<clever> evangeline: so they should just work
<evangeline> yeah, but I need to know the exact path to the headers.
<sphalerite> evangeline: nix-build --no-out-path '<nixpkgs>' -A linuxHeaders
<sphalerite> evangeline: but why do you need to know this?
<clever> nix-instantiate --eval -E 'with import <nixpkgs>{}; "${linuxHeaders}"'
<clever> evangeline: this prints it out
<clever> but the nix-build also prints it
<sphalerite> isn't my option a bit nicer? :p
<clever> yeah, the nix-build also fetches it as well
<clever> evangeline: and to answer your other question, linuxHeaders_4_9
takle has joined #nixos
<evangeline> I'm trying to make vmware work in docker, but it uses the kernel, which comes from nixos (docker doesn't use its own kernel in every image, but hosts); therefore, vmware would possibly work by mounting the kernel headers directly into the docker image, where they are expected; therefore, the kernel version as well as the linuxHeaders would match exactly.
<clever> evangeline: also, to build a kernel module, you must use nix-build via the linuxPackages tree, nixos will fight you at every step if you try to build it by hand
<evangeline> clever: there is no linuxHeaders_4_9; "nix-instantiate --eval -E 'with import <nixpkgs>{}; "${linuxHeaders_4_9}"'" prints undefined variable ‘linuxHeaders_4_9’
<evangeline> the nix-instantiate --eval -E 'with import <nixpkgs>{}; "${linuxHeaders}"' displays the 4.10 kernel headers, so doesn't help me there.
<evangeline> I mean 4.4.10
<clever> ah yeah, 4.9 is missing, let me see
takle has quit [(Ping timeout: 240 seconds)]
<clever> evangeline: is this the headers for building a module or a userland component?
<evangeline> clever: what do you mean?
<clever> what are you building that needs the linux headers
<taktoa> D: was just trying out the new `nix repl` command in Nix 1.12... the tab completion is kind of problematic
<evangeline> clever: vmware in docker - look a couple of lines above you.
<taktoa> it cycles through the options
<taktoa> instead of listing them
<taktoa> so you can't do builtins.<tab> to list builtins anymore
<clever> evangeline: what part of vmware needs the linuxHeaders, can you pastebin the error?
<Infinisil> taktoa: Ohh, yeah, that's pretty bad :o
cpennington has joined #nixos
<clever> vim does the same thing, and cyces in a weird order, so i often open the wrong files
<clever> it prefers .hi files over .hs!
erictapen has joined #nixos
<evangeline> This: C header files matching your running kernel were not found. Refer to your distribution's documentation for installation instructions; and then: "Kernel headers for version 4.9.36 were not found. If you installed them in a non-default path you can specify the path below."
<clever> evangeline: and where did you get this source from?
<evangeline> This is a trial version of vmware-workstation, no source, just binaries.
<clever> evangeline: can you link the dl you used?
<clever> it must have source, thats the only way it can use kernel headers
<clever> and i cant download until i register, lol
takle has joined #nixos
hamishmack has joined #nixos
<evangeline> clever: yeah you need to register, plus you'll only get a .bundle, which is a self extracting archive
jgertm has quit [(Ping timeout: 255 seconds)]
mounty has quit [(Ping timeout: 268 seconds)]
mounty has joined #nixos
<kainospur[m]> aha, so i was able to get tex installed using some hackery building a texlive combination
justbeingglad has joined #nixos
<kainospur[m]> don't quite understand why it works yet :)
takle has quit [(Ping timeout: 260 seconds)]
<clever> evangeline: the bundle is just a bash script, prefixed to what is probably a tarball
<clever> evangeline: and reading the bash code, it has a --extract option
<sphalerite> kainospur: texlive.combine just builds a symlink forest and some wrappers that make a set of texlive packages available to the wrapped programs
<sphalerite> kainospur: often you can just use texlive.combined.scheme-small or similar rather than combining something yourself
<kainospur[m]> so apparently these work in the mac environment. i tried to use the `texlive` package name but it was failing.
<kainospur[m]> ah
<kainospur[m]> that helps.
<clever> evangeline: are you trying to get the vmware-workstation?
<evangeline> clever: yeah
<sphalerite> kainospur: see https://nixos.org/nixpkgs/manual/#sec-language-texlive for details
<kainospur[m]> i saw that but didn't get that you you can just use the package name: texlive.combined.scheme-small
<kainospur[m]> etc.
justbeingglad has quit [(Ping timeout: 276 seconds)]
<Infinisil> It's all just attributes and derivations
<Infinisil> texlive has the combined attribute, which has the scheme-small attribute which is a derivation
<kainospur[m]> hmm... it doesn't build with basic.
<evangeline> clever: did you open the .bundle in vim or any other editor that better handles large files?
<kainospur[m]> oh missing a font...
<kainospur[m]> hmm...
<clever> evangeline: just plain old vim
<kainospur[m]> thanks for all the help.
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] ttuegel pushed 1 new commit to master: https://git.io/v7wE5
<NixOS_GitHub> nixpkgs/master acf05ea Thomas Tuegel: dropbox: 31.4.24 -> 31.4.25
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] ttuegel pushed 1 new commit to release-17.03: https://git.io/v7wEF
<NixOS_GitHub> nixpkgs/release-17.03 c01097c Thomas Tuegel: dropbox: 31.4.24 -> 31.4.25...
NixOS_GitHub has left #nixos []
<clever> evangeline: [clever@amd-nixos:~/vmware]$ dd if=VMware-Workstation-Full-12.5.7-5813279.x86_64.bundle skip=1 ibs=15163 > foo.tar.gz
arximboldi has quit [(Quit: arximboldi)]
<clever> evangeline: i now have a normal tar file that i can just unpack
bennofs has quit [(Ping timeout: 240 seconds)]
<clever> though its missing the last 15kb
<clever> ah, needs an obs also
takle has joined #nixos
<clever> evangeline: i can confirm why the normal install fails, its expecting an ld.so at /lib64/ld-linux-x86-64.so.2, as it usual with ELF's from outside of nix
<clever> ./lib/libconf/lib/gtk-2.0/2.10.0/loaders/libpixbufloader-pnm.so
<clever> and they basicaly tried to make a crappy clone of nix, to ensure all libs it needs are available
<clever> but they missed /lib64/ld-linux-x86-64.so.2
<evangeline> can you provide me with a full command to extract the tar ?
<clever> i'm still trying to get the entire tar, i'm loosing the tail end of it
justbeingglad has joined #nixos
<evangeline> clever: I've successfully installed vmware in docker (ubuntu:16.04 image), but I'm having problems with the linux-headers.
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nix] taktoa opened pull request #1502: Added builtins.intern primop (WIP) (master...taktoa/intern) https://git.io/v7wuG
NixOS_GitHub has left #nixos []
<clever> its likely to just never work under docker, because it needs a kernel component to run right
<clever> and docker doesnt allow loading kernel modules
<evangeline> I've also manually downloaded the required linux-headers 4.9.36 and mounted them into docker, but I'm still getting the error although I selected the appropriate directory.
Supersonic112 has quit [(Disconnected by services)]
Supersonic112_ has joined #nixos
takle has quit [(Ping timeout: 260 seconds)]
Supersonic112_ is now known as Supersonic112
<evangeline> clever: btw: how did you determine that you had to use 15163 for ibs parameter?
<clever> brute-force
<clever> i just piped the dd into |hexdump -C | head
<clever> and adjusted it until i saw no more bash script
<evangeline> ah
<clever> the bash script uses a bunch of shell magic to count its own size and compute the answer
zraexy has quit [(Ping timeout: 260 seconds)]
<clever> the problem, is that the value of ibs causes it to skip the last 15kb of data, because its not an even multiple of ~15kb
<kainospur[m]> @freenode_evangeline:matrix.org: have you tried linuxkit?
<clever> and if i use an ibs of 1, with skip, it reads 1 byte at a time, and will take hours to convert
<kainospur[m]> so basically headers need to match the installed kernel.
<kainospur[m]> if you are doing custom ones you need to custom build the kernel.
<clever> lets just see what happens if i edit the bash!
<kainospur[m]> i recently used it to develop custom kernel srcs, where you build and package all the kernel aspects.
<kainospur[m]> you could use that with a nixos managed userspace, or use docker stuff.
<clever> kainospur[m]: nixpkgs makes that easy, when you integrate the source into the linuxPackages tree
<kainospur[m]> but this is a nix channel :)
<kainospur[m]> so if i have a core kernel component i can easily build a custom one using nix?
<clever> if you have the source for the module, it can easily be built
<clever> but vmware isnt making it easy to even confirm it has source
<clever> oooo, the 'split' program looks handy
erictapen has quit [(Ping timeout: 240 seconds)]
<clever> `split -b 15163 VMware-Workstation-Full-12.5.7-5813279.x86_64.bundle output` maybe
<clever> no, size seems off now
<clever> ah, because i edited it, lol
<kainospur[m]> what if its not a module, but a core component?
<taktoa> does anyone know when nix 1.12 is planned to release
<kainospur[m]> i would love to look into it.
<clever> kainospur[m]: userland components are far less fussy about what version of the kernel headers are used
<kainospur[m]> yeah
<kainospur[m]> its only modules that care :)
takle has joined #nixos
<kainospur[m]> okay so i'm slightly confused how to search with nix-repl
<kainospur[m]> i type in the beginning of the string and tab completion should find stuff?
<clever> kainospur[m]: nix-repl '<nixpkgs>' then use tab completion
<clever> evangeline: so with the unmodified bundle, the above split command cuts it up, and outputaa contains the bash script, the rest are fragments of a tar.gz
<taktoa> kainospur[m]: (`nix-repl foobar<RET>` is equivalent to `nix-repl<RET>:l foobar<RET>`)
<kainospur[m]> maybe i need to load some expressions? i recently changed channel.
<clever> and :r to reload
<clever> evangeline: https://gist.github.com/cleverca22/6253abf2cc45fefbda34386e6ff23a12 but the tar still seems to be truncated!
<kainospur[m]> when i do `nix-repl texlive` i get an error for no such file. is that what you intended taktoa ?
justbeingglad has left #nixos []
<clever> kainospur[m]: you must give it the path to a file with nix expressions
takle has quit [(Ping timeout: 248 seconds)]
<clever> kainospur[m]: like nix-repl '<nixpkgs>'
<clever> then you can eval texlive within that repl
<taktoa> <nixpkgs> is a Nix path literal
<kainospur[m]> ha
<kainospur[m]> literal.
<kainospur[m]> not replace with texlive :)
<kainospur[m]> okay maybe time for a nap.
<taktoa> the Nix interpreter looks at NIX_PATH and the -I options to compute <foobar>
<taktoa> like, <foo> is literally Nix syntax, it's not a placeholder
<evangeline> clever: that's great.
<taktoa> the angle brackets should be there
<evangeline> clever: so after extracting the contents, why do you intend to find the source ?
<clever> evangeline: to confirm if its a kernel module or a userland component
<clever> evangeline: even if you can get the kernel module to build, docker will never let you load it
takle has joined #nixos
<evangeline> clever: btw, I've installed vmware into docker and it should contain all the files that we need; can I search for something that you're looking for ?
<clever> evangeline: any .c files
<clever> "output88 output89 output9000 output9001", nope, bash failed to re-assemble the split!
taktoa has quit [(Remote host closed the connection)]
hellrazor has quit [(Read error: Connection reset by peer)]
pie__ has joined #nixos
hellrazor has joined #nixos
pie___ has joined #nixos
pie__ has quit [(Remote host closed the connection)]
pie_ has quit [(Read error: Connection reset by peer)]
takle has quit [(Ping timeout: 260 seconds)]
<evangeline> clever: here is a list of .c/.h files: http://dpaste.com/3TAAYFV
<evangeline> clever: most of the files are not related to vmware
<clever> evangeline: nearly all of those are unrelated to vmware, and those samples/examples arent required to make it work
<clever> we need to look at the files vmware added to the system
<clever> and due to the FHS, finding what it modified is just a matter of guesswork
<clever> there is no nix enforcing where it can make a mess
<evangeline> clever: I can verify exactly which files were written; give me a minute.
takle has joined #nixos
kiloreux has joined #nixos
takle has quit [(Ping timeout: 246 seconds)]
<clever> evangeline: the tar i am able to extract contains no source code, and makes no mention anywhere of kernel headers
<clever> and the tar unpack is failing after 39mb, the tar is 456mb!
<evangeline> kainospur[m]: btw, I forgot to ask, what is the primary purpose of linuxkit, can you explain it simply?
<clever> evangeline: if i run binwalk over the bundle, i can even see windows executables!!!
<clever> 19951200 0x1306E60 Windows Script Encoded Data (screnc.exe)
<dtzWill> haha
<clever> 68359398 0x41314E6 gzip compressed data, maximum compression, has original file name: "vmnet.tar", from Unix, last modified: Mon Jun 19 23:54:39 2017
<clever> evangeline: do you see a file like this anywhere in your docker?
gnuhurd has quit [(Remote host closed the connection)]
<evangeline> clever: just a second and I'll tell you the names of all times vmware installer touched
<clever> 225018118 0xD698106 gzip compressed data, maximum compression, has original file name: "winPreVista.iso", from Unix, last modified: Mon Jun 19 23:57:36 2017
<clever> evangeline: it even contains iso files for vista, lol
<clever> aha, thats why vim broke everything
<clever> vim silently added a single \n to the end of the binary content
sary has quit [(Ping timeout: 246 seconds)]
takle has joined #nixos
<evangeline> clever: here is the diff where aaa.txt (files before vmware installed), bbb.txt (files after vmware installed), ccc.txt (diff): https://www.file-upload.com/?op=upload_result&st=OK&fn=ef1c3fe3hqu6
<clever> evangeline: edit the bundle, in replace mode (not insert mode!) and put an exit; on the 2 rm's in on_exit, and the install at the botton of main()
<clever> and it still only extracts 25mb, lol
<clever> evangeline: ah, i see my problem, this bash script is just unable to extract everything
<clever> all it can do is extract an elf helper
<clever> that elf helper then re-opens the bundle, and extracts moar!!
<clever> they made this as un-friendly as they could possibly make it
<evangeline> clever: I can share docker procedure with you if you want?
<clever> i dont see that helping that much
takle has quit [(Ping timeout: 260 seconds)]
<evangeline> clever: you'll be able to get to the files.
<clever> +Wed May 20 05:10:20 2015 /bin/bzip2recover
<clever> these look like false positives?
<clever> you may want to sort aaa and bbb before you diff them
<clever> otherwise, the order will cause a false difference
<evangeline> yeah, forgot
<clever> and try uploading to gist this time, gist -p ccc.txt
<clever> should also limit it from entering /proc and /sys
<clever> if your using find, thats -mount
ebzzry has joined #nixos
<clever> evangeline: i'm seeing files under /etc/vmware-installer, /usr/lib/vmware and /usr/lib/vmware-installer
ebzzry__ has quit [(Ping timeout: 276 seconds)]
<evangeline> clever: http://dpaste.com/2Z92Z30
<clever> same general set of files, no trace of any source that could use linux headers
thc202 has quit [(Ping timeout: 240 seconds)]
<evangeline> clever: this is the vmware wrapper script that I'm running: http://dpaste.com/27KPSGF (this spawns the GUI, which produces the error about headers)
<evangeline> and there's modprobe in there, which probably won't work in docker as you said before
<evangeline> if I run /usr/lib/vmware/bin/vmware directly, then it immediately asks me for a licence key without promptint that kernel headers are not found.
isHavvyGhosting is now known as Havvy
<clever> yeah, i see, it tries to modprobe the drivers, and if that fails, it tries to build the drivers
<clever> but even then, they cant load
<clever> you need to find the driver source, and build thru via nix
<clever> ${tools_BINDIR}/vmware-config-tools.pl --modules-only
<clever> evangeline: so we have to find this
jgertm has joined #nixos
<evangeline> The vmware-config-tools.pl doesn't exist
<evangeline> It's possible that it's tar.gzed at this point.
<clever> evangeline: check line 77 of the last paste you linked
<evangeline> The /etc/vmware-tools/locations is not present on the system.
catch22__ has quit [(Remote host closed the connection)]
<clever> strange
drakonis has quit [(Remote host closed the connection)]
drakonis has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus opened pull request #27949: linux-common-config: Refactor, clean up (master...common_kernel_config) https://git.io/v7w2N
NixOS_GitHub has left #nixos []
contrapumpkin has quit [(Quit: My MacBook Pro has gone to sleep. ZZZzzz…)]
<evangeline> clever: there's only 1 occurrence of ""C header files matching your running kernel" and that is in the /usr/lib/vmware/lib/libvmware-modconfig.so/libvmware-modconfig.so binary
<clever> run strings on that and see if there are any paths to tars or source
<evangeline> I can run the binary manually with: vmware-modconfig --appname="VMware Workstation" --icon="vmware-workstation", which produces the exact popup message notifying me about missing headers, let me run strings
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27752: mariadb: 10.1.21 -> 10.1.25 (master...mariadb_10_1_25) https://git.io/v7WQB
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus pushed 2 new commits to master: https://git.io/v7waI
<NixOS_GitHub> nixpkgs/master 92461b8 Tim Steinbach: rkt: 1.28.0 -> 1.28.1
<NixOS_GitHub> nixpkgs/master d3203c7 Tim Steinbach: Merge pull request #27938 from NeQuissimus/rkt_1_28_1...
NixOS_GitHub has left #nixos []
<evangeline> clever: http://dpaste.com/32PQNRM
<clever> the info we want is in the vmware-modconfig binary or module
<clever> the other vmware-modconfig
<evangeline> yeah I figured, this is the bash shell
<evangeline> script
zennist has joined #nixos
<evangeline> clever: the help page: http://dpaste.com/2CF0AEE
<evangeline> there's the --headers option
<clever> but we need a copy of the source, not to make vmware build its own garbage
zennist has quit [(Ping timeout: 260 seconds)]
<ben> hey is there a way to exempt devices from being waited for during boot?
takle has joined #nixos
<ben> I'm blocking on my encrypted zfs volume that's only used for swap not showing up for like 30 seconds
<evangeline> clever: the sources are needed in order to see if those sources are part of a kernel module or a user-mode component. If it's part of the driver, we need to build that driver with nixos and load it in nixos right, but what about the userland component?
<ben> I wouldn't really mind not having swap until fairly late in the boot...
<clever> evangeline: i would expect the username stuff to be pre-built
<clever> evangeline: and the modprobe we see everywhere says its kernel
<ben> wait thatd break suspend-to-disk, wouldn't it. darn.
<clever> zfs doesnt support suspend to disk, period
<clever> you must export all zfs pools before you can suspend
<ben> oh, that's a relief
<clever> and if your swap is on a zvol, you have to swapoff first
<clever> and if you then have no swap left, you cant use suspend to disk
<evangeline> clever: does that mean if we can get the source, we can build it on nixos?
<clever> evangeline: possibly
<clever> evangeline: what does "lsmod" say under the docker?
takle has quit [(Ping timeout: 260 seconds)]
<evangeline> clever: it lists exactly the same drivers as are loaded in my nixos
Wizek has quit [(Quit: Connection closed for inactivity)]
<clever> then things might work, once the host loads the modules
<ben> lol i added an extra / at the beginning of the swap device's path and now the bash script in the initrd is confused and doesnt wait for it
<clever> lol
zeus_ has quit [(Remote host closed the connection)]
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/acf05ea777 (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
nix-gsc-io`bot has quit [(Client Quit)]
tnks has left #nixos []
<ben> but this also seems to hve broken my ssh agent and i'm a bit startled by that
eacameron has quit [(Remote host closed the connection)]
takle has joined #nixos
takle has quit [(Ping timeout: 240 seconds)]
<clever> gchristensen: ping
<ben> oh i'd inadvertently upgraded into https://github.com/NixOS/nixpkgs/pull/26605
takle has joined #nixos
<evangeline> clever: I found the culprit executable: http://dpaste.com/0JGQY9X ; is it possible that it's trying to build https://github.com/vmware/open-vm-tools ?
<ben> I need to stop having a channel rather than building against the nixpkgs checkout I'm actually reviewing when I'm trying to figure shit out
<evangeline> clever: strings: http://dpaste.com/1RYD681 - there are .c source files mentioned in there.
jgertm has quit [(Ping timeout: 260 seconds)]
<clever> evangeline: we have now found the source for the kernel modules
<clever> evangeline: so we need to add an attribute here, for the vmware drivers
<clever> read any of the files listed there for examples
takle has quit [(Ping timeout: 260 seconds)]
<evangeline> clever: also there are a number of issues during install: http://dpaste.com/3D6TJ6F (may be related)
<clever> could be docker messing with things
takle has joined #nixos
<clever> some of it
<evangeline> clever: which attribute do we need to add?
<clever> you probably want to create a open-vm-tools attribute, pointing to a custom nix package
<clever> then read the others drivers listed in that area for examples
<clever> nixpkgs will automatically pass you the right kernel headers
<clever> evangeline: as an example, this is the cpupower driver: https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/linux/cpupower/default.nix
<clever> ah, thats just building a piece of the kernel
<evangeline> clever: but the open-vm-tools is already in nixpkgs, why does it need modification?
<clever> where is it in nixpkgs?
<clever> oh, there
<clever> *tries*
sary has joined #nixos
takle has quit [(Ping timeout: 240 seconds)]
<clever> evangeline: another example of how to build drivers: https://github.com/NixOS/nixpkgs/blob/master/pkgs/os-specific/linux/acpi-call/default.nix
<evangeline> clever: first I need to go to sleep, 5 AM here - continuing tomorrow!
<clever> kk
cpennington has quit [(Remote host closed the connection)]
takle has joined #nixos
takle has quit [(Ping timeout: 240 seconds)]
justelex has quit [(Quit: Konversation terminated!)]
takle has joined #nixos
schoppenhauer has quit [(Ping timeout: 260 seconds)]
schoppenhauer has joined #nixos
takle has quit [(Ping timeout: 268 seconds)]
<johnw> peti: ping
takle has joined #nixos
takle has quit [(Ping timeout: 240 seconds)]
joehh has quit [(Ping timeout: 260 seconds)]
StevenTian has joined #nixos
takle has joined #nixos
<StevenTian> Has someone used nix-buffer with Emacs?
<StevenTian> It is said that nix-buffer is the box-shell for Emacs.
<StevenTian> I have installed it in Emacs but don't know how to use it.
takle has quit [(Ping timeout: 260 seconds)]
<johnw> I haven't yet
<StevenTian> I see. Sorry for my typo: it is said that nix-buffer is the nix-shell for Emacs.
Rotaerk has joined #nixos
<johnw> i understood
takle has joined #nixos
takle has quit [(Ping timeout: 248 seconds)]
alx741 has joined #nixos
takle has joined #nixos
<StevenTian> I guess that it is not widely used. 😃
takle has quit [(Ping timeout: 240 seconds)]
inflames has joined #nixos
justanotheruser has joined #nixos
justanotheruser has quit [(Client Quit)]
justanotheruser has joined #nixos
drakonis has quit [(Read error: Connection reset by peer)]
takle has joined #nixos
zennist has joined #nixos
takle has quit [(Ping timeout: 268 seconds)]
zennist has quit [(Ping timeout: 260 seconds)]
Capprentice has joined #nixos
takle has joined #nixos
eacameron has joined #nixos
mog has quit [(Ping timeout: 240 seconds)]
takle has quit [(Ping timeout: 276 seconds)]
eacameron has quit [(Ping timeout: 260 seconds)]
Capprentice has quit [(Remote host closed the connection)]
Capprentice has joined #nixos
Capprentice has quit [(Max SendQ exceeded)]
Capprentice has joined #nixos
takle has joined #nixos
takle has quit [(Ping timeout: 260 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] jgertm opened pull request #27950: Fix gogs service in the absence of any passwords (master...jgertm/gogs-no-passwd) https://git.io/v7wKV
NixOS_GitHub has left #nixos []
mog has joined #nixos
takle has joined #nixos
endformationage has joined #nixos
takle has quit [(Ping timeout: 248 seconds)]
takle has joined #nixos
takle has quit [(Ping timeout: 258 seconds)]
rpifan has joined #nixos
takle has joined #nixos
zraexy has joined #nixos
sary has quit [(Remote host closed the connection)]
sary has joined #nixos
endformationage has quit [(Read error: Connection reset by peer)]
takle has quit [(Ping timeout: 260 seconds)]
Myrl-saki has quit [(Quit: WeeChat 1.8)]
rpifan has quit [(Read error: Connection reset by peer)]
oida has joined #nixos
rpifan has joined #nixos
rpifan_ has joined #nixos
oida_ has quit [(Ping timeout: 240 seconds)]
rpifan has quit [(Ping timeout: 255 seconds)]
takle has joined #nixos
alx741 has quit [(Quit: alx741)]
swoorup has joined #nixos
takle has quit [(Ping timeout: 260 seconds)]
takle has joined #nixos
takle has quit [(Remote host closed the connection)]
takle has joined #nixos
<kainospur[m]> @freenode_evangeline:matrix.org: purpose of linuxkit... not really sure to be exact, but effectively they allow for custom kernels to be built (the are similar to virsh), but they also dockerize the whole deployment, so you specify everything as containers and they run all over the place. I selected it because they have a robust testing infrastructure, and it makes the linux development process a lot simpler.
<kainospur[m]> hey all quick question: i've got a permission problem on some output files from a nix-build
<kainospur[m]> they file is owned by root.
<kainospur[m]> but i try and copy it else where and it of course gives me grif outside the environment. is there a way to set the owner?
Myrl-saki has joined #nixos
Ivanych has joined #nixos
zeus_ has joined #nixos
hotfuzz has joined #nixos
Mateon3 has joined #nixos
zeus_ has quit [(Ping timeout: 246 seconds)]
Mateon2 has quit [(Ping timeout: 268 seconds)]
Mateon3 is now known as Mateon2
<simpson> kainospur[m]: nix-build's result points into the Nix store. You can't change the owner AFAICT.
<kainospur[m]> hmm... so if you want to track build artifacts you have to be root?
<kainospur[m]> in the underlying host that is.
<simpson> What do you mean by "track"? You want to audit what you've built?
<kainospur[m]> well right now i'm using nix to create a build environment for pdf documents.
<kainospur[m]> i want to see them easily.
<kainospur[m]> i'm doing it on command line, so am not launching a pdf viewer from within the environment.
zennist has joined #nixos
zennist has quit [(Ping timeout: 240 seconds)]
jgertm has joined #nixos
swoorup has quit [(Remote host closed the connection)]
swoorup has joined #nixos
Filystyn has joined #nixos
Jackneill has joined #nixos
kiloreux has quit [(Ping timeout: 255 seconds)]
proteusguy has quit [(Quit: Leaving)]
mkoenig has quit [(Ping timeout: 260 seconds)]
Guest74209 has joined #nixos
swoorup has quit [(Remote host closed the connection)]
revtintin has joined #nixos
Phillemann has joined #nixos
<Phillemann> I've got an nvidia GPU and would like to use the proprietary drivers. I added "nvidia" to videoDrivers as the manual suggests, but I'm getting errors about GLXBadContext in games.
<Phillemann> I checked and there's no "nvidia" entry in /etc/X11/xorg.conf.d, which I presume should be there?
<Phillemann> Or how does X get configured?
<simpson> Did you $(nixos-switch) and then reboot?
<simpson> nVidia proprietary drivers include a kernel component.
<Phillemann> Yeah, I did. And the nvidia modules are loaded.
<Phillemann> glxinfo output seems normal, too
<simpson> No ideas beyond that, sorry.
NightTrain has quit [(Quit: Lost terminal)]
<Phillemann> No problem, thanks for helping. :)
nh2 has quit [(Ping timeout: 255 seconds)]
roberth has quit [(Remote host closed the connection)]
armin has quit [(Quit: WeeChat 1.6)]
FRidh has joined #nixos
et4te has quit [(Read error: Connection reset by peer)]
et4te has joined #nixos
takle has quit [(Remote host closed the connection)]
bb010g_ has joined #nixos
YuukoAioi has joined #nixos
rpifan_ has quit [(Ping timeout: 255 seconds)]
dywedir has joined #nixos
takle has joined #nixos
StevenTian has quit [(Quit: Connection closed for inactivity)]
jgertm has quit [(Ping timeout: 240 seconds)]
Infinisil has quit [(Quit: leaving)]
takle has quit [(Ping timeout: 268 seconds)]
nh2 has joined #nixos
Filystyn has quit [(Quit: Konversation terminated!)]
takle has joined #nixos
tmaekawa has joined #nixos
tmaekawa has quit [(Read error: Connection reset by peer)]
takle has quit [(Ping timeout: 240 seconds)]
nh2 has quit [(Ping timeout: 240 seconds)]
Capprentice has quit [(Quit: Leaving)]
Capprentice has joined #nixos
erictapen has joined #nixos
simukis has joined #nixos
<sphalerite> kainospur: what do you mean by tracking build artifacts?
zennist has joined #nixos
zennist has quit [(Ping timeout: 260 seconds)]
thblt` has quit [(Remote host closed the connection)]
Myrl-saki has quit [(Quit: WeeChat 1.9)]
eacameron has joined #nixos
Wizek__ has joined #nixos
<sphalerite> Connecting anything to my laptop via bluetooth slows the wifi to a crawl (<100kB/s). Anyone know if this is misconfiguration somewhere or just broken drivers?
<sphalerite> My wifi is 02:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32)
<sphalerite> and the bluetooth is Bus 001 Device 002: ID 0cf3:e300 Qualcomm Atheros Communications
takle has joined #nixos
<sphalerite> (PCI and USB respectively)
hellrazor has quit [(Quit: WeeChat 1.9)]
eacameron has quit [(Ping timeout: 240 seconds)]
sjourdois has joined #nixos
mudri has joined #nixos
takle has quit [(Ping timeout: 260 seconds)]
YuukoAioi has quit [(Ping timeout: 260 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] vbgl pushed 1 new commit to master: https://git.io/v7wD8
<NixOS_GitHub> nixpkgs/master eb7312c Vincent Laporte: maxima: 5.39.0 -> 5.40.0
NixOS_GitHub has left #nixos []
<sphalerite> Is <literal> really the appropriate docbook element to use for nixos option names in the manual?
takle has joined #nixos
<sphalerite> Wouldn't <varname> or <option> be more suitable?
* sudoreboot[m] sent a long message: sudoreboot[m]_2017-08-05_09:02:47.txt <https://matrix.org/_matrix/media/v1/download/matrix.org/apYmrrXnHaqkYaNlGBeuOFqI>
<sudoreboot[m]> Why can't gcc create executables?
ebzzry_ has joined #nixos
ebzzry has quit [(Ping timeout: 268 seconds)]
thc202 has joined #nixos
tmaekawa has joined #nixos
tmaekawa has quit [(Read error: Connection reset by peer)]
ryannix has joined #nixos
bennofs has joined #nixos
revtintin has quit [(Ping timeout: 260 seconds)]
inflames has quit [(Ping timeout: 240 seconds)]
tmaekawa has joined #nixos
tmaekawa has quit [(Read error: Connection reset by peer)]
ebzzry has joined #nixos
ebzzry_ has quit [(Ping timeout: 246 seconds)]
<tilpner> That's not... enough context. What are you doing?
thblt has joined #nixos
wigust has quit [(Remote host closed the connection)]
ryannix has quit [(Ping timeout: 260 seconds)]
* sudoreboot[m] sent a long message: sudoreboot[m]_2017-08-05_09:32:59.txt <https://matrix.org/_matrix/media/v1/download/matrix.org/PUxotEHJMaXBtrSxiZUBfwPP>
ebzzry_ has joined #nixos
<sudoreboot[m]> Actually to be more precise, I only know that `gcc` and `postgresql` where involved. The rest were added afterwards
<sudoreboot[m]> s/and/or/
ebzzry__ has joined #nixos
<tilpner> FYI, long messages like that are put on a pastebin and linked to IRC by the Matrix bridge. That results in your highlights (mentions) not working
ebzzry has quit [(Ping timeout: 246 seconds)]
* sudoreboot[m] sent a long message: sudoreboot[m]_2017-08-05_09:36:52.txt <https://matrix.org/_matrix/media/v1/download/matrix.org/wvNbdmzsXDggKthOLEkbNVrm>
<sudoreboot[m]> Ah, thanks tilpner
<sudoreboot[m]> What's the character limit?
<tilpner> I'm unfamiliar with stack or its Nix integration. As you're running stack manually, can you compile C manually (not via Nix, but from the CLI)? Do you have gcc in your current environment?
<tilpner> I don't know the exact limit, but I assume it's done for anything over one line, or ~500 characters
ebzzry_ has quit [(Ping timeout: 258 seconds)]
<sudoreboot[m]> I don't normally compile any c code so I wouldn't know what to try compiling manually
<sudoreboot[m]> I do have gcc in my environment yes
<tilpner> Did you install anything to get to your new error?
Phillemann has left #nixos ["WeeChat 1.9"]
erictapen has quit [(Ping timeout: 255 seconds)]
<sudoreboot[m]> But stack --nix uses a pure env so that shouldn't affect
<sudoreboot[m]> I just added `gcc pkgconfig postgresql ` to my stack env
athan has quit [(Ping timeout: 260 seconds)]
<sudoreboot[m]> That fixed my previous issue
<tilpner> Is there an openssl entry you could add to your yaml file?
<sudoreboot[m]> I'll try adding openssl
<sudoreboot[m]> that didn't change anything :/
athan has joined #nixos
mpcsh has quit [(Quit: THE NUMERICONS! THEY'RE ATTACKING!)]
mpcsh has joined #nixos
<sjourdois> [cross-post on ##nix-darwin] hi, I'm using nix-darwin and my scripts are ignoring the shebang: it's correctly rewritten as #!/nix/store/rqh4c0rmyihs2hz6q9rx22dgfwfnjil7-python3-3.5.3-env/bin/python3 but runs with system python 2… I can run my script with "$(head $(which script) -n 1 | sed 's,^#!,,') $(which script)" but…
kiloreux has joined #nixos
<sudoreboot[m]> What would the equivalence of the -dev packages in typical debian repos be in nixos?
<tilpner> Do you have an example project I could clone and try to build locally perhaps? (Or you could wait for more experienced Nix-Haskell people)
<sudoreboot[m]> tilpner: https://git.snowdrift.coop/sd/snowdrift is the project I'm trying to build
tokudan has joined #nixos
<tilpner> "Progress: 13/224" :/
<sudoreboot[m]> tilpner: Oh wait, it might have worked with adding openssl... I accidentally had 2 entries of "packages: "
<tilpner> :c
<sudoreboot[m]> 35/117
* sudoreboot[m] is silly
<tilpner> Why just 117?
erictapen has joined #nixos
<sudoreboot[m]> Hmm, I dunno..
<sudoreboot[m]> Maybe I had the rest already built?
<tilpner> So can I cancel this?
<sudoreboot[m]> Yeah, thanks for the help :D
bb010g_ has quit [(Quit: Connection closed for inactivity)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin closed pull request #27923: nixos,nixpkgs: only build essentials on i686 (master...i686) https://git.io/v7auj
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin pushed 1 new commit to release-17.03: https://git.io/v7w9C
<NixOS_GitHub> nixpkgs/release-17.03 fe266a0 Robin Gloster: fix eval...
NixOS_GitHub has left #nixos []
jtojnar has joined #nixos
ebzzry__ has quit [(Read error: Connection reset by peer)]
jtojnar has quit [(Remote host closed the connection)]
ebzzry__ has joined #nixos
<thblt> I'm facing a stupid problem: I need to nix-env -i git to clone my .nixpkgs repo in my user home before nix-env -i all, but then nix-env complains about a conflict with git (since it's already installed). Is there any way to solve this besides removing git before nix-env -i all?
<thblt>
deltasquared has joined #nixos
zennist has joined #nixos
<gchristensen> clever: pong, but just for a few minutes
<tilpner> thblt - Try nix-shell -p git
LinArcX has joined #nixos
<sudoreboot[m]> tilpner: The reason I had 117 instead of 224 was because I hadn't pulled from upstream in a long time :)
<thblt> tilpner: thanks.
<LinArcX> Hi. I have arch Linux and Windows before and today install nixos. Create partitions and enable grub in configuration.nix file.but after install and reboot there are only nix in grub and arch and Windows don't exist. Why
erictapen has quit [(Ping timeout: 240 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin pushed 2 new commits to master: https://git.io/v7w9Q
<NixOS_GitHub> nixpkgs/master 0e192d5 midchildan: gnome: Fix the issue `Using the 'memory' GSettings backend issue`
<NixOS_GitHub> nixpkgs/master c9d419a Jan Tojnar: gnome: Further fixes for `Using the 'memory' GSettings backend issue`
NixOS_GitHub has left #nixos []
zennist has quit [(Ping timeout: 276 seconds)]
<avn> LinArcX: nixos not autodetect other oses, you need add statement for grub config to configuration.nix and rebuild
<sudoreboot[m]> LinArcX: https://nixos.org/nixos/options.html#os-prober is the option (supposedly, never did work for me)
erictapen has joined #nixos
elurin has joined #nixos
LinArcX has quit [(Ping timeout: 255 seconds)]
<eddyb> how does one update firefox?
<eddyb> firefox-bin I mean
<eddyb> I'm curious to try the new Stylo stuff but I have no idea how to actually run the update script
<eddyb> I assume devedition is nightly? or?
deltasquared has quit [(Quit: Leaving)]
erictapen has quit [(Ping timeout: 240 seconds)]
eacameron has joined #nixos
<tilpner> Is Stylo in anything but the nightly yet?
<thblt> On a related topic, why is Firefox in NixOs branded "Nightly"?
<thblt> Debian-like licensing issues?
eacameron has quit [(Ping timeout: 260 seconds)]
<tilpner> There's https://github.com/mozilla/nixpkgs-mozilla for firefox-nightly-bin
<LnL> thblt: yes
<thblt> LnL: but since Debian is distributing it as Firefox again, are these issues still valid?
et4te has quit [(Read error: Connection reset by peer)]
et4te has joined #nixos
<LnL> I think gchristensen was talking with mozilla people about it
<LnL> don't know the details
<thblt> thanks!
<gchristensen> they authorized to distribute it and name it Firefox, then I asked for written approval I can put in the repository and they clammed up.
<gchristensen> globin: https://github.com/NixOS/nixpkgs/pull/27923#discussion_r131421251 what was fpletz's concern? I don't unerstand
jtojnar has joined #nixos
jtojnar has quit [(Remote host closed the connection)]
* gchristensen is leaving for several hours soon
<globin> gchristensen: that we don't want to block the regular NixOS unstable channel on i686
<thblt> gchristensen: thanks for the clarification.
<gchristensen> you're welcome, I'll ping them again :)
<globin> gchristensen: should be handled like Darwin (nixpkgs unstable)
<globin> gchr
<gchristensen> globin: my intention was to block nixos-unstable though, so we didn't break any bootups
<globin> gchristensen: but could create a nixos-small-i686 to run tests and see breakage while not halting channel bumps for really supported archs
<gchristensen> we could have a new channel, nixos-unstable-i686, but I feel like that smells of "continued future support"
<gchristensen> whereas it being part of nixos-unstable implies less
<gchristensen> I see what you're meaning though
<gchristensen> IMO, if we remove i686 as blocking from unstable we need to warn users
<gchristensen> at nixos-rebuild time
<gchristensen> something like https://github.com/NixOS/nixpkgs/pull/23590
<thblt> Does anybody know which package is missing when ./configure complains about "syntax error near unexpected token `png,`" or something? I've encountered that before.
<gchristensen> probably libpng or something
<thblt> I seem to remember it was something more generic, closer to the build toolchain.
<thblt> libpng doesn't solve it.
jtojnar_ has joined #nixos
<gchristensen> hmm maybe pkgconfig
<thblt> Something like that, but not that. I should have written it down.
<sphalerite> yeah if you look at the line that throws the error you should see a macro that's probably what's missing
<sphalerite> given that yours has png in it pkg-config is probably the one
Phillemann has joined #nixos
<thblt> PKG_CHECK_MODULES, but adding pkgconfig and libpng in the nix shell solves nothing... Mmmh...
LinArcX has joined #nixos
<LinArcX> gnihton:
<LinArcX> [14:52] (avn) LinArcX: nixos not autodetect other oses, you need add statement for grub config to configuration.nix and rebuild
<Phillemann> I'd lik to create a few (~3) nix expressions for packages that depend on each other and on packages from nixpkgs. How do I "extend" my current nixpkgs with those packages easily?
erictapen has joined #nixos
<LinArcX> Avn:how add another OS to grub? Any link?
<tilpner> Phillemann - Overlays! https://nixos.org/nixpkgs/manual/#chap-overlays
k2s has joined #nixos
<tilpner> LinArcX - You could try boot.loader.grub.useOSProber = true;, but I've not used grub in years, I don't know how well that will work
<Phillemann> tilpner: Ah, that looks perfect, thanks.
bennofs has quit [(Ping timeout: 276 seconds)]
MP2E has quit [(Quit: leaving)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lheckemann opened pull request #27954: Document timezone changes in release notes (master...timezone-release-notes) https://git.io/v7wQF
NixOS_GitHub has left #nixos []
LinArcX has quit [(Remote host closed the connection)]
zarel has joined #nixos
k2s has quit [(Remote host closed the connection)]
bennofs has joined #nixos
<yochai[m]> KDE's global shortcuts are not working on current unstable. It seems like there is a dbus bug: lots of 'kf5.kded: No X-KDE-DBus-ServiceName found in' on login for different services.
gnuhurd has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lo1tuma opened pull request #27955: nodejs: remove version 7_x (master...remove-nodejs-7) https://git.io/v7w7n
NixOS_GitHub has left #nixos []
mudri has quit [(Ping timeout: 260 seconds)]
k2s has joined #nixos
k2s has quit [(Client Quit)]
<Phillemann> Is there a way to pass a specific git commit to nix-prefetch-url with a github url?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] vbgl pushed 1 new commit to master: https://git.io/v7w72
<NixOS_GitHub> nixpkgs/master c7c2474 Vincent Laporte: obelisk: fix hash
NixOS_GitHub has left #nixos []
erictapen has quit [(Ping timeout: 240 seconds)]
ison111 has quit [(Ping timeout: 260 seconds)]
<sphalerite> Phillemann: https://github.com/owner/repo/archive/<commithash>.zip
<sphalerite> s/zip/tar.gz/
<Phillemann> Oh! Very nice, thanks.
mudri has joined #nixos
cpennington has joined #nixos
mao_ has joined #nixos
b has joined #nixos
LinArcX has joined #nixos
erictapen has joined #nixos
erictapen has quit [(Remote host closed the connection)]
simendsjo has joined #nixos
erictapen has joined #nixos
dfranke has joined #nixos
<pstn> There is absolutely no way, to set the password variable for rspamd in nixos, right?
<LinArcX> Hi. I am installing nixos. After set: networking.wirelss.enable = true I only can ping 127.0.0.1. I can't access Internet. The WPA_supplicant service is up and running too. Any advice?
<makefu> LinArcX: you will probably have to edit /etc/wpa_supplicant.conf
<LinArcX> @Makefu: I use this command from manual : wpa_passphrase ESSID PSK > /etc/wpa_supplicant.conf
<makefu> you restarted the service afterwards?
<LinArcX> Yes
<makefu> can you run: systemctl status wpa_supplicant
<sphalerite> philipp: https://nixos.org/nixos/options.html#rspamd+extraconfig should do the trick, no?
<LinArcX> It is active and running
<makefu> any output?
<makefu> maybe also try: iwlist scan and see if the ap is in range
<LinArcX> Makefu: at the end of status he say :wlp3s0: CTRL-EVENT-SCAN-FAILED ret=-16 retry=1 and
phinxy has joined #nixos
<pstn> sphalerite: No, that's imho for the rmilter/rspamd interface.
<pstn> But I'll check again.
<makefu> if i'd had to guess id assume your wifi card needs an extra driver
<LinArcX> Wlp3s0:CTRL-EVENT-REGDOM-CHANDE init=BEACON_HINT type=unknown
<sphalerite> philipp: oh yes, I see. I think you're right
zennist has joined #nixos
<LinArcX> Yes. I run iwlist and don't show my device. :/
<sphalerite> LinArcX: what's your wifi hardware?
<LinArcX> How to find that?
Wizek has joined #nixos
<avn> sphalerite: pstn; btw new rspamd versions doesn't need rmilter anymore (rspamd can handle milter requests itself) -- I need to make update of package ;)
<sphalerite> cool
<sphalerite> LinArcX: /sys/class/net/<interface name>/device/uevent should show the driver and the address on the PCI or USB bus
zennist has quit [(Ping timeout: 248 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lo1tuma opened pull request #27956: git-lfs: 2.0.2 -> 2.2.1 (master...git-lfs-2.2.1) https://git.io/v7wdb
NixOS_GitHub has left #nixos []
<LinArcX> sphalerite: DRIVER:ath9k, PCI_CLASS=28000,PCI_ID=168C:00B,
joelpet has joined #nixos
joelpet has quit [(Changing host)]
joelpet has joined #nixos
<sphalerite> LinArcX: I think there's one character missing from the PCI_ID?
zarel_ has joined #nixos
zarel has quit [(Disconnected by services)]
zarel_ is now known as zarel
<LinArcX> Yes sorry. 168C:002B
grw has quit [(Ping timeout: 268 seconds)]
<LinArcX> sphalerite: Yes. sorry. 168C:002B
<sphalerite> anything interesting in the journal? Try journalctl -b | grep ath9k
et4te has quit [(Read error: Connection reset by peer)]
et4te has joined #nixos
mkoenig has joined #nixos
<LinArcX> sphalerite: Yes. Just one line : "stack kernel: ath9k 0000:03:00.0 wlp3s0: renamed from wkan0"
eacameron has joined #nixos
<sphalerite> alright, I don't have any further ideas, sorry :(
<LinArcX> Thank you very much. I will install it again :(
<LinArcX> And this time install network manager in early stages
<Phillemann> When installing "libX11", I get two directories in /nix/store, one for the library and one (libX11-dev) for the headers. How can I access those two in nix expressions?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] rvolosatovs opened pull request #27957: Mopidy-iris: 3.0.5 -> 3.1.3 (master...update/mopidy-iris) https://git.io/v7wFW
NixOS_GitHub has left #nixos []
<Phillemann> I can access the library just fine, but not the headers.
romildo has joined #nixos
eacameron has quit [(Ping timeout: 258 seconds)]
bkchr has joined #nixos
eacameron has joined #nixos
LinArcX has quit [(Remote host closed the connection)]
b has quit [(Quit: Lost terminal)]
<bkchr> hi, is someone aware that kde/sddm is broken on master? It complains that xcb is not installed
<tilpner> Yeah, nixos-unstable was blocked on it yesterday
<bkchr> Okay, is there an open issue to follow?
eacameron has quit [(Ping timeout: 248 seconds)]
b has joined #nixos
eacameron has joined #nixos
<tilpner> Just checked, didn't find any. There's probably not much point in having them, and they would add a lot of noise
cpennington has quit [(Remote host closed the connection)]
<bkchr> tilpner: Okay :) Just thought of helping to solve the problem. But did not start digging yet to find the cause.
erictapen has quit [(Ping timeout: 240 seconds)]
<adisbladis> bkchr: Fix is in staging
eacameron has quit [(Ping timeout: 248 seconds)]
eacameron has joined #nixos
<bkchr> adisbladis: ahh, ty!
simendsjo has quit [(Ping timeout: 260 seconds)]
<bkchr> adisbladis: can you explain me, why this changes are in staging, when master is not working anyway?
<adisbladis> bkchr: Because of the mass rebuild that the fix is going to cause
eacameron has quit [(Ping timeout: 248 seconds)]
<adisbladis> bkchr: I'm not clear myself on exactly when something should go into staging and when it should go directly to master. I'm a fairly new contributor
<bkchr> adisbladis: Are staging and master build on different machines? The changes probably caused the same mass rebuild on staging?
<bkchr> okay ^^
eacameron has joined #nixos
<bkchr> Yeah, I'm also mostly contribute smaller patches.
Phillemann has left #nixos ["WeeChat 1.9"]
eacameron has quit [(Ping timeout: 260 seconds)]
Infinisil has joined #nixos
<LnL> it's the same pool of machines
<LnL> but staging has a lower priority and won't impact users that use master
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] basvandijk opened pull request #27958: nixos: add the strongswan-swanctl service (master...strongswan-swanctl) https://git.io/v7wbg
NixOS_GitHub has left #nixos []
<sphalerite> Phillemann: use libX11.dev. But usually you'll just want to put libX11 in buildInputs instead
acarrico has joined #nixos
revtintin has joined #nixos
zarel has quit [(Ping timeout: 258 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] taku0 opened pull request #27959: android-sdk: 25.2.3 -> 25.2.5 (master...android_sdk_25.2.5) https://git.io/v7wNV
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] LnL7 opened pull request #27960: libgcrypt: fix clang build (master...clang-libgcrypt) https://git.io/v7wNr
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] rvolosatovs opened pull request #27961: grml-zsh-config: 0.12.4 -> 0.14.2 (master...update/grml-zsh-config) https://git.io/v7wND
NixOS_GitHub has left #nixos []
mudri has quit [(Quit: WeeChat 1.9)]
elurin has left #nixos ["ERC (IRC client for Emacs 25.2.1)"]
<seequ> Hmm, the lmdb package doesn't seem to include submodules :/
Turion has joined #nixos
<seequ> Is there a good way to set the flag for it without copying the entire thing?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27959: android-sdk: 25.2.3 -> 25.2.5 (master...android_sdk_25.2.5) https://git.io/v7wNV
NixOS_GitHub has left #nixos []
eacameron has joined #nixos
<FRidh> LnL: actually, staging has a higher priority than master regarding capacity. It just rebuilds fewer. The stable branches however have a considerable higher priority
iyzsong has quit [(Quit: ZNC 1.6.5 - http://znc.in)]
iyzsong has joined #nixos
eacameron has quit [(Ping timeout: 240 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus pushed 2 new commits to master: https://git.io/v7wAr
<NixOS_GitHub> nixpkgs/master e19a706 Mathias Schreck: git-lfs: 2.0.2 -> 2.2.1
<NixOS_GitHub> nixpkgs/master 1b52283 Tim Steinbach: Merge pull request #27956 from holidaycheck/git-lfs-2.2.1...
NixOS_GitHub has left #nixos []
<tilpner> seequ - What do you mean, I don't see any submodules on https://github.com/LMDB/lmdb
eacameron has joined #nixos
<seequ> tilpner: Err, forgot to reort back that I am an idiot.
<seequ> repor*
<seequ> report**
<tilpner> Oh, okay :/
<seequ> tilpner: It was a submodule of a different repo that we were missing, and there was a slight communication error. :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus pushed 2 new commits to master: https://git.io/v7wAd
<NixOS_GitHub> nixpkgs/master 0d63136 Yegor Timoshenko: bitwig-studio: 2.0 -> 2.1.3, fix desktop file
<NixOS_GitHub> nixpkgs/master 177e062 Tim Steinbach: Merge pull request #27945 from yegortimoshenko/patch-1...
NixOS_GitHub has left #nixos []
eacameron has quit [(Ping timeout: 268 seconds)]
<LnL> FRidh: oh really? even more reason not to push mass rebuilds to master :)
rpifan_ has joined #nixos
rpifan_ is now known as rpifan
leat has quit [(Quit: leat)]
grw has joined #nixos
eacameron has joined #nixos
kiloreux has quit [(Ping timeout: 260 seconds)]
eacameron has quit [(Ping timeout: 260 seconds)]
leat has joined #nixos
zarel has joined #nixos
zennist has joined #nixos
silver_hook has joined #nixos
orbekk3 has quit [(Remote host closed the connection)]
ebzzry__ is now known as ebzzry
zennist has quit [(Ping timeout: 255 seconds)]
orbekk1 has joined #nixos
cpennington has joined #nixos
LinArcX has joined #nixos
cpennington has quit [(Remote host closed the connection)]
oahong has quit [(Ping timeout: 276 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27894: cucumber: init at 2.4.0 (master...cucumber) https://git.io/v7gO5
NixOS_GitHub has left #nixos []
<Profpatsch> peti: Why is cabal-install not included in the ghc distribution?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27891: clementine: 1.2.3 -> 1.3.1 (master...jrg/clementine_from_123_to_131) https://git.io/v7gmW
NixOS_GitHub has left #nixos []
<Profpatsch> It seems strange, since it’s in the ghc source folder.
oahong has joined #nixos
oahong has quit [(Changing host)]
oahong has joined #nixos
<Profpatsch> And the version is always depends on the Cabal library (they are bundled after all).
<Profpatsch> -is
<Profpatsch> Right now it’s immensely complicated to get cabal-install 2.0.0.0 working with ghc821. I haven’t managed to override it in a way that it uses the distribution in ${ghc821.src}/libraries/Cabal/cabal-install.
<Profpatsch> (lib.overrideSrc super.cabal-install { src = "${self.ghc.src}/libraries/Cabal/cabal-install"; version = "2.0.0.0"; }).override { Cabal = null; };
<Profpatsch> still tries to build Cabal 1.2.4 after building cabal-install 2.0.0.0, which fails.
<domenkozar> did anyone succeed overriding a ghc core package? :)
eacameron has joined #nixos
alx741 has joined #nixos
Ivanych has quit [(Ping timeout: 246 seconds)]
<Profpatsch> domenkozar: did anyone *ever* succeed doing that? :P
<Profpatsch> I don’t even want to override a core package, I just want to use the correct core package and not the wrong one.
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] mimadrid opened pull request #27962: git: add pcre2 support (master...add/git-pcre2) https://git.io/v7wpN
NixOS_GitHub has left #nixos []
ebzzry_ has joined #nixos
kiloreux has joined #nixos
<domenkozar> Profpatsch: I think stack can do that
<Profpatsch> domenkozar: that misses the point. :)
ebzzry has quit [(Ping timeout: 240 seconds)]
<domenkozar> which point?
<LnL> Profpatsch: what did you try?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] ryantm opened pull request #27963: zsnes: remove $STRIP from compiler options (master...zsnes) https://git.io/v7whL
NixOS_GitHub has left #nixos []
<Profpatsch> LnL: What I wrote above.
<LnL> and doesn't cabal-install depend on a lot more then just the core packages?
Turion has quit [(Ping timeout: 255 seconds)]
<Profpatsch> In configuration-ghc-8.0.x.nix
<Profpatsch> LnL: nope.
<timclassic> How do people normally manage keeping Firefox Nightly or Dev Edition up to date in NixOS?
deltasquared has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] kevincox opened pull request #27964: Update cargo builder to fetch registry dynamically. (master...cargo-live) https://git.io/v7wh2
NixOS_GitHub has left #nixos []
simendsjo has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Profpatsch opened pull request #27965: lib/types: add signed/unsigned integer types (master...intBetween) https://git.io/v7whM
NixOS_GitHub has left #nixos []
FRidh has quit [(Quit: Konversation terminated!)]
<Wizek> How could I find out what what commit was used for packaging stack2nix that I have installed? Or where else does the source come from if not git, e.g. via hackage
<Wizek> I've tried to look in here: `nix-instantiate -I nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/nixos-17.03.tar.gz --eval -E '(import <nixpkgs> {}).haskellPackages.stack2nix'`
<Wizek> but didn't find mentions of sha, hash, commit, hackage
<Wizek> wait a second
<Wizek> I found a key named commitIdFromGitRepo just now
<timclassic> Hmm, looks like https://github.com/mozilla/nixpkgs-mozilla actually works if I fix the sources.nix URL to be date-specific.
<LnL> Profpatsch: ghc.src is a tarball
tv has quit [(Ping timeout: 260 seconds)]
<Wizek> So, I found `.haskellPackages.stack2nix.stdenv.lib.sources.commitIdFromGitRepo`, but it seems to be a <LAMBDA> function. Is this able to give me the info I am looking for, is it something unrelated? And if it can, how?
Turion has joined #nixos
ebaysdk-python has joined #nixos
<ebaysdk-python> hello all the peopl of nixos. I trying to install ebaysdk-python and it is not listed in nix package. can someone pls put it in nixos packages? thank you
<ebaysdk-python> the ebaysdk-python on git is at https://github.com/timotheus/ebaysdk-python by tim keefer
<Infinisil> ebaysdk-python: And you're using nixos but don't know how to write your own packages? :O
_rvl has joined #nixos
<ebaysdk-python> yes, i am illeterate writing my own package, how can i learn, sir, pls help
<LnL> it looks like it only depends on requests and lxml so it could be pretty streightforward
<LnL> I would recommend you read https://nixos.org/nixpkgs/manual/#python
LinArcX has quit [(Remote host closed the connection)]
<Profpatsch> LnL: Ah, right. Then it looks like the override wasn’t even used.
<LnL> you mentioned ghc-8.0.x, I assumed it was a typo
<LnL> but maybe it isnt?
jonte_ has joined #nixos
<ebaysdk-python> thank you, stuck at step 1 & 2 of this install how to by ebaysdk-python on nixos : Running the tests: ~/> export EBAY_YAML='myebay.yaml'; python setup.py test Installing ebaysdk on Mac, Linux, Unix: 1) Install System Dependancies Red Hat: sudo yum install python-lxml Ubuntu: sudo apt-get install python-lxml 2) Install the SDK with easy_install sudo easy_install ebaysdk Or install the latest versi
<ebaysdk-python> no yum, no apt on nixos :( no working
<Infinisil> ebaysdk-python: Alright I wrote an expression for that package, not sure if it's gonna work though, I had to disable the tests: https://gist.github.com/ff1d7f194982eb42bfa49a6c17601e20
<Infinisil> ebaysdk-python: I assume you're new to NixOS? Do you know how to use python packages?
<ebaysdk-python> thanks so much Infin, yes i knew to NixOS sofar I love it, I am also new to python packages, I installed python packages already nix-shell -p python
<_rvl> Hi, would someone be able to merge PR #27544 ?
ison111 has joined #nixos
jonte_ has quit [(Ping timeout: 255 seconds)]
<Infinisil> ebaysdk-python: I modified the expression to set up a dev environment with ebaysdk installed: https://gist.github.com/5da77fbe6cf710e06ae73b02f1f4e667
<Infinisil> Just use nix-shell
<LnL> Profpatsch: hackage-security wants an older Cabal
justbeingglad has joined #nixos
<LnL> s/wants/needs
<Infinisil> How many people have merge rights anyways? I only know of a few
<LnL> there's about 100 people that have commit rights I think
<Infinisil> Oh, that's more than I thought
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] LnL7 pushed 6 new commits to master: https://git.io/v7reX
<NixOS_GitHub> nixpkgs/master de0fb40 Glenn Searby: linode-api: init at 4.1.1b1...
<NixOS_GitHub> nixpkgs/master 2d81186 Jörg Thalheim: linode-api: 4.1.1b1 -> 4.1.1b2
<NixOS_GitHub> nixpkgs/master 55af60a Jörg Thalheim: pythonPackages.linode-api: disable future/enum34 on newer python versions
NixOS_GitHub has left #nixos []
<LnL> _rvl: ^
7F1AAK87S has joined #nixos
<7F1AAK87S> [nixpkgs] LnL7 pushed 2 new commits to master: https://git.io/v7reb
<7F1AAK87S> nixpkgs/master 28b0a79 Mathias Schreck: nodejs: remove version 7_x...
<7F1AAK87S> nixpkgs/master e66c85d Daiderd Jordan: Merge pull request #27955 from holidaycheck/remove-nodejs-7...
7F1AAK87S has left #nixos []
17SABM1VP has joined #nixos
<17SABM1VP> [nixpkgs] LnL7 closed pull request #27955: nodejs: remove version 7_x (master...remove-nodejs-7) https://git.io/v7w7n
17SABM1VP has left #nixos []
<_rvl> LnL: thanks!
tv has joined #nixos
<seequ> What's the best way to exclude files/folders from src?
gnuhurd` has joined #nixos
<LnL> builtins.filterSource
<Infinisil> ^^
<Infinisil> I've admittedly never used it, but I know it exists
gnuhurd has quit [(Ping timeout: 248 seconds)]
ebzzry_ has quit [(Ping timeout: 268 seconds)]
<pierron> timclassic: I made a firefox-overlay similar to the rust overlay which pulls it from mozilla server after verifying the checksum.
<seequ> Yeah, I just happened to realize that including .git and the last result isn't smart :p
<pierron> timclassic: I still have to publish it …
<LnL> there's an example in the nix manual https://nixos.org/nix/manual/#ssec-builtins
<seequ> YUp, found it
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh closed pull request #27320: polari: unbreak (staging...fix/unbreak-polari) https://git.io/vQDFX
NixOS_GitHub has left #nixos []
http_GK1wmSU has joined #nixos
<pierron> timclassic: https://github.com/nbp/nixpkgs-mozilla/tree/firefox-overlay You can find the latest version here.
http_GK1wmSU has left #nixos []
<pierron> timclassic: Also, there is a bug currently in the latest nightly, which cause the sandbox to forbid loading fonts.
gnuhurd` is now known as gnuhurd
<pierron> timclassic: Correction, it should be fixed in the latest nightly: https://hg.mozilla.org/mozilla-central/rev/9a01a7a8bb4e \o/
<pierron> niksnut: ^ Victory!
romildo has quit [(Quit: Leaving)]
justbeingglad has left #nixos []
<LnL> nice!
jonte_ has joined #nixos
endformationage has joined #nixos
<Infinisil> Oh nice
<Infinisil> pierron: Why is your fork so far behind?
<Infinisil> It would be nice if this is mergable into nixpkgs-mozilla
<seequ> Hey, remember when I was asking about nix rebuilding very very eagerly, even without changes?
<seequ> Yes, that was because src = ./.; includes the last result too :P
<pierron> Infinisil: because I have not yet rebase on top of everything I reviewed.
<Infinisil> seequ: Ohhh lol
<LnL> yeah, for a long time I thought src = ./.; just always did a rebuild :p
<seequ> I did come to that conclusion for a while
<pierron> Infinisil: and because I make overlay to automagically update instead of relying on people to commit changes to this repository
<Infinisil> sooo, how can one prevent this? builtins.filterSource would probably work, but it's kinda nasty
<seequ> I uses that.
<seequ> used*
bkchr has quit [(Quit: Konversation terminated!)]
<Infinisil> Hmm, I really think there should be a function in nixpkgs for that
<seequ> Infinisil: ofc you can abstract it to a function :)
romildo has joined #nixos
<seequ> src = ignore [".git" "build" "result"] ./.;
<seequ> ^ that'd actually be good
<Infinisil> seequ: ++
jonte_ has quit [(Ping timeout: 260 seconds)]
ertes has quit [(Ping timeout: 260 seconds)]
<pierron> seequ: [".git" "build" "result"] sounds like a .nixignore file :P
<seequ> .. .nixignore is a thing?
<pierron> src = ignore (builtins.readFile ./.nixignore) ./.;
<pierron> seequ: no, but why not bootstraping it ;)
<LnL> I think gchristensen used something like that somewhere
<seequ> Hey, that's a fun idea.
takle has quit [(Remote host closed the connection)]
<pierron> LnL: does not work the same way, but sounds indeed like a similar idea.
StevenTian has joined #nixos
<LnL> yeah not sure how that works
<pierron> LnL: it ignores directory containing this .nixignore file in them.
<LnL> lol, I should read the comments
<pierron> or the code.
* pierron makes a Jit for Rust.
<Infinisil> pierron: You're joking, right?
<pierron> Infinisil: no.
<Infinisil> :O, why though?
<pierron> Infinisil: To make a Jit for JavaScript.
<Infinisil> Hwhat
<pierron> Infinisil: and I am not kiding.
<pierron> most of the work which goes behind making a Jit for any custom language, is duplicating the code in a lower level & less secure language.
<Infinisil> So a javascript JIT compiler that uses rust, which may also JIT compile at runtime
<pierron> exactly
<Infinisil> Okay, but why??
<pierron> By making a Jit for Rust, with some Hook in the Rust compiler, I get rid of the code duplication, which is a huge part of where security issues are coming from.
<pierron> and this make it faster to instrument any existing Rust code base with a Jit.
<Infinisil> pierron: Code duplication in Rust source code?
<pierron> Infinisil: let me show you an example …
<Infinisil> Oh, compiled one makes more sense
dywedir has quit [(Remote host closed the connection)]
<pierron> Infinisil: http://searchfox.org/mozilla-central/source/js/src/jit/MacroAssembler.cpp#473-706 These are load and store operation on one type of particular object.
<seequ> JIT the JIT
<Infinisil> Ohhh, lol, seequ LnL pierron: lib.cleanSourceFilter does exactly that (filter .git, result), plus a bit more
<pierron> seequ: in fact no.
<seequ> pierron: it was a joke
olejorgenb has quit [(Ping timeout: 258 seconds)]
<pierron> seequ: this is not a Joke in Java world, that's what they are doing with GraalVM
takle has joined #nixos
<Infinisil> src = lib.cleanSource ./.;
<Infinisil> :O
deltasquared is now known as satan666
satan666 is now known as deltasquared
* seequ sighs
deltasquared is now known as literally_satan
literally_satan is now known as deltasquared
<seequ> I'd kill for a good doc
<Infinisil> seequ: ripgrep has become my 'docs' searcher :)
<Infinisil> where docs = source
deltasquared is now known as tuple
tuple is now known as deltasquared
eacameron has quit [(Remote host closed the connection)]
mkoenig has quit [(Remote host closed the connection)]
<deltasquared> oh cr- I forgot I was still in this channel
<pierron> Infinisil: basically, at the end you will have statically compiled function which are jit-able, and can be optimized dynamically based on the ""constant"" flowing in the program.
<deltasquared> sorry
<pierron> Infinisil: which solves another problem which is the question of self-hosting.
<Infinisil> pierron: So something like this? https://en.wikipedia.org/wiki/Profile-guided_optimization
<deltasquared> oh, so graal is a way to do VM-level things from within the VM itself
<deltasquared> intradesting.
<pierron> Infinisil: Jit compilers are doing a bit more than what is associated with the "profiling" code hotness.
mkoenig has joined #nixos
* obadz wonders how easy it would be to implement an ml frontend with truffle
<pierron> Infinisil: such as guarding on some values constness to inline them in the code.
erictapen has joined #nixos
<obadz> particularly wondering about how easy it is to communicate type information to the underlying infra and how good it's going to be at using this info for perf
<pierron> obadz: they are quite good at perf optimizations.
<pierron> obadz: you can describe a different object model than the Java one.
<dash> the other competitor to graal/truffle is rpython
<obadz> would be nice to have an F# replacement on the jvm.. with some adhoc polymorphism mechanism (typeclasses?)
<pierron> dash: which is exactly what I am thinking of when I mention making a Jit for Rust, but in Rust.
<obadz> I'm not sure how one would encode the latter in the java object model
<Infinisil> pierron: Hmm, don't fully get it admittedly, sounds interesting, never heard of anyone doing this
<obadz> also the lack of value types/generics in the jvm is going to be an impediment I'd assume
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] obadz closed pull request #23975: citrix-receiver: 13.4.0 -> 13.5.0 (master...update/citrix-receiver) https://git.io/vyHH3
NixOS_GitHub has left #nixos []
<pierron> dash: the problem of RPython is that this is a different language, which implies that as a VM developper, you have to choose for perf reasons.
goibhniu has joined #nixos
<pierron> When we are doing perf optimization, self-hosting is a dagger between fast start-up perfs, and (= xor) fast long-run perf, not both.
<dash> pierron: well, the chief difficulty is building the partial evaluator, i'd think
<deltasquared> obadz: sadly there have been proposals for value types at the lang level but I have no idea how it'd be done VM-level. probably need an incompat break
<obadz> deltasquared: I thought that was the goal of project valhalla but it keeps getting pushed back
<deltasquared> RIP.
<pierron> dash: self-hosting is not something I would want if the question is about safety.
<pierron> dash: as you remove the ability to analyze a single language for anlyzing the safety of your program.
<pierron> dash: Java where everything is self-hosted, is somewhat better from this point of view.
<dash> not sure I follow you
<Infinisil> Java is self-hosted??
<pierron> dash: but not practical, when your goal is to selectively optimize parts of the VM
<dash> (I work on a language that has a VM written in rpython, and we're using nix for build and package management)
<pierron> Infinisil: Java is running on a VM, and most of the Java library is written in Java.
<pierron> Infinisil: you can also write a GC and a Jit in Java.
<Infinisil> pierron: But is the compiler written in java?
<pierron> Infinisil: basically everything is self-hosted.
<pierron> Infinisil: GraalVM is
<dash> infinisil: javac has been written in java since the beginning, IIRC
<pierron> Infinisil: most GC implementations are too.
<Infinisil> dash: Well it can't be since the beginning, needs something to bootstrap selfhosting
<dash> infinisil: yes but you throw that away before your first public release. :)
et4te has quit [(Read error: Connection reset by peer)]
<Infinisil> I haven't written a single line (okay maybe a few) of Java for about 4 years now, not looking back :)
<deltasquared> I would imagine the first JVM interpreter was probably C based.
<dash> pierron: anyway I am very interested in your ideas, let me know how you get on :)
et4te has joined #nixos
<pierron> dash: So far, I am halfway there.
<dash> deltasquared: yes, the official java VM is written in C++
<obadz> zimbatm: didn't see https://www.meetup.com/DevOps-Exchange-London/events/241840105/ until afterward when you posted message on twitter. Should crosspost to https://www.meetup.com/NixOS-London/ so the 'regulars' can come cheer?
<pierron> dash: halfway to have a working prototype running
ted_ has joined #nixos
<dash> nice
<pierron> dash: I have a rust compiler plugin which is capable of dumping the Mir and storing it in a constant added by a macro from a Rust library.
<obadz> pierron: GC implementations are self-hosted? In general or just in Graal ?
ted_ has quit [(Read error: Connection reset by peer)]
<pierron> dash: and instrumenting with the Jit should look roughtly like: jit!{ fn eval(jc: &JitContext, script: &JSScript, args: &[Value]) -> Result<Value, Error> = eval_impl }
jtojnar_ has quit [(Read error: Connection reset by peer)]
<dash> obadz: it's common for them to not be self-hosted. the GC for SBCL is the only component of the system not written in lisp I think
<pierron> obadz: in general
<pierron> obadz: in Java world
<obadz> dash: that's what I was thinking. Since the GC code itself would produce garbage, who's going to clean that up?
<clever> the next GC cycle?
<Infinisil> obadz: The GC obviously
phinxy has quit [(Ping timeout: 276 seconds)]
<obadz> pierron: just want to make sure I understand the statement, you saying most GC implemetations on the jvm are written in Java?
<pierron> dash: yes
<pierron> obadz: yes ^
<obadz> oh weird
<obadz> I thought that had to be C
<dash> obadz: nah, you can do it if you write it in such a way as to not heap allocate anything
<obadz> you also need to perfom unsafe operations no?
<Infinisil> memory management done in Java?? That does sound pretty weird
LinArcX has joined #nixos
<clever> ive also seen guides on how to avoid garbage creation in java, to get better FPS in android games
<obadz> I guess you can expose what you need via ffi but still
<obadz> clever: that's just sad :)
<clever> because even if you can get a solid 60 fps, if a single GC cycle takes 5 frames of time, you get jitter
<deltasquared> clever: object pools?
<deltasquared> meaning that we're right back to C-style object reuse in a sense
<clever> mainly, avoid local variables in functions, always keep things as instances under this
<clever> and just reset them to defaults upon each use
<obadz> that's horrible from a code design standpoint
<deltasquared> clever: is it really that hard to touch openGL and the like from the NDK...
<TimePath> and if you have 3d vector classes, prefer mutation
<obadz> can't you use a different GC strategy?
<clever> it cant leak like pointers in c, its just moved up a layer
LinArcX has quit [(Remote host closed the connection)]
<dash> deltasquared: the only way to make programs go faster is to make them do less work
<Infinisil> dash: Or parallelize
<clever> obadz: a second major tool, turn automatic GC off, and then force a GC between levels, when the user wont notice jitter
<clever> obadz: combine both of those, and you can survive long enough to go 2 or 3 minutes between GC cycles
<dash> infinisil: Occasionally useful yep
<Infinisil> clever: We should just REIR (Rewrite Everything In Rust) and we won't have jitters anymore
<clever> Infinisil: lol
<Infinisil> It would work though!
<deltasquared> !g android NDK in rust
<clever> Infinisil: in the past, i have used QT on android, and it did "work"
<TimePath> not if it's Rust with a GC ;)
<deltasquared> ...
<deltasquared> wrong channel
<obadz> clever: not if you use some functional language that generates tons of garbage. But I guess young collections could be enough in those..
<clever> Infinisil: the main problem with QT on android, is that it doesnt look like android, it looks&behaves like a desktop
<deltasquared> eww.
<clever> for example, a list, has a small tab in the scrollbar, that you have to drag to scroll
<clever> and you drag it the oposite direction from normal android
<deltasquared> you know, I always thought the whole "looks the same everywhere!" was taken overboard when you consider touch devices.
<clever> deltasquared: but making the controls work in the exact oposite way is just bad UI
<deltasquared> a UI with the same workflow idioms, sure, but otherwise make the UI work with the input devices
<clever> yeah
<deltasquared> aiming for colour scheme consistency wouldn't hurt either
<clever> my thought when i had started, was cross-platform to the extreme
<clever> nearly identical codebase, shared between windows, linux, mac, android, and iOS
<deltasquared> ... no. :P
<clever> but it also looks almost identical (except for host theme differences)
<clever> and then the mobile versions look like crap
<pierron> TimePath: actually a GC in Rust would be auite interesting too, because Rust could have nice "drop" information to feed to the GC.
<deltasquared> that could be doable for the *core* if you split the core into a backend with some kind of protocol (RPC even, because fuck yeah plan9 resource sharing)
<clever> at the minimum, it needs a custom mobile UI written in QT
<clever> but i didnt feel like rewriting the entire android behaviour
<clever> deltasquared: i have done that in the past, i wrote the core as a java library
<TimePath> pierron: perhaps, but if REIR is just porting everything useful to rust verbatim, it won't fix GC pauses :)
<clever> deltasquared: then i used that core, in a SWT desktop app, an android app, and i had plays to transpile the java to objective-c for iOS
<pierron> TimePath: porting & verbatim should never be used together, as this is probably a mistake.
LinArcX has joined #nixos
<deltasquared> clever: SWT? is that swing?
<clever> deltasquared: https://github.com/google/j2objc
<clever> deltasquared: yeah
<LinArcX> How enable numlock at start up?
<TimePath> pierron: I've seen more mistakes come from trying to change things and port at the same time
<Infinisil> pierron: Doesn't rust have a GC type or so?
<deltasquared> clever: man, it's been ages since I touched SWT
<pierron> Infinisil: only in research papers at the moment.
<Infinisil> Or I remember at least seeing a GC for rust somewhere
<deltasquared> I used QT since... that felt weird.
<clever> deltasquared: finding screenshots...
<clever> deltasquared: http://imgur.com/a/mC4Rz
<obadz> brb
obadz has quit [(Quit: WeeChat 1.8)]
obadz has joined #nixos
<clever> deltasquared: both of those shared the java core, so there was a lot less rewriting going on, and i could test the java core by just writing simple desktop based bots for the game, then quickly throw an android UI over it
<Infinisil> clever: nice..
<deltasquared> clever: the ultimate version of that idea would be per-DE versions designed to integrate with the UI conventions of the DE (like gnome's... interesting menu bar thing for instance)
<deltasquared> more work though.
<deltasquared> in fact, what with common code being technically factored out to the core, the UI layer could be a lot tighter.
<deltasquared> native win32 UI (heresy!) for example
<clever> deltasquared: the java core was 80% wrapping the http based RPC in java functions, and 10% tracking state via polling for events
<Infinisil> I dream of specifying applications only be its concepts, while the native GUI figures out how exactly to display it
<clever> the ui was then just a matter of calling the right rpc methods (via the wrappers), gathering values, and presenting them
<clever> chat for example was handled almost entirely in core, which kept arrays of history for each channel
<pierron> dash: I expect to publish it as soon as I have a fully working proto. Unfortunately this is only on my sparse spare time.
<clever> and android has some powerfull tools to turn an array into a low-ram usage list on-screen
<deltasquared> Infinisil: I don't know about the general case, but LV2 audio plugins have a split of this kind already - the UI and core can only talk via messages, and the plugin host can synthesize a UI from data about the controls
<dash> pierron: I know the feeling
<clever> so i just had to give it a function to turn a single row into a UI element, and plug the 2 together
<clever> and i just remembered, the chat history wasnt an in-ram array
<clever> it was an sqlite database
<deltasquared> I remember running into a problem of how best to turn something like a text editor into such a system.
<pierron> dash: would you be interested in using, or contributing to scuh project? Or only knowing for the fun of how it is made?
<clever> the java core gave an api to query the row count, and to fetch a given row#
<clever> and that was enough to make the list work in android
<dash> pierron: the latter, I am not currently a Rust user, but as I said I do work on a project with an rpython JIT :)
<deltasquared> clever: I'm digging the gnome2 there
<pierron> dash: oh, cool. I never got any opportunity to actually use RPython myself.
* Infinisil still hasn't figured out how to properly theme his NixOS (without any DE)
jtojnar_ has joined #nixos
<pierron> dash: I am mostly working on SpiderMonkey (Firefox's JavaScript Jit), and figured that we need to move forward to develop a Jit faster than the competition.
<pierron> Infinisil: use feh and add a background image :P
<pierron> Infinisil: there is an option for that ;)
<timclassic> pierron: Thanks, I'll give it a shot!
<Infinisil> pierron: Already did
<Infinisil> It's more of a unified non-bad-looking color scheme
<pierron> timclassic: Are you looking at beta / nightly?
<Infinisil> that i want
<timclassic> pierron: Yes, that's the idea.
<pierron> timclassic: oh, I meant which one, but both is an acceptable answer too.
iyzsong has quit [(Ping timeout: 260 seconds)]
<timclassic> Oh haha, primarily Nightly
<pierron> timclassic: for web-development purposes, or just testing?
<timclassic> I want to experiment with 57
<timclassic> Just testing, mostly
kiloreux has quit [(Ping timeout: 276 seconds)]
<timclassic> No planned web dev
<pierron> timclassic: good choice. I promise that it is likely to break frequently along the way :P
deltasquared has left #nixos ["Leaving"]
<timclassic> pierron: Sweet.
<timclassic> :D
<pierron> timclassic: do you know how to report bugs?
<timclassic> About the Nix packaging, or Nightly in general?
<pierron> timclassic: Firefox
<timclassic> It's been a while, but I'm sure I could figure it out again. Feel free to pass on any advice, though.
<pierron> timclassic: the bug tracker is https://bugzil.la , otherwise ping me on irc.
<LinArcX> Dudes! I have install nixos but every time login, numlock is off. How turn it on?
<Olgierd> hi, does nixos-rebuild build-vm take users.users under consideration?
<pierron> LinArcX: https://nixos.org/nixos/options.html#numlock does that help?
<pierron> Olgierd: AFAIR, yes
<dash> pierron: oh, hi, i work for mozilla too ;) (data tools team)
<pierron> dash: oh, you are one of the persons corrupted by garbas then?
<pierron> dash: Did we met in London?
<dash> pierron: no I first heard of nix before I worked at mozilla, I met garbas in December :)
<Olgierd> i have spun a vm using a very basic configuration, and it didn't create them
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] rycee pushed 1 new commit to release-17.03: https://git.io/v7rTv
<NixOS_GitHub> nixpkgs/release-17.03 3049ac2 Will Dietz: mailutils: Fix attempts to set unsupported ownership and perms...
NixOS_GitHub has left #nixos []
<pierron> dash: Cool, yet another native Nix users at Mozilla :)
<pierron> whatever that means :P
<dash> pierron: we just need to get our ops team excited about it so we can use docker less... :)
<Olgierd> should I file a bug, or is it a pebkac, or desired behavior?
<pierron> dash: by the way there is #nixos channel on irc.mozilla.org
<pierron> dash: I created it by accident :/
<pierron> Olgierd: I recall there is a flag on users for creating the home directory
<dash> I know, I'm going to try to contribute some build stuff for hindsight to mozilla-nixpkgs
<pierron> Olgierd: can you check the /etc/passwd file, and then this option.
<LinArcX> pierron: no. Just arrow keys in num areas work. Cannot type number :)
<pierron> LinArcX: I have no clue then :/, Are you using sddm?
<obadz> pierron: so G1/CMS/etc. are written in java?
<LinArcX> Yes
<pierron> obadz: I don't know.
<LinArcX> Tnx
<pierron> LinArcX: sounds like a bug then.
kiloreux has joined #nixos
<symphorien> LinArcX: did you restart the service after switching ?
<LinArcX> I report it as soon as possible
<yochai[m]> Is plasma/KDE broken on unstable or do I have local issue?
<pierron> LinArcX: thanks :)
<timclassic> pierron: Cool thanks.
<LinArcX> Symphorein: I reboot system.
<pierron> LinArcX: As symphorien mention, NixOS ignores the update of the display-manager to avoid killing the user session.
<timclassic> pierron: Hm, looks like I get an "infinite recursion" when I symlink that overlay into my ~/.config/nixpkgs/overlays directory.
<pierron> LinArcX: a reboot should work.
<pierron> timclassic: which command?
<LinArcX> No it does not work
<timclassic> pierron: Anything I try with nix-env (e.g. nix-env -qaP, nix-env -i firefox-nightly-bin, etc.)
<timclassic> I can troubleshoot (I've written an overlay before) but I thought you might have a hint handy.
<clever> timclassic: what overlay did you symlink?
erictapen has quit [(Ping timeout: 268 seconds)]
<pierron> timclassic: I admit I have not tried it :/
<timclassic> Oh okay, just the toplevel directory of the repo you sent (https://github.com/nbp/nixpkgs-mozilla.git). At first blush it appears written as an overlay.
<pierron> timclassic: I usually do: nix-shell -p firefox-nightly-bin
<clever> timclassic: that points to default.nix, which is not an overlay
primeos has quit [(Ping timeout: 246 seconds)]
<clever> timclassic: you want rust-overlay.nix
<pierron> timclassic: you have to symlink firefox-overlay.nix, not the top-level.
<pierron> clever: nope, wrong one ;)
<timclassic> Ah, all right, I just didn't look hard enough! Thanks
<timclassic> Let me try that
<pierron> timclassic: I will have to make an overlay for the top-level, but I haven't done it yet :/
<clever> default.nix will import <nixpkgs> and apply the overlay for you
<clever> but that can also cause infinite recursion if configured wrong
<clever> because <nixpkgs> loads the overlay, which loads <nixpkgs>, which loads the overlay ....
<pierron> timclassic: nix-env -qaP ==> https://pastebin.mozilla.org/9028958
<LinArcX> pierron: it's work. I forgot to rebuild configuration.
<pierron> timclassic: the different nightly versions were me bisecting a sandbox issue
<pierron> LinArcX: Cool :)
<timclassic> I don't see a firefox-overlay.nix. Not implemented yet?
<clever> timclassic: do any other files contain the word overlay?
<pierron> clever: default.nix is not an overlay, and "import <nixpkgs>" should never appear in an overlay
<timclassic> Only rust-overlay.nix.
<clever> timclassic: which is the one i mentioned
tokudan has quit [(Quit: Leaving)]
<clever> pierron: yeah, thats why it fails horridly when you just symlink the root directory of this "overlay"
gnuhurd has quit [(Remote host closed the connection)]
<timclassic> Yeah, the infinite recursion makes sense now that I've looked harder at default.nix.
<pierron> yes, that's us not following the documentation properly :P Documentation that I wrote :P
gnuhurd has joined #nixos
<Olgierd> pierron, the users are in /etc/passwd in the disk image
v0|d has joined #nixos
<timclassic> Okay, I gotta go, I'll look more at this later today. I don't think that rust-overlay includes the firefox packages, though.
<clever> pierron: and also, isNormalUser = true;
<clever> pierron: that sets things like createhome automatically
<pierron> timclassic: it does not.
<pierron> timclassic: firefox-overlay.nix is the one you want to symlink if you want the automagically updated versions of firefox.
<Olgierd> i have isNormalUser = true; and home = "/home/...";, and the users are in passwd, but I cannot log in
<timclassic> pierron: clever: Thanks all. I'll come up with something later.
<timclassic> pierron: I haven't found such a file yet.
<clever> Olgierd: isNormalUser sets home for you
<clever> Olgierd: did you set a password on the user?
<pierron> timclassic: oh, have you checkout my branch?
<Olgierd> i used initialPassword
<pierron> timclassic: the firefox-overlay branch of the git repository?
<clever> Olgierd: was initialPassword used when you created the user?, or did you add it afterwards?
<Olgierd> (and yes, i'm aware of the security implications)
<Olgierd> hm, i think
<pierron> timclassic: I have other changes going along, which is why I have not pushed it yet.
<Olgierd> think #2*
<clever> Olgierd: that option only applies when first creating the user, and is otherwise ignored
<clever> Olgierd: run "passwd username" as root to change it
takle has quit [(Remote host closed the connection)]
<timclassic> pierron: Ah, that's what I'm missing!
<Olgierd> ok, i completely missed that
<timclassic> I should have looked at the branch list 😀
LinArcX has quit [(Remote host closed the connection)]
takle has joined #nixos
thblt has quit [(Remote host closed the connection)]
thblt has joined #nixos
<thblt> How do you set font size in the minimal NixOS ISO? I'm on a 4K HiDPI screen and the text is barely legible.
<Olgierd> https://github.com/NixOS/nixpkgs/issues/13537 is someone going to fix it? just asking, not trying to be rude
<clever> thblt: via a call to setfont i think
<clever> thblt: trying to find a path...
LinArcX has joined #nixos
<clever> setfont /nix/store/l8szcakw2yyx37dnnqm9x9pxzjb6353n-kbd-2.0.3/share/consolefonts/Lat2-Terminus16.psfu.gz
<clever> thblt: something like this, and to find the full path, nix-store -qR /run/current-system | grep kbd
<dtzWill> clever: http://grahamc.com/blog/nixos-on-dell-9560 mentions setfont, it's talking about a 4k screen laptop but probably does the trick
<dtzWill> err
<dtzWill> thblt: ^ :)
<thblt> clever: Thanks. I forgot the Lat2 part, I was trying "find /nix -name "Terminus*""
gnuhurd has quit [(Remote host closed the connection)]
<LinArcX> Hi. I want to install packages like vscode from nixpks's github repo. But I don't know how do that. Shall I add any channel?
Guest74209 has quit [(Ping timeout: 246 seconds)]
<Infinisil> LinArcX: Probably the easiest to add the unstable channel
<thblt> dtzWill: Thanks, that's actually my laptop!
<dtzWill> thblt: :D awesome, it's a great laptop! Mine as well! :D (why I knew the guide mentioned it.. hehe)
<dtzWill> although no 4k here
<Infinisil> smth like nix-channel --add https://nixos.org/channels/nixos-unstable unstable
<Infinisil> Then nix-env -iA unstable.vscode
<Infinisil> ( LinArcX )
<clever> also needs nix-channel --update
<Infinisil> Ah right
ebaysdk-python has quit [(Ping timeout: 260 seconds)]
<thblt> dtzWill: Why no 4K? My previous laptop was a Macbook air, 4K changed my life.
<dtzWill> thblt: haven't crossed the line into 4k yet, so maybe I don't know what I'm missing :3
<dtzWill> thblt: but concerns about battery life impact and the 4k cost quite a bit more IIRC
<Infinisil> I had to decide between 2560x1920@144HZ vs 4K@60HZ, chose the former :D
<dtzWill> mostly, not having fallen in love with it, didn't seem worth the cost and didn't wanna potentially pay more for "oo shiny" that ultimately hurt my primary use case
<dtzWill> (but admittedly more cautionary than really founded on facts re:battery life, for example)
<Infinisil> I would've bought a 4K@144Hz if it existed along with a graphics card that could handle it
<thblt> dtzWill Infinisil: I didn't remember the non-4K def was so high. MBA was 1440x900 for a 13", this is a pain.
<dtzWill> previous laptop was a x230 lol so... this laptop screen and size feels ~~luxurious~~ xD
<Infinisil> thblt: Same resolution for my laptop, I feel you
<dtzWill> it's 1920x1080 here, lol yeah not having the 1080 is annoying
<dtzWill> previous laptop was 1366x768 lmao so annoying
<Infinisil> whew
<Infinisil> I don't even know which one I'm going to get next
<Infinisil> I have a MacBook now, I used it for developing for a while, but now that I use NixOS exclusively there's really not much point into keeping a Mac
primeos has joined #nixos
<Infinisil> Except of course if I want to develop apps for iOS or so, the development stack on Macs is pretty sweet
<clever> ive been thinking of https://system76.com/laptops
gnuhurd has joined #nixos
thblt` has joined #nixos
<Infinisil> Is that.. an Overwatch reference?
<clever> dont think so
<dash> clever: hmm, heard of anyone with good experiences there?
<dash> I know some folks who bought machines there a few years back, weren't especially pleased
<clever> dash: taktoa has a laptop from there and i hear its pretty solid
<clever> he often picks it up by the display, and my dells wouldnt last a week if i did that
<thblt`> So I'm reading the guide for installing NixOS in the XPS, and author creates a 3M partition for Luks key. Is there a point?
<clever> thblt: i think thats to let it boot without the user entering a pw, which sort of makes the luks pointless
<Infinisil> I mainly need long battery life, current mac now only lasts like 1.5 hours max
gnuhurd has quit [(Remote host closed the connection)]
<dash> clever: cool. i've got a lenovo x1 carbon and i've done that fairly often :)
<thblt`> clever: No, the key partition is actually just random bytes in a luks container.
<clever> Infinisil: my dell with a half-dead battery gets ~40 minutes
thblt has quit [(Ping timeout: 260 seconds)]
gnuhurd has joined #nixos
<clever> thblt`: weird, can you link the guide?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27935: linux-minipli: Init at 4.9.40 (master...minipli_kernel) https://git.io/v7V0h
NixOS_GitHub has left #nixos []
<thblt`> It seems to be a two-stage system. User enter password to decrypt key partition, which is used as a key to decrypt root partition.
<clever> weird
<clever> i would just skip that
<Infinisil> Heh, cc grahamc
<clever> thblt`: aha, i see why he did that
<clever> thblt`: he is using the 3mb partition as a "password", to unlock 2 more luks, the swap and rootfs
<clever> so you only enter 1 pw by hand, for that 3mb partition
<clever> i just used LVM to do the same thing
<Infinisil> clever: Ohh, that might be faster actually
<thblt`> I see.
<thblt`> Infinisil: faster than LVM?
<clever> in my case, i only have a single luks, and then i ran pvcreate + vgcreate on the luks device, followed by 2 calls of lvcreate
<Infinisil> thblt`: most definitely
<clever> then the rootfs and swap live on lvm
Mateon2 has quit [(Ping timeout: 240 seconds)]
<thblt`> Infinisil: You mean at boot or during regular use? LVM boots quite fast.
<clever> i havent done any testing to verify the speed, but its a decade old laptop, so its not likely to make a difference to me
thblt` is now known as thblt
<Infinisil> thblt`: LVM is just another layer on top of luks, while the other way you just have multiple luks's, which i think should be faster (not by much, but still)
<clever> thblt: also, what filesystem do you want for the rootfs?
<clever> that will play into these choices some
<clever> ive been using zfs on most of my new installs
* Infinisil votes for zfs as well
<thblt> clever: I always used ext4. Luks, then LVM inside luks, with root, home and swap.
* thblt reads about zfs.
rpifan has quit [(Ping timeout: 260 seconds)]
<clever> zfs is a bit like nix, all blocks on the disk are immutable
<clever> nearly
<clever> any time you write to the disk, it creates a new variant of the file (and every directory above it), refering to a combination of the unmodified blocks, and the new blocks
<clever> and if you have no snapshots, it will GC the old versions fairly quickly
<clever> but if snapshots are on, it will keep them around
<grantwu> I don't think it's nearly immutable, it _is_ immutable
<clever> the only mutable part is the root directory area
<clever> where it has to change some pointers into the immutable data
<grantwu> ah
<clever> and even that i think is a ring-buffer
<clever> so there are multiple copies of it
<srhb> Since #nixos is indulging its fs addiction again, does anyone have a btrfs to zfs comparison handy? I'm switching to zfs regardless, but it'd be nice to compare.
<Infinisil> Ohh that reminds me, I should probably set like a 90% quota restriction on my root zfs dataset, I think this should prevent the fragmentation problems
<clever> srhb: i tried to run hydra-eval-jobs on btrfs a year ago, it had to create ~20,000 400 byte files in /nix/store, btrfs timed out on writing, and went into read-only mode
StevenTian has quit [(Quit: Connection closed for inactivity)]
<srhb> clever: Right, those kinds of issues are why I'm switching, I'm thinking more from a theoretical viewpoint :)
<clever> ah
<grantwu> I think btrfs uses B trees instead of whatever ZFS uses
<grantwu> I watched a video in which Matt Ahrens says that it would have been nice for ZFS to do that
<LnL> lol, don't know why but I keep hearing about weird issues with btrfs
<srhb> I suppose there's a licensing issue.
<grantwu> Licensing issue?
<grantwu> For the B tree thing?
<thblt> So I read zfs (on some Reddit thread) that zfs is designed "to run bare metal", ie with direct access to the physical storage. I assume thne then that Luks or LVM above zfs are bad ideas?
<srhb> grantwu: For zfs vs. kernel in general, I'd think?
<srhb> grantwu: Like, it will never just be out of the box?
<grantwu> Yes
<grantwu> Except Ubuntu did it
<srhb> Huh.
<LnL> thblt: that's only a thing on solaris, not ZoL
<grantwu> ZFS is designed to run with direct access to physical storage, yes
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03-small advanced to https://github.com/NixOS/nixpkgs/commit/3049ac21ef (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-17.03-small)
nix-gsc-io`bot has quit [(Client Quit)]
<grantwu> LVM is not very necessary, but LUKS is the only way to get disk encryption, until ZFS encryption lands
<grantwu> Like, it works. You can even used file based vdevs for testing. It's just not necessarily performant
<Infinisil> ZFS encryption is so close..
<clever> thblt: the reason i was asking about FS earlier, is that zfs doesnt support suspend to ram, or disk
<clever> thblt: so hibernation is out of the question if you have zfs
<clever> thblt: which means you dont need a stable swap encryption, leading to swapDevices.*.randomEncryption
<grantwu> Does it?
<thblt> clever: not even suspend to RAM? This is not optimal for a laptop.
romildo has quit [(Quit: Leaving)]
<grantwu> Hrm...
<grantwu> Well, I've never tried hibernating.
<Infinisil> Well suspend works
<Infinisil> for me on zfs on a laptop
eacameron has joined #nixos
<clever> thblt: and once you have randomEncryption on, you are down to 1 luks device (the zfs pool), so you dont need gchristensen's second 3mb luks trick to unlock 2 things
<clever> i would expect randomEncryption to play nicely with suspend to ram, since the key stays in ram
gnuhurd has quit [(Read error: Connection reset by peer)]
<Infinisil> Damnit now I need to rethink my disk setup again
stanibanani has joined #nixos
zeus_ has joined #nixos
eacameron has quit [(Ping timeout: 268 seconds)]
<thblt> clever: I'm sorry, I'm not sure I follow. From the issue you linked, I gather zfs on Linux doesn't support suspension, ie, it doesn't support *any* kind of suspend, neither suspend to RAM nor hibernation. Am I wrong?
<clever> thblt: thats what i read, but Infinisil thinks he had it working with suspend to ram
<Infinisil> thblt: It does, I am using it
<Infinisil> I mean RAM has nothing to do with ZFS
LinArcX has quit [(Read error: Connection reset by peer)]
<stanibanani> Hey guys, I made a nixos expression to route internet traffic through your ethernet ports (basically making your pc act like a router) if you are interested https://github.com/stanipintjuk/nixos-router
<thblt> Infinisil: Oh, I misread. I guess freeze is hibernation, not suspend to RAM.
<clever> oops
<clever> stanibanani: ^^^
<clever> stanibanani: full dhcp, dns, and nat, along with an ipv6 tunnel partialy configured
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus opened pull request #27969: atom: Add paxmark (master...atom_paxmark) https://git.io/v7rtL
NixOS_GitHub has left #nixos []
<Infinisil> stanibanani: Well done!
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/eb7312ca7d (from 10 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
nix-gsc-io`bot has quit [(Client Quit)]
<stanibanani> clever: hehehe you beat me to it by two years and more features. Why didn’t you make an entire project with a readme and all that jazz instead of just a gist? :D
<clever> its part of a nixcfg git repo that i havent gotten around to publishing
et4te has quit [(Read error: Connection reset by peer)]
<Infinisil> stanibanani: This probably shouldn't be hardcoded, right? https://github.com/stanipintjuk/nixos-router/blob/master/mkRouter.nix#L26
<clever> every now and then people ask questions, and i gist fragments of my config
et4te has joined #nixos
<clever> Infinisil: the 24 has to match up with the netmask on line 31
<Infinisil> Ah, well I guess that's okay then
<LnL> heh, do you have a 23 at home or something?
<clever> LnL: i had a /25 before upgrading to fiber
<adisbladis> Heh. I have a friend who has a whole /24 at home
<Infinisil> What's so special about that? Serious question
<Infinisil> I mean that's entirely up to the router, right?
<stanibanani> Infinisil: Nah it really shouldn’t, I’m just a noob at networking at this level and didn’t have time to read up on it ¯\_(ツ)_/¯
<clever> back when i was on dsl, i ran my LAN as 10.0.0.0/25
mkoenig has quit [(Ping timeout: 260 seconds)]
<clever> when i upgraded to fiber, i tried setting the new router to the same subnet
<clever> and the UI would just claim to be changing, then do nothing
<adisbladis> Infinisil: I meant as in actually internet-routable addresses
<srhb> That's.. 2^7 addresses (including broadcast) ?
<clever> srhb: yeah, half, ~128
<LnL> never seen that anywhere before
<Infinisil> adisbladis: Ahh, 256 public ip addresses
sibi_ has joined #nixos
<clever> i later discovered, the ISP has their own 10.0.0.0/8 for the tv service, and the router has been modified to not allow that for the LAN
<clever> so i had to switch to 192.168.2.0/24
<adisbladis> Infinisil: Yeah :P His DHCP was giving away public ips on the wifi
<Infinisil> clever: There's also 172.16.0.0/12 if you wanna be special :P
<clever> :O
<clever> Infinisil: yeah, that one tripped me up a few months ago
<srhb> can't recommend it
<Turion> Can I declaratively install packages as user?
<clever> Infinisil: i had a server in a datacenter, and it randomly just went offline at the designated public ip
<clever> Infinisil: but i could still vpn in, and it had an ip in 172.16.0.0/12
<srhb> Infinisil: We run that at my company and have tons of fun with software that things that one is just free by default (looking at you, Docker!)
<adisbladis> clever: My current ISP leaks routes on their 10.0.0.0/8
<clever> Infinisil: it took me a while to realize that was a private range
<srhb> Not their fault, but grrr :-P
<adisbladis> Most of their internal network is addressable from any client
<adisbladis> Amateurs...
<srhb> adisbladis: :|
<clever> adisbladis: my ISP has 2 vlans (802.1q) on the modem, and the router must be specially configured for 2 uplinks over the same wire
<clever> the 10.0.0.0/8 network is for the iptv service, and the rest is internet
<stanibanani> Turion: You can write a default.nix for nix-shell :)
<Infinisil> Turion: Not really by default, no. But you could use rycee[m]'s home-manager (https://github.com/rycee/home-manager), which let's you do this, it's pretty much a user-level configuration.nix
<adisbladis> clever: :/
<adisbladis> Why would you leak such implementation details
<clever> adisbladis: the STB's access addresses in the 10 range constantly
<clever> adisbladis: and the multicast traffic comes from a 10 ip
<clever> adisbladis: also, look at the domain twonky.tv.fibreop.ca
<Infinisil> clever: You could've just used 10.0.1.0/8 or so too, right?
<clever> try and ping it!
<clever> Infinisil: yeah
<clever> Infinisil: but the new router and IPTV system conflicts with it
bennofs has quit [(Ping timeout: 260 seconds)]
<Infinisil> Lol, that domain has a private IP
<Infinisil> Ping isn't ponging
<clever> yep
<Turion> Ok, thanks! I wonder what the best workflow is when creating new packages that I want to use myself. Right now I'm thinking something like 1. Write derivation on local git branch 2. Install imperatively as user 3. Pull request 4. When it's merged, install declaratively as root
<clever> Infinisil: there is a special iOS app that you must use to stream video to the cable boxes
<adisbladis> srhb: I crashed the office internet connection when i tried to zmap it :)
<srhb> Turion: overlays are nice, if you don't want to integrate it upstream
<clever> Infinisil: and if you launch that app, i can see the cable box doing https requests to that domain
<srhb> Turion: I generally only branch for things I want to PR to nixpkgs
<clever> Infinisil: android has the identical app, it dont work
<clever> Infinisil: so i am forced to use an apple device to stream youtube videos to the tv
<srhb> Turion: But if I intend to do that, that's definitely the simplest way. Just keep the branch alive till it's merged.
<Infinisil> clever: I applaud the developers
<clever> Infinisil: and the ipad must remain on, and draining battery, for the entire length of the video
<clever> Infinisil: and it has no rewind
<adisbladis> And I just noticed there is no zmap package in nixos
<srhb> Turion: Note that I point my system nixpkgs at my own repo, so installing declaratively can be done with the branch as well.
<Turion> srhb, I want to integrate it to upstream, but also use it myself
<clever> Infinisil: the android + ps3 youtube/netflix app work in an entirely different manner, the mobile device is a wifi remote, and can safely be turned off
<srhb> Turion: right, then a branch is the way to go.
<Infinisil> Reminds me of how I have to leave the youtube app turned on, using power for the screen, just to listen to music
<clever> Infinisil: youtube red is a subscription thing that fixes that
<Infinisil> And no I won't pay $10 per month for that
<Turion> srhb, thanks!
<clever> Infinisil: and of course, no dirty canadians allowed
<clever> Infinisil: they refuse to take my money
Wizek_ has joined #nixos
<srhb> Turion: nix.nixPath = [ "nixpkgs=/home/sarah/src/nixpkgs" ]
<srhb> Turion: From my /etc/nixos/configuration.nix
<Infinisil> I will never pay $10 a month just so I can listen to music on youtube without wasting the battery, twitch and every fucking app can do that, for $0
Ivanych has joined #nixos
<Infinisil> Sorry I'm offtopic, *zips mouth*
<clever> Infinisil: my problem, is that they wont even let me pay, lol
<Infinisil> Hell my digitalocean droplet is cheaper
<clever> i think it also turns off all ad's
<Turion> srhb, ok, I'll try that too :)
<Infinisil> clever: I beleive it's unavailable for me region as well
<clever> Infinisil: i had a similar problem with the amazon kindle
<clever> Infinisil: they refused to ship it or sell it to canadians, so i had a friend in america buy it and ship it up
Wizek_ has quit [(Client Quit)]
<clever> Infinisil: then i discovered, you must have an american billing address, even to install a free app
<Infinisil> What has this world become
<clever> a year later, they unlocked canada, and it works fine now
<clever> but for that first year, i had to root it and jam in the google play app
<Infinisil> classic clever lol
<clever> i also discovered, my online banking app uses the google maps library to show where ATM's are
<clever> that is a system library in android, and it is only present on devices that google has approved
<clever> decompile, delete map code, recompile, boom, it works!
<Infinisil> What a madman :O
<Infinisil> *hacking confirmed* calling the NSA
<clever> lol
<clever> what i realized then, is how easy it was to modify the android app
<clever> in theory, i could further modify it to log your name/pw, upload to another site, and then post the app on the amazon app store
<Infinisil> Ohh, they're not signed huh
<clever> they are signed
Havvy has quit [(Read error: Connection reset by peer)]
<clever> but android apps are always signed with a certificate-less keypair
<clever> the signature is only ever checked when upgrading
<clever> if you are installing something signed by the "wrong" person, you must uninstall the old app (deleting any secrets it had), then install the new one
<clever> so no data can be stolen
<Infinisil> clever: Sooo, you couldn't update it then?
<clever> when i recompiled it, i had to re-sign it with my own keypair
<clever> so i could create updates freely
<clever> and it would only be able to update to a version i had signed
<Infinisil> We need NixOS[m]
<Infinisil> Gonna look up what the situation of linux on mobile is like today
<adisbladis> Infinisil: How did you find all the non-quoted urls for this PR https://github.com/NixOS/nixpkgs/pull/27809 ?
<clever> Infinisil: i have seen an android xorg server, which you can then link to over tcp
<clever> Infinisil: and if you have root, you can run an arm build of linux (ubuntu or nixos!) under a chroot, and connect back to such an xorg
<adisbladis> Sorry, I mean quoted.. I'm a tiny bit intoxicated atm
<Infinisil> adisbladis: I described it pretty clearly in my top comment..
<adisbladis> Infinisil: Hahha, again.. Intoxicated
<adisbladis> Thanks
bennofs has joined #nixos
<Infinisil> adisbladis: ;)
<Infinisil> clever: Nicuuu
<Infinisil> adisbladis: Oh, I missed like 5 URL's with that regex though
<Infinisil> Question regarding PRs: What should happen with PR's that are just kinda faded out, like there are some problems, but it would still be nice, but nobody does anything, comments aren't active anymore, that kind of thing
<Infinisil> Because there are a bunch of those at the top when sorting oldest first
mguentner has joined #nixos
drakonis has joined #nixos
<grantwu> Hi Infinisil
<grantwu> I have time to work on that deluge packaging thing again...
dywedir has joined #nixos
endformationage has quit [(Quit: WeeChat 1.9)]
<makefu> hey all, what is the current status of building gradle projects? does somebody has a working sample? in nixpkgs only gradle itself is packaged and the manual yields no results
<Infinisil> grantwu: You can just ask questions here, I might not be always here ;)
<LnL> Infinisil: depends, if it's just some nitpicks I usually amend it and merge
<LnL> but other things are harder
<grantwu> Heh, I know. I just happened to see that you were here recently
<grantwu> Actually... can someone help me with adapting https://stackoverflow.com/questions/36000514/how-to-override-2-two-packages-in-nixos-configuration-nix to Nix on Ubuntu?
<clever> makefu: this is something i worked on a year ago, it uses fixed-output derivations to generate a gradle cache
<clever> makefu: and this is the entire closure of a single minecraft mod: https://github.com/mcpkg/mcpkg-server/blob/master/default.nix
<makefu> The mcpkg server. (abandoned for now)
<makefu> :)
<makefu> very nice
<Infinisil> grantwu: nixpkgs.config is exactly the same as what's in the ~/.config/nixpkgs/config.nix file
nix-gsc-io`bot has joined #nixos
<Infinisil> grantwu: So in config.nix you have: '{ allowUnfree = true; packageOverrides = ... }'
<nix-gsc-io`bot> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/e66c85d196 (from 4 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
nix-gsc-io`bot has quit [(Client Quit)]
stanibanani has quit [(Read error: No route to host)]
stanibanani_ has joined #nixos
<grantwu> er, sorry, incidentally, I want to override openssh to openssh_with_kerberos
<clever> grantwu: { packageOverrides = pkgs: { openssh = pkgs.openssh_with_kerberos; }; }
<grantwu> I don't have a ~/.config/nixpkgs/config.nix
<grantwu> Should i just make it?
<clever> yes
Guest74209 has joined #nixos
ixxie has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus opened pull request #27970: linux: Expand hardened config (master...expand_hardened_config) https://git.io/v7rYU
NixOS_GitHub has left #nixos []
Wizek__ has quit [(Quit: Leaving)]
<grantwu> Okay, thanks. Now that I have that, what would the analogous command to nixos-rebuild switch be?
<grantwu> Is there an equivalent to nixos-rebuild switch?
<grantwu> Sorry, my internet is being really flaky
<Infinisil> grantwu: nix-env -iA nixos.openssh
<clever> grantwu: just re-install whatever you think will be affected, with nix-env
<clever> openssh is one, but git is another
<grantwu> Nixos.openssh? I'm not running NixOS
<clever> nixpkgs.git
<Infinisil> Oh right
Havvy has joined #nixos
ambro718 has joined #nixos
* Infinisil wants to suggest unifying nixos. and nixpkgs. , but leaves it
simendsjo has quit [(Quit: ERC (IRC client for Emacs 25.1.1))]
gnuhurd has joined #nixos
<LnL> that's why I always use -f '<nxipkgs>' in examples
<grantwu> http://ix.io/yUN Hrm, what's wrong with this
<grantwu> Without the =, I get error: undefined variable ‘nixpkgs’ at /home/grantwu/.config/nixpkgs/config.nix:1:1
<grantwu> With the =, I get error: syntax error, unexpected '=', expecting $end, at /home/grantwu/.config/nixpkgs/config.nix:1:16
<grantwu> Also, sorry, had to reboot to deal with stupid wifi firmware erroring...
siel has quit [(Remote host closed the connection)]
siel has joined #nixos
<grantwu> https://nixos.org/nix/manual/#ssec-builtins refers to a ~/.nixpkgs/config.nix
<clever> grantwu: without the nixpkgs.config
<clever> grantwu: exactly what i said half an hour ago
<grantwu> Hrm.
<grantwu> error: infinite recursion encountered, at /nix/store/ikq8ymc6lpb91szmhf179zkgc27r3bpl-nixpkgs-17.09pre111388.00512470ec/nixpkgs/pkgs/top-level/all-packages.nix:3534:62
gnuhurd has quit [(Remote host closed the connection)]
<grantwu> (use ‘--show-trace’ to show detailed location information)
<clever> ah, i suspected that might happen
<clever> the override to turn on krb refers to openssh
<clever> which now refers to krb, which refers to openssh
gnuhurd has joined #nixos
<clever> grantwu: { packageOverrides = pkgs: { openssh = pkgs.appendToName "with-kerberos" (pkgs.openssh.override { withKerberos = true; }); }; }
<clever> that should fix it
<grantwu> hrm.
<grantwu> that seems to break nix-env -i openssh
<clever> nix-env -iA nixpkgs.openssh
<grantwu> although yes, that still works ^
<clever> -i will just search, and may find the wrong things
ericsagnes has quit [(Ping timeout: 240 seconds)]
Mateon2 has joined #nixos
bennofs has quit [(Read error: Connection reset by peer)]
LinArcX has joined #nixos
<LinArcX> Hi. I install nixos but every time login to kde, C and D ntfs drives ask me root password to open theme. I want to mount and ready for use. What can I do?
<Infinisil> grantwu: clever is @cleverca22 on github :)
<grantwu> Okay, thanks
Infinisil has quit [(Quit: Resetting my sleep schedule..)]
gnuhurd has quit [(Remote host closed the connection)]
gnuhurd has joined #nixos
grantwu has quit [(Quit: WeeChat 1.9)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Profpatsch opened pull request #27971: Fish config fix (master...fish-config-fix) https://git.io/v7r3J
NixOS_GitHub has left #nixos []
zeus_ has quit [(Remote host closed the connection)]
eacameron has joined #nixos
grantwu has joined #nixos
LinArcX has quit [(Remote host closed the connection)]
ericsagnes has joined #nixos
eacameron has quit [(Ping timeout: 260 seconds)]
hbtxNN has joined #nixos
<grantwu> srhb: Miao
<grantwu> I'm on my personal system, with Nix now
Ivanych has quit [(Ping timeout: 260 seconds)]
hbtxNN has left #nixos []
ambro718 has quit [(Ping timeout: 240 seconds)]
<Wizek> if I get an error of `error: attribute ‘applicative-quoters’ missing, at /nix/store/q1s7qzhkijhsf29prwdxm2fflgwh6hw8-e66c85d1962faa99d323eb8980ddbec16dbd98a3.tar.gz/pkgs/development/haskell-modules/configuration-ghc-8.0.x.nix:45:37` How could I find out what is the dependency chain that tries to rely on this package?
<clever> Wizek: --show-trace
<srhb> grantwu: miao?
<srhb> :)
<grantwu> I get this now: error: undefined variable ‘buildPythonPackage’ at /important/code/nixpkgs/pkgs/applications/networking/p2p/deluge/default.nix:3:1
<grantwu> When doing nix-build . -A deluge
<srhb> grantwu: I forget, did you call buildPythonPackage in all-packages.nix already?
<Wizek> clever: That seems to give me a rather generic stack trace. Can I find out which haskell package is depending on it that I also depend on?
<clever> pastebin it?
nickos has joined #nixos
<grantwu> srhb: No
<nickos> hello nixos, i want to install apache server on nixos how do i do it?
<srhb> grantwu: Sorry, I didn't follow the conversation in here for a few hours, can you catch me up on what you have so far?
<grantwu> Yes, just a sec.
<grantwu> Also, it's been days
<srhb> Ah, ok :-)
<clever> Wizek: and what command did you run?
<grantwu> So it would be a feat of memory if you could remember xD. I actually had to go grep my logs to find the nix-build command you gave m.e
<Wizek> clever: NIX_PATH=nixpkgs=https://github.com/NixOS/nixpkgs-channels/archive/e66c85d1962faa99d323eb8980ddbec16dbd98a3.tar.gz nix-build --show-trace
<srhb> grantwu: As I recall you ripped out the deluge from a pythonpackage set and gave it its own location
<srhb> grantwu: At a guess you ended up with something like { args }: ... deluge = buildPythonPackage { attributes }
<Wizek> clever: Would you like me to share the default.nix too?
<grantwu> srhb: give me a moment; making a PR
<srhb> grantwu: But you want something like { args }: { attributes }
Jackneill has quit [(Remote host closed the connection)]
<srhb> grantwu: Yeah that's easier :-P
<timclassic> pierron: Everything worked once I switched branches, thanks!
<clever> Wizek: yeah
Forkk has joined #nixos
<pierron> timclassic: :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] grantwwu opened pull request #27972: Fix #27757: Make Deluge only available under Python 2 (master...deluge_python2_only) https://git.io/v7rsG
NixOS_GitHub has left #nixos []
<srhb> grantwu: So it's in pythonPackages iirc
<srhb> grantwu: The file you ripped it out from probably has `with pythonPackages;` somewhere meaning all its attributes are exposed in the top level
ison111 has quit [(Quit: WeeChat 1.7.1)]
<srhb> grantwu: That is, pythonPackages.buildPythonPackage
<clever> Wizek: applicative-quoters appears nowhere in the gist
<clever> Wizek: oh, i see the problem
<clever> Wizek: you didnt tell nix-build what to build, so its building EVERY HASKELL PACKAGE, lol
<grantwu> srhb: Thanks - now I get: error: undefined variable ‘maintainers’ at /important/code/nixpkgs/pkgs/applications/networking/p2p/deluge/default.nix:29:24
<Wizek> really?? :D
<clever> Wizek: yep
<Wizek> oh
<clever> Wizek: you need -A something
hbtxNN has joined #nixos
<Wizek> that's weird, but okay
<Wizek> I shall try that
<srhb> grantwu: It's innnn pkgs.lib.maintainers or something. Let me check.
<clever> srhb: or stdenv.lib
<srhb> grantwu: Or you can grep for it in existing definitions :)
<srhb> clever: Ah, yes, thanks.
revtintin has quit [(Ping timeout: 240 seconds)]
<grantwu> stdenv.lib.maintainers indeed
<Wizek> clever: yay, something seems to be happening; "the box is getting hot"
<srhb> grantwu: But learning to find a similar derivation and figuring out where a certain attribute is good :)
<srhb> grantwu: Nice.
<srhb> grantwu: I would expect a lot of those meta definitions to start with "with stdenv.lib;"
<srhb> grantwu: (Because it has platforms, maintainers and licenses)
ison111 has joined #nixos
<Wizek> clever: "warning: dumping very large path (> 256 MiB); this may run out of memory"
<Wizek> that's a bit concerning
<clever> Wizek: you have a few ./.'s in the nix file, so it it making a snapshot of the current directory in nix
<clever> Wizek: that may include your .git and your .stack-work
<Wizek> is there a way to exclude those?
<grantwu> Hrm.
<grantwu> Where do I get fetchurl?
<grantwu> Looking at ktorrent/default.nix, it's unprefixed and it's not in the inputs
<srhb> grantwu: Isn't it a builtin?
<clever> grantwu: add fetchurl to the arguments, { stdenv, fetchurl }:
<grantwu> oh, silly me, it is in the inputs.
justanotheruser has quit [(Ping timeout: 240 seconds)]
drakonis has quit [(Remote host closed the connection)]
<Wizek> clever: is there a way to exclude those?
<clever> Wizek: one sec
<Wizek> ok-ok.
drakonis has joined #nixos
<clever> Wizek: and the definition of cleanSource2 on line 16
<clever> Wizek: you will need a second nix file, that imports the stack2nix one (line 24) and applies some overrides
<clever> Wizek: in this case, it excludes any symlinks ending in .root, all .swp files (vim!), your .stack-work, all .nix files, and anything that lib.cleanSourceFilter excludes (.o's, ~'s, and .git)
<grantwu> Hrm.
<grantwu> It builds now.
<srhb> grantwu: Yay :)
<srhb> grantwu: Does it also run? ;-)
<grantwu> Good question, heh...
<srhb> grantwu: You should get a result symlink that points to the output
<clever> Wizek: another simpler solution is to just delete your .stack-work
hedning[m] has joined #nixos
<srhb> grantwu: In your cwd
<Wizek> hmm, alright, I'm trying to understand that link. And in the meantime I'm temporarily moving the .stack-work folder out and attempting the build to see if it works
<clever> that also works
<Wizek> delete? :D That's way to courageous when it takes up more than 3 GB and usually takes about a few hours to build all deps
<clever> heh
<srhb> Wizek: Stack doesn't share the compiled packages across projects?
<Wizek> sometimes it does
<Wizek> not sure under what conditions it does not
<srhb> Magic.
<Wizek> but for example switching between --profile and normal builds had me looking in terror at the screen while it unregistered most if not all of the local dependencies and begun jolly rebuilding everything
<grantwu> hrm, this is awkward
<Wizek> I hope nix can cache even in this scenario, can it not?
<clever> Wizek: in the case of nix based builds, it will save everything in /nix/store/
<grantwu> I actually have a running version of Deluge. oh well, yolo
<clever> Wizek: and if you perfectly undo the change, it can reuse 100% of it
<srhb> grantwu: What's awkward then? :-P
<Wizek> yes, that's what I am hoping for
<srhb> grantwu: Oh, another version.
<grantwu> Yeah, that was unclear. Well, I shut it down. I hope this doesn't break anything
<clever> Wizek: one minor problem, is that the ./. for project1, will also include the result symlink nix-build creates
<clever> Wizek: so every time you sucessfully build the source, you also modify the source
<srhb> grantwu: It should be fine :) I'd only worry if you downgrade later.
<clever> Wizek: so project1 will never have a cache hit
<srhb> grantwu: (as in, run the older version (if it is older) with the same config etc.)
<grantwu> It's the same version
<srhb> grantwu: Then all is good.
<grantwu> I guess the only thing to be afraid of would be missing dependencies causing it to somehow corrupt my state; this sounds unlikely
<clever> Wizek: you can solve that with one of the following, "--no-out-link" (skips the result entirely), "-o ../result" (puts it somewhere else), or "cd .. ; nix-build project1 -A project1" (loads project1/default.nix, and leaves the result one directory up)
<nickos> hi anyone: can someone share an example of their Apache httpd configuration.nix setting. i trying to test some js code against apache on nixos. tu
<srhb> grantwu: Agreed.
<srhb> grantwu: You could always backup ~/.config ~/.cache etc.
<srhb> grantwu: Or run it from another user account
<srhb> grantwu: But I really doubt anything will break.
<clever> srhb: you can also just change the value of $HOME
<srhb> True!
<clever> srhb: i sometimes do HOME=/tmp/foo something
<clever> to make a temporary sandbox
<grantwu> Well, it broke a bunch of state. HOWEVER, I have a feeling it's not related to the version
<srhb> grantwu: Huh, interesting.
<grantwu> And merely Deluge being bad. I've seen this sort of thing before.
<grantwu> No, I think the client is just bad at cleanly shutting itself down. Even after I pause everything
* srhb nods
<Wizek> clever: hold that thought for a moment, I'm currently trying to deal with "error: anonymous function at default.nix:1598:40 called without required argument ‘webkitgtk24x’, at ..."
<grantwu> In particular, I was having it move storage across filesystems before I paused it and shut it down... it really needs a progress indicator on that
<srhb> grantwu: So you think everything is good for your PR?
<clever> Wizek: i think you need to manualy edit that to webkitgtk24x-gtk3
<grantwu> I thought it was done because zpool iostat told me there was no writes to the destination pool, but, welp...
<grantwu> srhb: It appears to fail Travis CI
<srhb> grantwu: Your lib import looks redundant to me, you never actually use it.
<srhb> Er, argument, not import
<srhb> grantwu: The travis failure looks like it stems from before you had maintainers properly in scope
hbtxNN has left #nixos []
<grantwu> Huh. Can I get it to run again?
<clever> grantwu: anybody with push access to the repo can restart the build
<clever> grantwu: you can also make a change in the whitespace, git commit --ammend, and force-push to the PR branch
<srhb> The commits appear to have been altered, but no rerun.
<grantwu> I _had_ done that, though
eacameron has joined #nixos
<clever> grantwu: got a link to the PR?
<grantwu> Maybe it got confused by the fact that I squashed and redid the commit message
<Wizek> clever: yes, thanks. I'm making progress, now looking into "attribute ‘gi-javascriptcore_4_0_12’ missing"
<srhb> grantwu: Maybe.
<clever> Wizek: everything refers to it as gi-javascriptcore in the gist, so i dont see whrere that 2nd version is coming from
<Wizek> /nix/store/q1s7qzhkijhsf29prwdxm2fflgwh6hw8-e66c85d1962faa99d323eb8980ddbec16dbd98a3.tar.gz/pkgs/development/haskell-modules/configuration-nix.nix:433:64
<Wizek> gi-webkit2 = super.gi-webkit2.override { gi-javascriptcore = self.gi-javascriptcore_4_0_12; };
<clever> grantwu: you need to add a with maintainers; to that list
<srhb> Oh, shoot, I missed that. Derp.
<srhb> Then it reran just fine :)
eacameron has quit [(Remote host closed the connection)]
<grantwu> Huh... it built on my machine fine; should that have happened?
<srhb> I don't think so.
<clever> grantwu: nix-build doesnt try to read the meta data
<clever> and because of lazy eval, it just didnt eval the faulty code
<srhb> But didn't it fail when there was another name in there that wasn't defined?
<srhb> I guess maybe it just doesn't evaluate that list.
<grantwu> I think those were actually needed for it to build, though
<Wizek> clever: ^
<clever> Wizek: ah, so something in nix is renaming things on you
<clever> Wizek: try just adding a 2 to every instance of gi-javascriptcore in the stack2nix generated file
zeus_ has joined #nixos
<Wizek> Attempting.
<clever> the pname should remain unchanged though
<srhb> grantwu: In case you didn't see, FRidh also wants you to remove the explicit parameter from all-packages and call use python2Packages in your default.nix instead
<grantwu> Yeah, I just read that
<srhb> ok :)
<adelbertc> i'm currently in the middle of installing NixOS on my desktop with a UEFI install. the manual for BIOS install suggests setting `boot.loader.grub.device` is necessary, and I remember seeing that in the generated config in the NON-UEFI install. but for the UEFI install the generated config does not even have this field
<Wizek> clever: `error: anonymous function at default.nix:1677:33 called with unexpected argument ‘gi-javascriptcore’, at /nix/store/q1s7qzhkijhsf29prwdxm2fflgwh6hw8-e66c85d1962faa99d323eb8980ddbec16dbd98a3.tar.gz/pkgs/development/haskell-modules/make-package-set.nix:80:27`
<adelbertc> do i need to set `boot.loader.grub.device` for UEFI?
<adelbertc> (FWIW i'm doing this on an encrypted volume w/ LUKS)
<Wizek> AFAICS I've renamed every mention of it
<Wizek> in ./default.nix
<clever> Wizek: can you update https://gist.github.com/Wizek/8c9d7be7e57266045a81cf5bd0cc2d01 with the new content?
<srhb> adalbertc: I certainly don't have it :)
<Wizek> in a second
<clever> adelbertc: for uefi, you need to set boot.loader.grub.device = "nodev";
<grantwu> Is FRidh not here? I swore I saw them in this channel before
<srhb> grantwu: Sometimes, not currently.
<adelbertc> clever: what are the implications of not doing so? i did a reboot and it appears i get dropped into a shell
<adelbertc> but i do remember seeing in the non-UEFI-generated config to suggest setting it to nodev for UEFI
<clever> adelbertc: there is an assertion that usually goes off, complaining its not set
<adelbertc> alright ill go set it just in case
<grantwu> As an aside, I find it odd that my PR is approved while there are still outstanding discussions
<adelbertc> clever: is there anything else i need set for the first boot? i have `boot.loader.systemd-boot.enable = true` as well
<srhb> grantwu: Cosmetics... :-)
<grantwu> I also haven't checked off all the boxes, yet, haha
<srhb> adelbertc: That's an entirely different bootloader
<clever> adelbertc: ah, that depends on if your using grub or systemd-boot
<clever> adelbertc: if grub is disabled, then it wont care what grub.device is set to
<adelbertc> clever: the NixOS manual currently suggests systemd-boot https://nixos.org/nixos/manual/index.html#sec-uefi-installation
silver_hook has quit [(Ping timeout: 246 seconds)]
<adelbertc> nixos-generate-config automatically sets systemd-boot to true
<clever> ah
<srhb> grub on uefi used to be a bit funky to set up.
<srhb> I think it's fine nowadays.
<clever> thats why it didnt care about the grub values
zeus_ has quit [(Ping timeout: 255 seconds)]
stanibanani_ has quit [(Ping timeout: 246 seconds)]
<grantwu> Incidentally. It's possible that there's another minor bug with how deluge is packaged.
<srhb> grantwu: Oh?
<grantwu> On startup, I get (deluge:31543): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
goibhniu has quit [(Ping timeout: 260 seconds)]
<srhb> grantwu: I get that from a lot of gtk applications.
<srhb> grantwu: but you could try adding it and see if it goes away, I guess.
<srhb> Theming is.. Broken.
<clever> Wizek: nix is forcibly giving gi-webkit2 an extra parameter, that you arent expecting
<adelbertc> ill just set it just to be safe and then move on
<clever> Wizek: you will need to add gi-javascriptcore to the arguments on line 1677, in addition to gi-javascriptcore2
<grantwu> srhb: Is the fix not as simple as adding the gnome-themes-standard package as an input?
<srhb> grantwu: I don't know, try. :)
stanibanani has joined #nixos
<srhb> How those things work is a mystery to me.
stanibanani has quit [(Client Quit)]
<clever> Wizek: so that override you pasted earlier is breaking it twice, the first way, it tries to give you gi-javascriptcore_4_0_12 when you asked for gi-javascriptcore (and gi-javascriptcore_4_0_12 doesnt exist)
<grantwu> :C There's no existing package that depends on gnome-themes-standard
<clever> Wizek: and second, it continues to try to do that, even when you dont ask for gi-javascriptcore
<grantwu> So I'm not really sure where to use it...
<srhb> grantwu: s/-/_ probably
<Wizek> clever: alright, giving that a try too
<grantwu> ....huh.
<srhb> grantwu: Check out gpodder
<srhb> Looks like a candidate.
<grantwu> srhb: What's weird is that the package itself uses -
<srhb> grantwu: I'm not sure why, but almost all packages have that substituted in their attribute names
<Wizek> clever: it seems our legs are being pulled: `error: anonymous function at default.nix:1677:33 called without required argument ‘gi-javascriptcore’, at /nix/store/q1s7qzhkijhsf29prwdxm2fflgwh6hw8-e66c85d1962faa99d323eb8980ddbec16dbd98a3.tar.gz/pkgs/development/haskell-modules/make-package-set.nix:80:27`
<Wizek> clever: let me guess; a different call site is calling it without that superfluous argument?
<clever> Wizek: a second option is to undo these changes, and instead do gi-javascriptcore_4_0_12 = gi-javascriptcore; and use rec for the main {
<clever> actually no, gi-javascriptcore_4_0_12 = self.gi-javascriptcore;
<Wizek> I've had another idea:
<Wizek> clever: what if we duplicate the definition for gi-javascriptcore2 and call it gi-javascriptcore too?
<Wizek> that seems to fix it actually
<Wizek> not it complains about alex
<srhb> grantwu: I'm off for tonight, have fun. :)
<clever> Wizek: you can do that with gi-javascriptcore = self.gi-javascriptcore2;
d33pb00k-GK1wmSU has joined #nixos
<Wizek> even better
<clever> Wizek: self. lets you refer to other packages in the set, and give them more names
<grantwu> srhb: Goodbye!
<Wizek> clever: makes sense
d33pb00k-GK1wmSU has left #nixos []
<Wizek> clever: default.nix:1715:40 called without required argument ‘alex’
<Wizek> clever: I wonder, why doesn't it use alex from haskellPackages?
<clever> Wizek: thats a different problem, i ran into it with cpphs
<clever> Wizek: stack2nix overrides the haskellPackages in a special way, that prevents anything from the nixpkgs haskellPackages leaking in
<clever> Wizek: so only what `stack list-dependencies` lists will appear in the generated file
<clever> that doesnt include build-time tools
<clever> Wizek: the cheap-fix, is to just add alex as a library level dep in your cabal file, and re-run stack2nix
hiratara has quit [(Ping timeout: 276 seconds)]
<clever> Wizek: under build-depends:
<Wizek> clever: alright.
hiratara has joined #nixos
<Wizek> clever: Although last time I ran stack2nix it took several minutes; is that normal?
mkoenig has joined #nixos
<clever> yeah
<Wizek> okay
<clever> it has to download the cabal file for every single dependency, and then run cabal2nix on each
<Wizek> I see
zarel has quit [(Quit: Leaving)]
<grantwu> agh.
<grantwu> didn't fix it.
<sphalerite> So I'm trying to build oil ( http://www.oilshell.org/blog/2017/07/23.html ) with nix… Here's my expression. http://ix.io/yUT Now I wonder why the osh in the result crashes, while the osh obtained by running `./configure --prefix=/tmp/osh ; mkdir /tmp/osh ; make ; make install` is fine. Any ideas?
<LnL> is it still fine if you remove /tmp/osh?
nickos has quit [(Quit: Page closed)]
<LnL> something might be referring to the build path instead of the output
<sphalerite> Doesn't nix check for that?
<Wizek> clever: woohoo, it seems the build has actually started. "these paths will be fetched (253.32 MiB download, 2079.54 MiB unpacked)"
<clever> yay
<sphalerite> LnL: also, strace suggests otherwise
<sphalerite> it's not trying to access any files that don't exist
mkoenig has quit [(Quit: Lost terminal)]
<sphalerite> I suspect it's some binary patching that something in stdenv does, I just have no idea what
dywedir has quit [(Ping timeout: 240 seconds)]
<LnL> you could try with patchPhase = ":"
<sphalerite> patchPhase does source patching, not binary patching.
<sphalerite> And that happens before the build.
<sphalerite> That would also throw out my postPatch, which would break the build.
<clever> sphalerite: fixupPhase handles binary patching after the install
<LnL> err, that's what I mean
mkoenig has joined #nixos
<clever> sphalerite: a number of things in the stdenv also add hooks to the fixup phase list
<makefu> clever: just fyi, i gave up on building the grade project from source and i've just wrapped the jar files ( http://cgit.euer.krebsco.de/stockholm/tree/makefu/5pkgs/dex2jar/default.nix ). thanks for your help nonetheless!
<sphalerite> Hm, it does both the moving of stuff to appropriate outputs and binary patching? Shouldn't those be distinct steps really?
<sphalerite> Well, fixupPhase = ":" didn't fix it either
<sphalerite> and I already had dontPatchELF and dontStrip there to stop those from happening
<sphalerite> dontStrip fixed an earlier error
<clever> sphalerite: in your postPatch, do "set -x"
<clever> then bash will tell you every single thing the stdenv is doing
mkoenig has quit [(Remote host closed the connection)]
<sphalerite> (because the binary relies on containing some zips at the end)
<sphalerite> Yeah, I had a look at that too but it didn't really enlighten me
<clever> if you gist it i can look over the output
<Wizek> clever: Another roadblock: `curl: (22) The requested URL returned error: 404 Not Found \n error: cannot download gi-javascriptcore2-3.0.3.tar.gz from any mirror`
<clever> another file that does things during many phases
<clever> Wizek: you cant change the pname for that
<clever> remove the 2
<Wizek> oh, that simple
mkoenig has joined #nixos
<sphalerite> clever: http://ix.io/yUU
<clever> sphalerite: and which binary is being modified/damaged?
<sphalerite> clever: $out/bin/oil.ovm
<clever> sphalerite: i dont see anything that is modifying it, what happens when you run the final file it outputs?
<LnL> is it also broken if you use nix-build -K and look at the build directory
<sphalerite> clever: http://ix.io/yUV
<sphalerite> LnL: the build doesn't fail so it wouldn't keep the build directory
<sphalerite> although if I manually fail it...
<LnL> ah right, you'd have to "break" it
<sphalerite> aah, interesting. The generated executable is broken even if I set preInstall to false
<clever> then the problem is with the build itself, got a link to the source?
<LnL> do you know how it's packaged like that?
<sphalerite> clever: http://ix.io/yUT is the expression, it contains the url for the source. It's also on github at https://github.com/oilshell/oil
<LnL> wait
<LnL> you don't have any reference to python
<LnL> that means it's also bundled in there somewhere
<sphalerite> LnL: https://github.com/oilshell/oil/blob/master/Makefile#L280 concatenation of ovm with a zip file
<sphalerite> yes, OVM is based on a stripped-down python VM
mkoenig has quit [(Remote host closed the connection)]
mkoenig has joined #nixos
<domenkozar> what's the state of staging today?
<LnL> nothing special I think
<domenkozar> looks pretty broken
<domenkozar> probably just lots of cancelled jobs
<LnL> looks like all of the aarch builds failed
<clever> sphalerite: if you run "hexdump -C oil.ovm | grep '50 4b 03 04' --color -C5
<clever> sphalerite: what does it find?
<LnL> some expat test failures
<clever> i also saw some ssdm failures holding back nixos-unstable
<sphalerite> clever: quite a lot of matches
<domenkozar> everything I touch today is broken
<domenkozar> :D
<domenkozar> oh wait I'm suposed to fix that
<clever> sphalerite: thats the zip file header, i believe there is one instance of it for every file in a zip
<clever> sphalerite: the first instance of it should be at file_offset bytes into the file: https://github.com/oilshell/oil/blob/5881d651515844871e6c717dc12105cc34c56d92/Python-2.7.13/Modules/zipimport.c#L950-L961
<sphalerite> yeah... Now I need to work out how to get file_offset ;D
<sphalerite> I'm just really confused as to why the nix-shell-built one is fine...
<clever> sphalerite: strace, build with -g and gdb, patch the source
<LnL> did you run the regular configure/make in a nix-shell?
<sphalerite> yes
hiratara has quit [(Remote host closed the connection)]
<LnL> with --pure
<clever> sphalerite: for example, strace ./oil.ovm, and gist the last 20-30 lines
hiratara has joined #nixos
<sphalerite> Interesting. It writes the error message character by character
<clever> haskell does that as well, it runs write over a list of characters with map
<sphalerite> and it results in a write syscall for each character?
<sphalerite> surely the libc does some buffering?
<clever> only if you use something like fwrite
<clever> which can manage a buffer within the struct FILE*
<sphalerite> http://ix.io/yUY
<grantwu> Surely that only happens if you use the built in strins
<sphalerite> ah right
<clever> sphalerite: i also discovered one day, when running world of warcraft over samba to a linux hdd, that wow saves config 1 byte at a time
<sphalerite> or should I say "ah write"?
<sphalerite> that's nice!
<clever> sphalerite: and samba flushes those bytes over the network, and waits 1 round trip per byte, including waiting for the samba server to flush to disk
<sphalerite> ♥
<clever> sphalerite: this leads to the game locking up solid for ~1.5 hours
<sphalerite> hahaha
<sphalerite> http://ix.io/yUY is the strace output
<clever> and if you get a random network error, it saves everything to disk before rendering a dialog saying it was a entwork error
<clever> so it appears to just lock up for zero reason, in the middle of gameplay
<sphalerite> it does seem to be reading from the wrong location
<sphalerite> In fact I'm not sure any of that human-readable stuff there should be readable, given that it's meant to be a zip file hence compressed
<clever> sphalerite: make it fail with -K and then double-check that its even a zip
mkoenig has quit [(Remote host closed the connection)]
<clever> sphalerite: ah, thats why i dont see it reading 30 bytes (line 954)
<clever> they did fread, so libc is buffering, exactly as you where expecting
<clever> so it reads more (774 bytes) then what it asked for
<sphalerite> ah right
<sphalerite> yes, it does seem to be a zip file
<clever> its also possible that libc is cheating with the seek and read
<sphalerite> aaand said zip file does in fact contain plenty of ASCII. I'm guessing it's not actually compressed
<clever> libc may have rounded the seek position down, so it could read data from before the target point
<clever> to improve buffering
<clever> so we need to either add some print statements to the code, or build with -g and run it under gdb
<clever> and track down how it computes file_offset
<sphalerite> my guess is that file_offset is just the end of the ELF file
<clever> i think toc_entry is a python attribute set being passed into this function
<clever> and get_data is static, so the call must be inside this file
<clever> sphalerite: even without -g, gdb can give a backtrace, which can still help
<clever> sphalerite: just set a breakpoint on get_data
<sphalerite> I'm also confused by how the zip file is made — the makefile seems to refer to a build/make_zip.py which doesn't seem to exist D:
<sphalerite> Ah, I think the zip is prebuilt in the source tarball
<sphalerite> yep
<clever> line 569 ties a python method "get_data" to the c method "zipimporter_get_data", which will cast the PyObject* to a ZipImporter*
<clever> and the ZipImporter contains the file_offset
<clever> line 605 defines the entire object type
* sphalerite is just trying to build it with -g
<sphalerite> why is it still not finding debugging symbols >:U
joehh has joined #nixos
<sphalerite> yay custom build systems
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27902: flockit: init at 2012-08-11 (master...flockit) https://git.io/v7gFs
NixOS_GitHub has left #nixos []
<sphalerite> finally
mkoenig has joined #nixos
pie___ has quit [(Read error: Connection reset by peer)]
pie_ has joined #nixos
<clever> sphalerite: cant find any code in that file that actualy initializes file_offset
simukis has quit [(Ping timeout: 260 seconds)]
<sphalerite> it's the PyArg_ParseTuple line, no?
<clever> i think that just reads attributes from a set
<sphalerite> it gets the address to file_offset
<clever> it appears to be a generic python function
<sphalerite> yeah, it's part of the python C interface
<clever> so you give it a python object pointer, and it reads internal fields you set earlier
<clever> something else must set those fields
<sphalerite> yeah
<sphalerite> well
<clever> ah, it might be line 813
<sphalerite> I'm actualaly just stepping through the code, but I'm 99% certain `PyArg_ParseTuple` is initialising `file_offset`
<clever> 716 of read_directory has a local file_offset variable, no initial value
<clever> 786 is a for loop
<clever> and then 813 sets file_offset
eacameron has joined #nixos
<sphalerite> read_directory? I thought we're talking about get_data
<clever> get_data doesnt initialize file_offset though
<clever> t = Py_BuildValue("sHIIkHHI", path, compress, data_size,
<clever> file_size, file_offset, time, date, crc);
<clever> read_directory uses Py_BuildValue to set the file_offset, that get_data later reads
<sphalerite> FWIW here's the upstream code for it https://github.com/python/cpython/blob/2.7/Modules/zipimport.c#L913
<clever> sphalerite: try putting breakpoints on both read_directory and get_data, and see which runs first, and how much
mudri has joined #nixos
<sphalerite> (and it's identical)
zeus_ has joined #nixos
<sphalerite> read_directory runs first
markus1189 has joined #nixos
<clever> sphalerite: i think it reads the header at the tail of the file, and then goes relative to that
<sphalerite> yeah...
<clever> sphalerite: oh, i have a thought!
<clever> sphalerite: http://ix.io/yUT that find and sed ....
<clever> sphalerite: are you running sed on the zip?
<sphalerite> … … … that is quite likely
<sphalerite> I feel very stupid right now
<clever> you want to instead run patchSheBangs on the directory with shell scripts
<clever> and nix will fix them to absolute paths for you
* sphalerite sent a long message: sphalerite_2017-08-05_23:06:47.txt <https://matrix.org/_matrix/media/v1/download/matrix.org/fXcgRPksbRBxWnqOYXhcmwlW>
markus1199 has quit [(Ping timeout: 260 seconds)]
<clever> yep
<clever> postPatch = "patchSheBangs build"; will also fix it
<sphalerite> facepalm
<sphalerite> thanks
<clever> the length of the records inside the zip got changed, and the relative sizes in its headers ceased to be accurate
zeus_ has quit [(Ping timeout: 240 seconds)]
<domenkozar> another instance of https://github.com/NixOS/nixpkgs/issues/5368
<domenkozar> :)
<clever> heh, a 3 year old issue!, but it can be hard to detect what paths to run it on
<domenkozar> yeah it's a huge effort
<clever> 15.05, i dont think ive ever seen somebody mention that channel...
<domenkozar> good old times where one could follow commits :P
<clever> lol
<clever> i have also noticed, if you build with sandboxing off, the host /usr/bin/env leaks in, and lets the builds work without patching
<clever> which can cause confusion when hydra fails
<sphalerite> so now on to doing what I actually wanted to do
<sphalerite> which is testing whether osh is compatible enough to replacce bash for nixpkgs :D
<clever> :O
<domenkozar> osh?
<sphalerite> oilshell.org
<clever> sphalerite: and back to the write'ing 1 byte at a time thing: https://github.com/cleverca22/cachecache/blob/master/cachecache.hs#L108-L115
<sphalerite> I like the repo name
<clever> sphalerite: the ByteString.hPutStrLn will fetch a foreign pointer for the bytestring, and ffi it directly to write()
<clever> so it should be more atomic and faster
<clever> as for the project name, its a cache you place between nix and cache.nixos.org
<clever> currently, it saves every narinfo into a hashmap
<sphalerite> aaaand I'm running into https://github.com/oilshell/oil/issues/19
<sphalerite> is the name intentionally a pun on the French name for hide and seek?
<sphalerite> And osh also doesn't want to parse stdenv/setup
<sphalerite> So no, it's definitely not compatible enough yet :D
drakonis has quit [(Remote host closed the connection)]
<clever> what part of the file is upsetting it?
drakonis has joined #nixos
<sphalerite> That's a good question.
<sphalerite> aah, running osh /nix/store/...-stdenv/setup gives much more helpful output than osh -c 'source /nix/store/...-stdenv/setup'
<sphalerite> It's not liking `local -a`
<clever> ah
<sphalerite> it thinks -a is meant to be a variable name
<sphalerite> ah well
<sphalerite> hopefully one day osh will be able to replace bash!
<sphalerite> it does support arrays using arr=("a b" c) though
<sphalerite> it also behaves differently with that — echo $arr will output a b c rather than a b like bash would
Lisanna has joined #nixos
takle has quit [(Remote host closed the connection)]
<Lisanna> Hi guys - I'm looking at the fixup phase (https://nixos.org/nixpkgs/manual/#ssec-fixup-phase) and was wondering if there's a convenient way to do a custom patchelf on all the build outputs like the default fixup phase does? Does nix-build provide a nice way of iterating over the ELF build outputs so I can run patchelf on them, or do I have to build up a shell command to do that?
<clever> Lisanna: bash can do that, for x in $out/bin/*; do patchelf ... $x;done
kiloreux has quit [(Ping timeout: 260 seconds)]
<Lisanna> clever: I know, but I'm trying to avoid shell commands if I can, if Nix already provides a nice way to do that or something... like a map function
<clever> the nix expressions are ran before the build starts
<clever> so there is no way for nix to know about the output files
<clever> you have to put some bash script into the nix expression, and have the stdenv run it during the build
Guest74209 has quit [(Ping timeout: 255 seconds)]
<Lisanna> So does the default fixup phase implementation also just do a bunch of shell processing commands in order to call patchelf on the ELF outputs?
<clever> yeah
<Lisanna> thanks, I was just about to ask for that :)
<clever> a nix expression is just a bunch of strings being passed to bash as env variables
<clever> that modify how setup.sh behaves
<clever> and the nix expression language is used to stitch together strings from different packages, to make a more complex package
<clever> or to just reference other things directly
<clever> but nothing can even start to compile, until the nix expressions have been 100% ran
<Lisanna> Okay, thanks
ixxie has quit [(Quit: Lost terminal)]
takle has joined #nixos
takle has quit [(Ping timeout: 240 seconds)]
arximboldi has joined #nixos
erictapen has joined #nixos