<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>
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?
<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>
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
<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.
<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)]
<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
<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
<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
<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
<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)]
<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]>
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
<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: 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
<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.
<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>
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
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: 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
<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?
<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
<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
<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.
<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
<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
<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: 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 ?
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)]
<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.
<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
<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++
<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.
<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?
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>
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
<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.
<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>
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
<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
<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
<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
<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)]
<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"
<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)
<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
<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
<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
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?