Supersonic112 has quit [(Disconnected by services)]
Supersonic112_ has joined #nixos
Supersonic112_ is now known as Supersonic112
<clever>
Infinisil: the structure isnt entirely clear, but everything done by nix-env, nixos-rebuild, and nix-channel go into a root folder automaticaly
<clever>
and nix-build's result symlinks are made indirect via the auto root folder
<clever>
so if the result in the middle is deleted, the auto root will vanish on its own
<Infinisil>
Soo if I got this right, gcroots has symlinks which reference the current stuff via symlinks so the GC doesn't delete the linked files?
<Infinisil>
(remove one "symlink" from the sentence)
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] NeQuissimus pushed 1 new commit to master: https://git.io/vQ3ay
<NixOS_GitHub>
nixpkgs/master 1a25495 Tim Steinbach: git: 2.13.1 -> 2.13.2
NixOS_GitHub has left #nixos []
<clever>
Infinisil: yeah, pretty much
<clever>
Infinisil: and then the entire closure of anything in a root, is also kept
<clever>
nix-store --query --roots /nix/store/foo, tells you what roots are keeping foo
<clever>
and --delete will remove it, only if it has zero roots
<clever>
and nix-collect-garbage will delete anything with zero roots
<clever>
nix-collect-garbage can also be told to stop after deleting x bytes, or to delete generations from profiles first
<Infinisil>
clever: Okay but how can the GC know if there's still a symlink around since they aren't bidirectional? Just checking every symlink then?
<clever>
Infinisil: the auto symlinks point to the result symlinks
<clever>
and then result points to a storepath
<clever>
and i think the hash in name of the auto symlink, is based on the target of the result symlink
<Infinisil>
Ah so it just needs to check everything in auto
<clever>
so if result is modified in any way, the link under auto becomes invalid
<clever>
and there are a few other things not covered by auto, like generations of profiles
<Infinisil>
I see
<clever>
and also, there are some invisible roots
<clever>
$ ls -l /proc/self/fd/
<clever>
this directory shows all open file handles for the process looking in the directory (ls in this case)
<clever>
and if you replace self with a pid, you can inspect any other process on the system
<clever>
all of those are also roots
<clever>
the same also happens for the root, cwd, and exe symlinks, and the maps file
<Infinisil>
Oh that's pretty cool! Makes it so no running program can get deleted
<clever>
oh, and the environ file as well
<Infinisil>
Where are the generations included?
<clever>
which means, "sudo nix-store --delete /nix/store/foo" will always fail
<clever>
because the path to foo is in the arguments of sudo, so sudo is "using it"
<clever>
$ ls -l /nix/var/nix/profiles/
<clever>
default is for root's nix-env, system is for nixos-rebuild
<clever>
and then every user has profiles under per-user
<Infinisil>
Damn, the more I learn about NixOS the more I love it
<Infinisil>
I think I can't ever go to another distro now
<Infinisil>
I fear ever applying as a "Unix engineer" and then be expected to use CentOS or whatever
<MP2E>
hey all, question that might be one for the bug tracker/mailing list. Is wrapProgram supposed to work with both 64-bit and 32-bit binaries in the same derivation?
<MP2E>
the reason I ask is because I tried building a wine-wow build using an overload with nixpkgs master, and the resulting wrappers are broken
<clever>
MP2E: you would need to know which are 32bit and which are 64, and pass the right flags to each wrapProgram invocation
<MP2E>
'wine64 is not an i386 elf binary... don't know how to load it'
<clever>
Infinisil: yeah, i would nix-fy any project i get my hands on, lol
s33se_ has joined #nixos
<clever>
Infinisil: i also recently got into using declarative jobs in hydra, and now i have my hydra auto-building any PR made against several of my projects
<jack[m]>
you can run nix on CentOS
<Infinisil>
clever: Nice!
<Infinisil>
jack[m]: I totally would, but I don't know what my future company would think of this. I mean its clearly superiour, but it would just different than anything else they're used to do
Rajsun has quit [(Ping timeout: 276 seconds)]
<Infinisil>
(insert "be so" into above sentence, I'm tired)
MP2E has quit [(Quit: reboot)]
s33se has quit [(Ping timeout: 260 seconds)]
MP2E has joined #nixos
nh2 has quit [(Quit: Leaving.)]
<jack[m]>
Infinisil; I used nix on a project at work. Granted I put in a few extra hours, but another team needs 6 or 7 people to do almost the same stuff without nix.
<Infinisil>
jack[m]: Nix ftw
proteusguy has quit [(Remote host closed the connection)]
<Infinisil>
I hope to eventually be able to contribute to it (and not only to nixpkgs)
<Infinisil>
I'd love to help work on the new proposal for the nix CLI
<disasm>
with virt-manager what permissions do you need to redirect a usb device? I'm already in these groups: users wheel disk video libvirtd docker
eacameron has quit [(Ping timeout: 255 seconds)]
dev has joined #nixos
<dev>
does anyone know how to get Skype to work with alsa audio rather than pulse?
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/vQ3Kq
<NixOS_GitHub>
nixpkgs/master 41b3b2c Vincent Laporte: ocamlPackages.sexplib_p4: disable for OCaml ≥ 4.03
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/vQ3Kg
<NixOS_GitHub>
nixpkgs/master e082162 Vincent Laporte: ocamlPackages.type_conv-{108,109}: disable for OCaml ≥ 4.03
NixOS_GitHub has left #nixos []
<dev>
or does anyone know how to properly set up pulse audio so there isn't permission issues and certain programs being denied access to the audio device when other programs may be using it?
<disasm>
dev: just curious... what perm issues are you having with pulseaudio?
<jack[m]>
dev; like mpd?
<dev>
like mplayer, mpd, firefox...
<dev>
I'm going to try setting it systemWide
<dev>
because I run audio from both root and user accounts
<dev>
firefox may be running under user and need audio, mplayer may be running as root and need audio
<dev>
currently skype only works if pulse is on, but when skype is on mplayer wont work
Mateon3 has joined #nixos
<dev>
im not sure if I need sound.enableOSSEmulation on or not though
<dev>
I only use earphones, I should be able to turn it off eh?
Mateon1 has quit [(Ping timeout: 240 seconds)]
Mateon3 is now known as Mateon1
hellrazo1 has joined #nixos
<disasm>
mplayer should natively support pulse audio with -ao pulse. mpd there's a config file you can set to use pulseaudio. I think firefox natively uses pulse too.
<dev>
im getting pulse audio connection refused left and right... I'm going to try restarting
dev has quit [(Quit: WeeChat 1.7.1)]
hellrazor has quit [(Ping timeout: 260 seconds)]
dev has joined #nixos
schoppenhauer has quit [(Ping timeout: 255 seconds)]
schoppenhauer has joined #nixos
dev is now known as devlog
dev has joined #nixos
jgertm has joined #nixos
<dev>
how do we do multi-line comments in our configuration.nix file?
<dev>
ahh.. same as php comments
<dev>
/* and */
<disasm>
dev: going back to your original question, if you install apulse (I think it has to be 32 bit) you can use skype with alsa.
<dev>
how to I specify 32 bit version?
<dev>
because if I disable pulse audio then the hardware.pulseaudio.support32Bit doesnt matter anymore right?
<dev>
ok I think need to override a make flag to build it for 32
<dev>
I still dont know how to override cflags in a package build
<dev>
works
<dev>
you are a genuis disasm
<dev>
im still having permission problems though... if mplayer is running, sound in skype gets denied
oahong has quit [(Ping timeout: 240 seconds)]
<dev>
its like only one program can access the sound at once
oahong has joined #nixos
<dev>
like if I start mplayer then skype wont start
<dev>
or if I press play inside mpd skype wont statr
<dev>
but if skype alraedy started mpd wont play
<dev>
and mplayer gets connection refused
<dev>
well atleast I dont need to switch the whole sound driver when I need to make a phone call lol
dev has quit [(Quit: WeeChat 1.7.1)]
dev has joined #nixos
<dev>
disasm: after restarting all my audio seems to work together now. thanks for the help concerning skype
adisbladis has joined #nixos
reinzelmann has joined #nixos
jsgrant has joined #nixos
tilpner has joined #nixos
boomshroom has joined #nixos
<boomshroom>
I just had a random thought. Would trying to package the Quine Relay with a separate derivation for each step cause the recursion checker to reject it?
<boomshroom>
Really, how would one package the Quine Relay as a Nix derivation?
<dash>
boomshroom: what outputs would you want from it
raunov has quit [(Ping timeout: 260 seconds)]
jsgrant has quit [(Ping timeout: 246 seconds)]
<boomshroom>
dash: Good question. It starts out as just a single Ruby script, which outputs Scala source code, which then needs to be compiled and run, which outputs ...(98 more steps) which outputs the orginal Ruby script.
<boomshroom>
Can Nix test equality on derivations?
<dash>
boomshroom: so... what would you want the nix expr for it to produce
endformationage has quit [(Quit: WeeChat 1.7)]
<boomshroom>
I'm not entirely sure, I just thought of the quine relay and absently wondered what it would mean to package it. It's not the main thing I'm working on, which is seeing what could be done to decouple NixOS from Systemd, not because Systemd is bad, but because options are good, it would attract Systemd-haters, and it would pave the way towards kernel agnosticism.
<dash>
doesn't sound difficult in any way, just pointless
<dash>
having non-systemd options would be useful for stuff, yep
<adisbladis>
I can't really figure out what to put in boot.kernelPackages
<dash>
adisbladis: your best bet is to look in all-packages first
<dash>
looks like it's "linux_hardened_copperhead"
eliaslfo1 has quit [(Remote host closed the connection)]
dev has quit [(Quit: WeeChat 1.7.1)]
<adisbladis>
dash: That is what I tried before. pkgs.linux_hardened_copperhead
Garlandg has joined #nixos
<dash>
adisbladis: and you're running from a checkout instead of nixos-unstable?
<adisbladis>
dash: Yes
<adisbladis>
Oh, no.. I'm running on the unstable channel
tilpner has quit [(Quit: WeeChat 1.8)]
tilpner has joined #nixos
<boomshroom>
I'm looking at <nixpkgs>/nixos/default.nix and to build it accesses config.system, however I can't seem to find where system is added to the config set. More generally, I'm trying to trace the system build procedure to see where systemd is first used.
<dash>
adisbladis: there you go then
<adisbladis>
dash: Thanks for your help :)
jtojnar has quit [(Quit: jtojnar)]
MercurialAlchemi has joined #nixos
freusque has joined #nixos
<tilpner>
Should I add kernel config lines via linux.override or pkgs.buildLinux?
<boomshroom>
Is it possible to make nixos-rebuild force a rebuild for debugging purposes, that or access a cache of the most recent build log.
Rajsun has quit [(Remote host closed the connection)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/vQ3Mx
<NixOS_GitHub>
nixpkgs/master 6b89bcb Vincent Laporte: ocamlPackages.core_bench: fix on OCaml ≥ 4.03
NixOS_GitHub has left #nixos []
Rajsun has joined #nixos
Rajsun has quit [(Remote host closed the connection)]
Rajsun has joined #nixos
FRidh has quit [(Remote host closed the connection)]
<boomshroom>
systemd.package = pkgs.sysvinit; # What could possibly go wrong?
nslqqq has quit [(Ping timeout: 276 seconds)]
nslqqq has joined #nixos
<maurer>
I am fairly certain that will not do what you want it to do
<boomshroom>
maurer: So am I. My mission is to make it do what I want it to do.
<maurer>
Good luck - if you choose to do that, you'll probably want to put that behind another switch though - currently all the nixos "modules" generate systemd units
<maurer>
Probably your best starting point for replacing the generated units with something else would be gentoo's OpenRC
<boomshroom>
maurer: I know. This is a monumental task, but I'm looking to the bright future where Nix can run on everything and NixOS can be anything. OK, maybe not quite that far, but you get the gist.
<maurer>
You'll also need to patch the systemd integration of nixos-rebuild which restarts affected services
hellrazo1 has quit [(Quit: WeeChat 1.8)]
<boomshroom>
maurer: at the moment, I'm concerned with building a standalone system without systemd. nixos-rebuild switch will come later, but probably before NixOS on FreeBSD.
<dash>
boomshroom: good news, a nix port to genode has been started ;-)
<maurer>
There's also someone in here (I forget who) who has their own personal system.nix style file that manually composes everything and defines an init
<boomshroom>
dash: I've heard of genode before, but I'm not quite familiar with it.
<boomshroom>
maurer: That sounds hardcore!
<boomshroom>
"Screw nixpkgs, I'm building my own system!"
<dash>
boomshroom: i've only read about it, not run it or written code for it, but i'd sure like to when i run out of other stuff to do ;-)
<boomshroom>
Is it possible to provide an alternate nixpkgs path to nixos-rebuild?
<maurer>
nixos-rebuild is just a fancy invocation of nix-build with a defaulted file
<maurer>
if you actually want to change nixos-rebuild's nixpkgs though, just use NIXPATH=nixos=/path/to/your/nixos
<maurer>
(might be an underscore in NIXPATH, I forget)
sigmundv__ has joined #nixos
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
<tilpner>
Yes, NIX_PATH
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/vQ3yR
<NixOS_GitHub>
nixpkgs/master 8d8fdce Vincent Laporte: ocamlPackages.lablgtk: don’t strip
NixOS_GitHub has left #nixos []
sigmundv__ has quit [(Ping timeout: 255 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/vQ3yi
<makefu>
Wizek: 6.8G on my machine but it really depends on how you garbage collect
pietranera has joined #nixos
<Wizek>
makefu, How do you mean 'how'?
<Wizek>
are there different ways?
MoreTea has joined #nixos
noqqe has quit [(Read error: Connection reset by peer)]
ilyaigpetrov has joined #nixos
<Wizek>
Mine is 11.2 GiB currently. And I'm on a 40 GB old SSD. I also have a 500 GB HDD attached, where my home folder resides. I run nix-collect-garbage regularly, and just a few minutes ago it could only free up a few extra megs. My ssd is full. I don't see anything obvious I could remove. And even if I saw, I am a bit fed up at this point that I am looking for things to remove every other day now when it gets full. So I am looking at
<Wizek>
options. E.g. maybe I can but a larger primary SSD, e.g. 250 GB or even 500 GB. Or if only I could put my /nix/store to the 500 GB hard drive then all would be well. I did try bind `mount`-ing without any success.
<Wizek>
IIRC, symlinking the /nix/store is not supposed to work, but bind mounting it is supposed to work, right? Is there anyone here who managed to do that? Or managed to put it on a non-root disk in any other way?
<Wizek>
Also, if I go with buying a new disk, do you think a 250 GB one would be sufficient?
<MoreTea>
hmm. the `gcloud` utility has a `beta` command group, to get access to e.g. beta features in google's cloud.
<MoreTea>
it insists on downloading stuff and modifying /nix/store
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] peti pushed 1 new commit to master: https://git.io/vQ3N4
<NixOS_GitHub>
nixpkgs/master 003cd41 Peter Simons: zsh: extend default $fpath configured by NixOS to find "vendor-completions"
NixOS_GitHub has left #nixos []
pietranera has quit [(Quit: Leaving.)]
pietranera has joined #nixos
ericsagnes has quit [(Ping timeout: 255 seconds)]
<pietranera>
Hello, does anyone know how to make nixos honor the settings in ~/.gtkrc-2.0 ? FTR I am using awesomeWM. I have seen that there are a few issues about GTK theming on GitHub but was wondering whether someone had workarounds. Thanks!
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] fpletz closed pull request #26273: Do not verify SSL peer when fetching sources (master...fetch-no-ssl) https://git.io/vHBfy
<MoreTea>
But that depends on the internal component manager of gcloud /cc zimbatm
pie_ has joined #nixos
berce has joined #nixos
<fpletz[m]>
domenkozar: that doesn't seem to be related to the stack clash fixes though
<makefu>
tommyangelo[m]: in nixOS, writing systemd services is extremely straight forward, all you need is something like this https://paste.krebsco.de/eVJzynUK/+inline
<adisbladis>
How would I go about cherry-picking a package from master while still using my git-checkout of the unstable channel?
dev2 has joined #nixos
<MoreTea>
oh lol, I think that just adding two small python files will enable the alpha/beta features that are in the source code itself...
<MoreTea>
I was confused by the empty class that the package manager downloaded
<adisbladis>
Or is it possible to reference a package from a specific channel in configuration.nix?
<symphorien>
for a local clone of nixpkgs: let local = import "/path/to/nixpkgs/clone" {}; in and then use local.thepackage
<symphorien>
for a channel, add the channel under a different name with nix-channel or NIX_PATH and then let blah = import <channel> {}; in
<dev2>
you can also set it with nix.nixPath variable
<dev2>
like nix.nixPath = [ "nixpkgs=/path/to/nixpkgs" ]; inside your configuration.nix
<adisbladis>
dev2: I have done this, all is fine and dandy. But I wish to use a package not in the unstable distribution (just this package) and stay on unstable for the rest
<adisbladis>
symphorien: I'll have a go, thanks
mpcsh has quit [(Quit: THE NUMERICONS! THEY'RE ATTACKING!)]
mpcsh has joined #nixos
<gchristensen>
fpletz[m]: looks like it happened already
metaphysician has quit [(Ping timeout: 255 seconds)]
<fpletz[m]>
domenkozar: pkgsi686Linux.perl on staging seems to have been built (it is on cache.nixos.org), maybe restart the failing builds?
metaphysician has joined #nixos
<fpletz[m]>
gchristensen: yup, I think domenkozar triggered it
<grahamc>
Great feel free to ping me later if anything else needs prodding
<fpletz[m]>
sombody told me I should be able to login in to hydra with a google account but none of my browsers seems to be able to :/
<fpletz[m]>
it is the only way to get access to hydra, right?
<grahamc>
Yeah, but still you'll have very very limited permissions. Mostly to just make a dashboard.
<grahamc>
Regular Firefox works for me, even with privacy badger / ublock origin. I think it opens a pop up, do you see that?
<fpletz[m]>
gchristensen: could you please restart the failed builds in the latest staging evaluation? I believe hydra didn't recognize the glic i686 fix correctly, it is somehow referring old failed build of perl that should be obsolete
<fpletz[m]>
*glibc
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] 1755 opened pull request #26875: Update docker-machine version (master...patch-1) https://git.io/vQsTH
NixOS_GitHub has left #nixos []
orivej has quit [(Ping timeout: 240 seconds)]
hlavaty has left #nixos ["ERC (IRC client for Emacs 25.1.1)"]
<gchristensen>
fpletz[m]: "8266 builds have been restarted"
<fpletz[m]>
gchristensen: thx!
<gchristensen>
you're welcome :)
<gchristensen>
fpletz[m]: maybe open an issue on nixos/hydra about not being able to register
<NickHu>
Is there a way to skip tests in haskell packages?
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] ttuegel closed pull request #26844: stdenv: load default inputs and functions before setup hooks (staging...stdenv--inputs-order) https://git.io/vQOp9
NixOS_GitHub has left #nixos []
<qknight>
ikwildrpepper: you said you are using nixops from mac os x, right?
<qknight>
i need support getting nixops to deploy some 'hello world' stuff from mac os x. anyone got that running? the nixops documentation isn't working for us at all.
<fpletz[m]>
ok, now the x86_64-linux build of perl failed on staging… I don't understand what is going on, it works on my machine and our hydra also succeeded in build the exact same store path for perl
<fpletz[m]>
qknight: this should not be issue because that changes the hash
<gchristensen>
fpletz[m]: what version of nix does your build farm run?
pie_ has joined #nixos
<jsierles>
do you guys mount nix store over NFS or some other shared filesystem? any gothchas related to this?
<gchristensen>
some people do it, but it is often plagued with assorted problems
<fpletz[m]>
gchristensen: unfortunately different nix versions, not all are nixos machines managed by our nixops deployment
<gchristensen>
I see
<jsierles>
gchristensen: what kinds of problems?
<gchristensen>
fwiw all of hydra.nixos.org runs nixUnstable
<jsierles>
i'm working in a cluster environment, so don't see any alternative to using a mounted store
<jsierles>
cloud environment i mean. servers come up and down regularly, but need to access the same store.
<gchristensen>
jsierles: the nix gc model for example depends on all users being on the same host. seems you might be better served by making a binary cache
<gchristensen>
I _certainly_ wouldn't use NFS for this purpose in a cloud env O.o
<ikwildrpepper>
qknight: I never used it on mac, I only use nixops on nixos
<jsierles>
gchristensen: what do you mean by making a binary cache?
mog has quit [(Ping timeout: 240 seconds)]
<gchristensen>
(I look at NFS as an utterly last resort in an env like that)
<jsierles>
gchristensen: well i wouldn't use NFS - we have fuse drivers backed by google cloud storage. it works well for other things
<gchristensen>
jsierles: you build software and push it to a binary cache, and when other nodes try to build the same software it finds it in your binary cache instead and just downloads it
<ikwildrpepper>
also, I am not much of a nixops-on-mac fan, seems to me it has too many disadvantages
<gchristensen>
just like how `nix-shell -p vim` doesn't recompile vim
<NickHu>
gchristensen: I'm trying to build llvm-hs but the linker fails to compile the test binary - is there a way to skip the tests in a haskell package?
<gchristensen>
NickHu: I have no idea about haskell, sorry
<NickHu>
I'm currently patching haskell-packages.nix
<NickHu>
ok
<gchristensen>
all I've done with haskell is buy books that people tell me make it easy to learn haskell :P
<jsierles>
gchristensen: ok - why would that help with nix gc?
<gchristensen>
jsierles: because the store isn't shared, each store can gc on its own
<jsierles>
gchristensen: OK. what information is needed to run gc?
<gchristensen>
you're going to try hard to make NFS work, aren't you :P
<jsierles>
we don't have a traditional setup in that users would interface with nix inside an isolated docker container. so there are no users on the underlying system
<gchristensen>
erm, why not just put the packages inside the docker container?
<gchristensen>
I feel we have a very very serious case of the X-Y problem
<jsierles>
docker isn't good for that, since everyone needs different packages. the idea is to abstract away docker and only use the store
<jsierles>
just because nix is built on a traditional 'users log into machines' way of working doesn't mean it's invalid for clouds :)
<jsierles>
ok, i see what you're getting at with the x-y problem. the problem with using docker that way is essentially speed
<gchristensen>
I didn't say that about nix
<gchristensen>
I said NFS isn't the solution, binary caches are much more suitable for your problem
katyucha has joined #nixos
<jsierles>
gchristensen: ok, i appreciate the advice. so you're saying run a nix daemon per server?
<gchristensen>
yeah
<jsierles>
what we wanted to avoid is having to rebuild packages over and over on different servers
<gchristensen>
yep, so when you build the package the first time, push it to the binary cache. then, when other servers want to use it, it'll fetch it
<jsierles>
alright. so a central binary cache. is there a reasonable way to automate pushing builds without invoking nix-push directly?
<gchristensen>
it gets you some very serious wins, the biggest one of which is you're not totally dependent on a centralized storage -- temporary problems will let you continue using anything you've already fetched
<gchristensen>
without knowing more about what exactly you're doing, no great ideas, other than the obvious wrapper script
<gchristensen>
my personal preference would be have one or two systems deemed Build Machines that build the software and push it to the store before other systems want to use it
<jsierles>
ok, we're building an in-browser coding tool for reproducible research. so the goal is to let users setup a profile using nix or guix, and run builds if necessary on a build server
<gchristensen>
COOL!
<jsierles>
more here at nextjournal.com :) anyway, we really want to invest in this tech, just need to work out the setup
<jsierles>
could the build server be setup to push automatically? if not, wrapper script sounds fine to start
nh2 has joined #nixos
<jsierles>
another approach could be to have the binary cache on shared storage. we still want to keep it safe, but that would be less painful than sharing a store across the whole cluster
<gchristensen>
there is a built-in way to serve a store IIRC, just can't find it ...
<jsierles>
OK, there is another catch though. the idea is that your whole environment is snapshotted so you can continue work later, even when on another machine.
<jsierles>
so my plan was to store a symlink to the correct profile in the store
<gchristensen>
presumably that would remain true, nix would just have to rebuild the work in the middle. it seems valid to lose and have to rebuild work from time to time, no?
<jsierles>
one of our core goals is to avoid that
<jsierles>
for example, if you cloned someone else's article which did a big installation of software, you shouldn't have to run that install again
<gchristensen>
I'd love to talk more about this, but I need to get back to work. perhaps we can talk again in 3hrs, and in the mean time perhaps someone else can help :)
<jsierles>
but how can you guarantee a profile will exist on a machine with a cold cache?
<jsierles>
in general this will just slow down more and more as the cluster grows.
<jsierles>
also we're snapshotting whole process states and restoring those on other machines. so shared storage is just part of our architecture. if nix gc is not a performance optimization, we could skip it
<qknight>
gchristensen: the nixops documentation really shines in that regard
<gchristensen>
no doubt
tanonym has joined #nixos
tanonym has left #nixos ["Closing Window"]
orivej has joined #nixos
<LnL>
gchristensen: nix-serve
<ikwildrpepper>
qknight: are you able to build a x86_64-darwin derivation with p[lain nix with that setup?
<ikwildrpepper>
the error seems to come from the remote build stuff in nix
<ikwildrpepper>
nixops assumes the setup is correct
<GlennS>
Does anyone know the state of Nixpkgs for Java (Maven) and/or Clojure (Leiningen) projects? Is there an equivalent of e.g. python35Wrapper at this point?
<GlennS>
I can seen that there is mvn2nix, but it doesn't look like it is maintained. Am I right in thinking that Java things with dependencies just fetch them from Maven Central at the moment, and are therefore impure?
tanonym has joined #nixos
<MoreTea>
GlennS, the mvn2nix tool generates a manifest of pinned down versions, with sha's.
<jsierles>
we'd be interested at Nextjournal to hire someone for a short gig. to help us setup nix for our distributed cluster (see convo above) PM me if interested :)
<MoreTea>
It's used by something like buildMavenPackage
<ij>
With other distros, people use different pkgmans for switching version of each new tool. Do people who have mastered nix don't do it? What can't other pkgmans do that nix can?
<MoreTea>
ij, nope, we don't use rbenv, virtenv etc.
<MoreTea>
we use nix-shell for development mostly.
jacob_ has joined #nixos
<MoreTea>
The main thing is that nix captures _all_ your deps, like libxml, which cannot be managed by e.g. rbenv / virtualenv
<ikwildrpepper>
qknight: go2nix built for darwin or linux?
jsierles has joined #nixos
<qknight>
ikwildrpepper: for darwin
<FRidh>
jsierles: interesting to read what you're working on. Should I see this as a tool that starts a Jupyter Notebook with modules and other tools in the env, backed by Nix?
<Wizek>
Hey folks. How large is your /nix/store currently? `du -sh /nix/store` will tell you. I'm looking for some data on how much it usually/min/max takes up. I've gotten 1 response so far, I would like some more, maybe 5-10 would be nice.
pie_ has quit [(Ping timeout: 240 seconds)]
<ikwildrpepper>
qknight: but nixos is linux, so if you provide it with a NIX_REMOTE_SYSTEMS, you need to make sure you can build a linux derivation using that config
<FRidh>
jsierles: I tried using Nix with Lustre in the past but ran out of inodes pretty fast so can't recommend that.
<jsierles>
FRidh: yes, though it doesn't use jupyter at all. similar notebook-style environment, but everything you do is reproducible and stored forever.
<ikwildrpepper>
my original question was wrong, should have been: are you able to build a x86_64-linux derivation with p[lain nix with that setup?
yorick_ is now known as yorick
<FRidh>
jsierles: assuming your nix builds are reproducible, that is
<FRidh>
unless you really store the whole closure
<manveru>
ij: yeah, we use nix to manage all our dependencies, including ruby and js ones :)
<ij>
Is "gem" being used at all?
<manveru>
also go/python/erlang/c/c++/tcl... whatever you want i'd say
<jsierles>
FRidh: yes, we define 'reproducible' loosely here. the idea is once your build is setup, we'll use that until you change something. but we also verison your whole environment, including snapshots of process state.
<manveru>
the command?
<NickHu>
How can I use an older version of ghc with nix-shell?
<qknight>
ikwildrpepper: how could we test your 'latest' question?
<ij>
manveru, yeah
<manveru>
ij: i don't use it much, other than to push gems
<jsierles>
FRidh: right now you could run any command, and we store a snapshot of the result. so you can rely on that working as you had set it up the first time. the goal is to put nix under this so we can offer deeper reproducibility.
arianvp2 has joined #nixos
<manveru>
ij: i'm using nix-shell and direnv to setup the development environment for all devs working on the project, so they just cd in there and everything is installed/working automatically
<jsierles>
FRidh: stuff like jupyter are useless for this because they don't take the whole dependency graph into account. that includes all underlying software, but also dependencies between your code, data files etc. anyway, don't want to clutter channel, pm me for more!
<ij>
manveru, Sounds beautiful!
<jsierles>
in what situation would a Nix build not be reproducible?
<manveru>
while that initial setup takes a lot longer than you'd usually have to wait for just `bundle install; npm install`, you never have to worry about what version of postgresql/imagemagick/libxml etc you've got installed
<manveru>
ij: for example to add/update a gem, you'd edit the Gemfile, run `bundle lock && bundix -d && direnv allow` and it's there
<FRidh>
jsierles: code that is run in builds may not necessarily record the order of the data it handles and eventually writes. There are some cases with Python where this happens e.g.
<manveru>
with checksum, so it can be used in deploy identically
<manveru>
jsierles: running compiles in parallel sometimes results in different output
<jsierles>
right - and this is dependent on the source package's behavior
<manveru>
exactly :|
<FRidh>
a matter of fixing packages
<jsierles>
does nix have any tools to detect that?
<manveru>
yeah, you can run compiles 2 times automatically to find differences
<FRidh>
you can run nix-build -A derivation --check
<manveru>
takes longer, ofc ;P
<manveru>
i think hydra does that now too?
<FRidh>
yep
<jsierles>
sure - that's a worthy fight. we intend to bring users as close as possible to reproducible.
<FRidh>
supports it at least
<jsierles>
cool that's useful. i tried out guix before coming here, and saw it supported that
<jsierles>
now been trying to compare them to see which to use. nix seems way more active.
<qknight>
ikwildrpepper: if i evaluate that it downloads hello from the binary cache IIRC
<FRidh>
jsierles: how are you going to deal with say network activity? With nix we typically use a sandbox preventing network activity and thus that type of impurities. Would you want users to allow network access and thereby recognize you cannot guarantee reproducibility anymore?
<qknight>
ikwildrpepper: i can't execute it as it is a ELF file but it wasn't built on the local machine!
<jsierles>
FRidh: you mean disallow people downloading a file from some URL?
<FRidh>
jsierles: yes. I suppose it is something for the user to decide, just as generating random numbers without setting a seed
<jsierles>
FRidh: guaranteeing that is impossible
<jsierles>
the idea is to provide better tools to make it easier. and educate
<FRidh>
Good
<ikwildrpepper>
qknight: well, build something that is not in the binary cache then
<jsierles>
FRidh: i figure that even if you download a file, it's OK as long as you know you did and that you have a snapshot of it forever. unless you change it.
<jsierles>
the problem happens when you run code again and it changes. but in our system you can lock the state of execution, a guarantee of some kind.
<qknight>
ikwildrpepper: that is not very helpful and i'm tempted to cancel this nixops project
<ikwildrpepper>
it's an example, what do you want more?
<FRidh>
jsierles: well, I'm looking forward to seeing it in action. For now, I'll use nix-shell and nix-build for my research :)
<qknight>
and if contributing to the nix* manuals wasn't such a pain i'd like to add a note: for mac os x builds you need to do a complicated 'linux VM buildhost' setup because it is easy to miss and if i'd known beforehead i'd never tried to deploy nix via nixops from darwin which is nearly undocumented and full of pitfalls
<jsierles>
FRidh: yup, coming soon, you can play with the UI now on there. feedback welcome
<qknight>
ikwildrpepper: why should the mac toolchain be able to build x86_64-linux at all i question
<qknight>
ikwildrpepper: this would be a cross compiler setup and i thought for that very reason we were using the build host dropin
ericsagnes has quit [(Ping timeout: 258 seconds)]
<qknight>
ikwildrpepper: i will recommend to our customer this: install nixos in a virtual machine on mac os x and deploy nixops from there
<ikwildrpepper>
qknight: not sure what you mean with 'mac toolchain'. as far as i know, nixops uses the host nix to build the machines that it will deploy. by default it will try to use an already started machine in the network to build it when the system of host is not the same as the target. however, you give it a remote systems file, which means you are responsible for the set up.
<qknight>
ikwildrpepper: because for what we've been trying i don't see how that is going to happen in a resonable time
<ikwildrpepper>
in general, you will get the best results using linux as a host (deployment machine)
<qknight>
ikwildrpepper: the theory of yours is sound but i can't get that to work
<qknight>
ikwildrpepper: agreed
<qknight>
ikwildrpepper: and if he needs a virtualbox machine anyways why not deploy from there also
<manveru>
it's not 100% foolproof yet, but it uses the builtin hyperkit so you can avoid vbox
<ikwildrpepper>
what's hyperkit?
Svarog has joined #nixos
<qknight>
ikwildrpepper: probably the mac way of libvirtd
<manveru>
it's based on xhyve
<qknight>
that explains nothing to me
<manveru>
"The xhyve hypervisor is a port of bhyve to OS X. It is built on top of Hypervisor.framework in OS X 10.10 Yosemite and higher, runs entirely in userspace, and has no other dependencies. It can run FreeBSD and vanilla Linux distributions and may gain support for other guest operating systems in the future."
<qknight>
manveru: but it is probably something like LXC/nspawn
<manveru>
yeah
<qknight>
manveru: that is totally awesome
<qknight>
manveru: if that project of ours had more funding i'd look into improving that
<qknight>
manveru: thanks for pointing that out!
<manveru>
you can join ##nix-darwin to find stuff like this :)
<manveru>
we can always use more beta testers
<qknight>
manveru: our focus is nixcloud related stuff and we don't have many mac users ATM
<qknight>
manveru: but if that changes i will
<manveru>
ok
<manveru>
you work at nixcloud?
jensens has joined #nixos
<qknight>
manveru: paul and me (joachim) are basically doing nixcloud
darlan has quit [(Client Quit)]
<Svarog>
what's the state of rocm (radeon opencompute) on nixos? has anyone attempted to get it working
<qknight>
manveru: nixcloud.io
<manveru>
yeah, i found you guys through the nix tour :)
<manveru>
awesome stuff
<qknight>
hihi
<manveru>
i guess you're not hiring atm? ;)
<qknight>
manveru: we have a few contractors, are you looking for interesting things to do?
<manveru>
well, i have a fulltime job already, but wouldn't mind doing something involving nixops by the side
telotortium has quit [(Read error: Connection reset by peer)]
<manveru>
since atm my dayjob i mostly use nix to build dev envs and docker containers... we can't control infrastructure with it
telotortium has joined #nixos
<manveru>
working on that though right now, controlling marathon configs through nix :)
sary has quit [(Remote host closed the connection)]
lambdael has quit [(Quit: WeeChat 1.7.1)]
jensens has quit [(Ping timeout: 255 seconds)]
lambdael has joined #nixos
ZoomZoomZoom has quit [(Quit: Leaving)]
<qknight>
manveru: interesting
<ikwildrpepper>
anyone here have any idea why pyopenssl stopped building?
<ikwildrpepper>
(in 17.03)
eacameron has joined #nixos
jensens has joined #nixos
cpennington has joined #nixos
orivej has quit [(Ping timeout: 258 seconds)]
orivej has joined #nixos
ryantrinkle has quit [(Ping timeout: 260 seconds)]
<ikwildrpepper>
ugh, certificates in tests of pyopenssl with hardcoded expiry date of somewhere around 11 june 2017
<domenkozar>
lol
<qknight>
ikwildrpepper: revision bump ahead?
<qknight>
and yes, lol
<ikwildrpepper>
revision bump?
<ikwildrpepper>
doCheck = false;
<ikwildrpepper>
newer pyopenssl has same issue unfortunately
<qknight>
ikwildrpepper: is this the 'planned obsolescence' everyone is talking about?
<MoreTea>
ikwildrpepper, nasty!
<niksnut>
hm, we could use seccomp to return fake timestamps to builds...
earldouglas has joined #nixos
<gchristensen>
:o
<ikwildrpepper>
niksnut: but what date would you set it to
<gchristensen>
0!
<ikwildrpepper>
or make that configurable? :(
<Gravious>
niksnut, not libfaketime?
<niksnut>
1
<gchristensen>
SSL certificates are only valid starting on a datetime, too :(
<Dezgeg>
I think messing with timestamps will really confuse some tools, like makefiles re-running configure infinitely
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] rbvermaa pushed 1 new commit to release-17.03: https://git.io/vQsW3
<NixOS_GitHub>
nixpkgs/release-17.03 5cff203 Rob Vermaas: Disable pyopenssl tests temporarily, due to hardcoded certificate that depend on a date before June 10-11 2017. Newest version of pyopenssl still has the same certificates as far as I could see.
NixOS_GitHub has left #nixos []
<ikwildrpepper>
gchristensen: yeah, that's why you would need to be able to configure the date per build :D
<Gravious>
ooi why is seccomp preferable to faketime=
<Gravious>
?
<gchristensen>
IMO the correct thing isn't to fake the time in this case, but to fix the dang test (either by actual fixing, removal of the test, or disabling of tests)
<pietranera>
I asked this earlier but got no reply... trying again now :)
<pietranera>
Hello, does anyone know how to make nixos honor the settings in ~/.gtkrc-2.0 ? FTR I am using awesomeWM. I have seen that there are a few issues about GTK theming on GitHub but was wondering whether someone had workarounds. Thanks!
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] volth opened pull request #26877: fetchFromGitHub: fix fetchSubmodules=true when revision is not hexade… (master...fetchfromgithub-fix) https://git.io/vQslk
<MoreTea>
It creates a script that ill do a remote build
<jsierles>
i see. thanks. ssh works, just have to ensure I can keep it secure by restricting commands to only allow a build to happen
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] NeQuissimus pushed 1 new commit to master: https://git.io/vQszH
<NixOS_GitHub>
nixpkgs/master c90a4b8 Tim Steinbach: linux: 4.12-rc6 -> 4.12-rc7
NixOS_GitHub has left #nixos []
jensens has joined #nixos
tanonym has quit [(Quit: Going offline, see ya! (www.adiirc.com))]
berce has quit [(Ping timeout: 246 seconds)]
<LnL>
jsierles: you can do that by only allowing nix-store --write with authorized_keys
<jsierles>
LnL: i followed the instructions on the README, but don't see nix-build is trying to use the remote daemon. it reports: error: attribute ‘hello’ in selection path ‘hello’ not found
<LnL>
I should fix that
odi1 has joined #nixos
<LnL>
ah, that command assumes you are in the nixpkgs repo
<LnL>
use nix-build '<nixpkgs>' -A hello ...
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nix] DanOlivier opened pull request #1423: Adding CMake support (1.11-maintenance...1.11-maintenance) https://git.io/vQs2k
NixOS_GitHub has left #nixos []
<jsierles>
LnL: ok - what does '<nixpkgs>' mean here?
odi1 has quit [(Quit: WeeChat 1.8)]
odi_ has joined #nixos
tgunb has left #nixos ["Good Bye"]
MercurialAlchemi has quit [(Ping timeout: 268 seconds)]
<LnL>
it uses NIX_PATH, most likely the path to your current nixpkgs channel
<LnL>
nix-instantiate --eval -E '<nixpkgs>'
<jsierles>
ok. that's coming from my initial nix install (on osx)
<jsierles>
so that's now running and grabbing stuff from the binary cache.
<jsierles>
but on the store on my osx host, not in the build server. does that mean the client can write to the store?
<jsierles>
i have no daemon running except in the docker container.
<LnL>
the build-hook will first try to download everything to your local store (osx)
<LnL>
and then copy the build dependencies to the build machine
<jsierles>
LnL: ah. so i assume nix clients need write access to the store?
odi has quit [(Quit: leaving)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Mic92 pushed 1 new commit to master: https://git.io/vQsVr
<sphalerite>
disasm: Re redirecting a USB device (didn't see if anyone else answered, but hey), you need permission to access the device file which lives at /dev/bus/usb/???/??? where ??? ??? are the bus and device numbers shown by lsusb. I use setfacl -m u:linus:rw to temporarily grant my user access to the specific device I need.
<disasm>
sphalerite: ah, ok, thanks!
<sphalerite>
If you want it permanent, add a udev rule
<sphalerite>
Actually not sure if that's how it works with libvirt
<sphalerite>
potentially you need to give access to the user that libvirtd runs as
<sphalerite>
rather than yourself
hotfuzz_ has joined #nixos
<Sonarpulse>
copumpkin / shlevy: want to come up with a plan with me splitting things into more PRs
<Sonarpulse>
opening hydra jobs
<Sonarpulse>
how many shares to reserve?
<copumpkin>
don't know much about hydra job shares
<copumpkin>
also, semi-related: are you or shlevy going to nixcon?
<copumpkin>
yeah, there are a couple of main applications I have in mind for it right now
<copumpkin>
mostly around NixOS configuration
<copumpkin>
but there's lots of other stuff that it could help with
<hyper_ch>
so, my Dripo has arrived... now I'll have my first attempt at cold brew coffee
<sphalerite>
unlmtd: I personally would want to encrypt the nix tree even if the option to have it unencrypted but on the same partition exists, to ensure that it can't be modified maliciously
<hyper_ch>
encrypt nix tree?
<sphalerite>
hyper_ch: unlmtd mentioned the potential use of zfs's encryption feature (vs zfs-on-luks) to have parts of the filesystem unencrypted
<hyper_ch>
I encrypt everything :)
FRidh has quit [(Quit: Konversation terminated!)]
<hyper_ch>
I'd even encrypt my kitty if I could :)
<gchristensen>
your poor family
<clever>
in the case of zfs, if you only want to prevent tampering, you just need signatures on the zfs metadata (which includes the hashes of the data)
<clever>
zfs already verifies the hashes of all data it reads, so signing the metadata would prevent modification
<hyper_ch>
btw, can zfs be used as rootfs on nixos?
<clever>
hyper_ch: several of my systems use zfs as the rootfs
<Sonarpulse>
copumpkin: we have another reviewer here who apparently wants me to take my PR in a more maximalist direction :D
<clever>
and my laptop has zfs on lvm on luks
<hyper_ch>
debian doesn't include it
<copumpkin>
maximialist!
<hyper_ch>
it needs to be loaded as dkms and to use zfs on / is a pain - or so I've read
<hyper_ch>
never used zfs but I heard it's totally awesome
<clever>
hyper_ch: if you set filesystems."/".fsType = "zfs";, it will just automatically configure everything for you
<sphalerite>
hyper_ch: I also use zfs as rootfs
<clever>
and nixos-generate-config does that already
<gchristensen>
hyper_ch: it can, I have a nixos installer test almost ready for contribution
<hyper_ch>
btrfs isn't good for production... a small power outage and it's all mangled
<sphalerite>
hyper_ch: debian presumably doesn't include it because of the licencing issues
<sphalerite>
(GPL incompatibility)
<hyper_ch>
sphalerite: yeah, that's why
<clever>
hyper_ch: only limitation, is that you must set mountpoint=legacy on the zfs filesystem, and mount it with mount
<hyper_ch>
so I didn't know if nixos does the same
<hyper_ch>
also, can an average computer person like me even handle zfs?
<gchristensen>
see ^
<hyper_ch>
one last thing... since it's copy-on-write... how much performance impact does it have?
<gchristensen>
you should read that article and do your own testing probably
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] bjornfor pushed 1 new commit to release-17.03: https://git.io/vQsjQ
<NixOS_GitHub>
nixpkgs/release-17.03 b00fb69 Will Dietz: at: Don't set fancy bits on install...
NixOS_GitHub has left #nixos []
ryanartecona has joined #nixos
Wizek_ has quit [(Ping timeout: 276 seconds)]
Wizek has quit [(Ping timeout: 276 seconds)]
ertes has joined #nixos
MoreTea has quit [(Ping timeout: 255 seconds)]
<eacameron>
How do you work on multiple packages with the same nix-shell?
primeos has quit [(Ping timeout: 240 seconds)]
ambro718 has quit [(Ping timeout: 276 seconds)]
Infinisil has joined #nixos
odi has joined #nixos
primeos has joined #nixos
<sphalerite>
Gravious: re "why is seccomp preferable to libfaketime" — I believe seccomp intercepts the system call while libfaketime only replaces the library calls, so if an executable makes the system calls directly (rather than via a libc) it won't be affected by libfaketime but will by seccomp
<gchristensen>
niksnut, ikwildrpepper: is there some sort of log aggregation / metrics system that certain trusted users may be granted access to for the hydra / nixos infra, to be able to debug and investigate problems like channel updates not advancing?
henrycrutcher has joined #nixos
ThatDocsLady has quit [(Quit: Arma-geddin-outta-here!)]
<gchristensen>
(for example, vcunat doesn't seem too shady)
<henrycrutcher>
Hi All! Anyone know if it is possible to run MS Office 2010 under nixos with wine, or crossover office, or PlayOnLinux, or with winetricks. I've tried wine with nixos 15.09, 17.03, and unstable, and the same thing happens: it installs and runs, but saving or opening files crashes. Unhelpful logs...
Itkovian has joined #nixos
<sphalerite>
henrycrutcher: any reports of it working on other distros?
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/vQGfr
<NixOS_GitHub>
nixpkgs/master ac83ef3 Vincent Laporte: glsurf: 3.3 -> 3.3.1
NixOS_GitHub has left #nixos []
<sphalerite>
henrycrutcher: if it's possible on other distros it should be possible on nixos too. If not, then you're probably out of luck
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] vbgl pushed 1 new commit to master: https://git.io/vQGJ8
<NixOS_GitHub>
nixpkgs/master 456089b Vincent Laporte: ocamlPackages.mlgmp: disable for OCaml ≥ 4.03
<henrycrutcher_>
sounds good -- I've installed wine (under 15.09, or 17.03, or unstable) and installed wine and tried that. It works except that opening or saving documents causes a crash
<henrycrutcher_>
strace tells me nothing, neither do the logs
<Drakonis[m]>
which branch of wine?
jensens has quit [(Ping timeout: 260 seconds)]
<henrycrutcher_>
but I may not be smart enough to recognize what I'm looking for
<henrycrutcher_>
tried wine 1.7.x and wine 2.0
<henrycrutcher_>
I
<Drakonis[m]>
try staging i guess
<henrycrutcher_>
I'm sure Im missing a library or something
<Drakonis[m]>
staging's where the hotness at
<Drakonis[m]>
wine is fairly standalone
<gchristensen>
you mean like nixos's staging?
<Drakonis[m]>
no
<Drakonis[m]>
like wine staging
<gchristensen>
neat
<Drakonis[m]>
all of the experimental stuff land in staging before going into deveol
<NixOS_GitHub>
[nixpkgs] bjornfor pushed 2 new commits to release-17.03: https://git.io/vQGIn
<NixOS_GitHub>
nixpkgs/release-17.03 4fb8f6f Franz Pletz: lxc: 2.0.7 -> 2.0.8...
<NixOS_GitHub>
nixpkgs/release-17.03 b2bf4d8 Volth: mtr: do not do 'setcap' on installPhase, it would fail anyway...
NixOS_GitHub has left #nixos []
<Drakonis[m]>
wine seems like one of the things that doesn't work as well in nixos
<Drakonis[m]>
besides cups
<Drakonis[m]>
needs extra fiddling to work
<hyper_ch>
cups doesn't work?
<hyper_ch>
I found cups works good... and not add printers through kde systemsettngs but directly to cups in the browser
<Drakonis[m]>
didn't work when i tried with my printer
<Drakonis[m]>
at least getting the hp drivers to work was painful
<hyper_ch>
brother and oki printer here
<Drakonis[m]>
still didn't get the drivers to install, sadly.
<Drakonis[m]>
well, brother printers are known to work really well and need no special things
<hyper_ch>
for both I just supplied the ppd
<Drakonis[m]>
the problem was getting the hp ppd installer to work
<hyper_ch>
wasn't there a time where hp printer just worked (tm) on linux?
<Drakonis[m]>
thanks python!
<Drakonis[m]>
using nix-shell didn't work either
<sphalerite>
Drakonis[m]: how does it not work as well in nixos? I'd think that of all software it in particular would be pretty filesystem-layout-agnostic
marsel has joined #nixos
<Drakonis[m]>
the installer runs on python and it tries to use an library that's unavailable
<Drakonis[m]>
some kind of installer specific library it seems?
<Drakonis[m]>
wine is very layout agnostic, yeah.
ris has joined #nixos
<Drakonis[m]>
there's some minor upper layer fiddling, ie: gamepads, that doesn't work
<Drakonis[m]>
~~needs effort~~
lukego has joined #nixos
ris has quit [(Read error: Connection reset by peer)]
ris has joined #nixos
nckx has quit [(Quit: restarting my GuixSD server)]
_ris has joined #nixos
<sphalerite>
ah ok
nckx has joined #nixos
ris has quit [(Ping timeout: 260 seconds)]
lambdael has quit [(Quit: WeeChat 1.7.1)]
lambdael has joined #nixos
<henrycrutcher_>
extra fiddling is fine, but I couldn't get past this bug any way at all
<henrycrutcher_>
anyone ever get crossover to work for running Windows applications?
<Drakonis[m]>
crossover is paid wine basically
<Drakonis[m]>
wine with paid support
telotortium has quit [(Read error: Connection reset by peer)]
<henrycrutcher_>
I thought thats what crossover was
telotortium has joined #nixos
<Drakonis[m]>
used to be wine with patches
<lukego>
Is there a trick for 'fetchurl' to handle URLs containing spaces? The literal space doesn't seem to work and if I switch to %20 then I get "error: invalid character '%' in name ..."
<gchristensen>
lukego: nasty ...
<gchristensen>
lukego: I think you should open an issue
<Drakonis[m]>
i'm incorrect actually.
simendsjo has joined #nixos
<Drakonis[m]>
its wine with a professionally made gui with the concepts that used for making wine a better experience plus paid support
<Drakonis[m]>
think playonlinux and swine in one thing
<lukego>
gchristensen: Just did a 'grep' on nixpkgs and it seems like there are URLs with escaped spaces (%20) there...
noobly_ has joined #nixos
<noobly_>
does anyone here have any experience using home-manager?
<hyper_ch>
no
<gchristensen>
lukego: oh what if you just quoted it?
<gchristensen>
hyper_ch: you sure?
<hyper_ch>
gchristensen: well, it's a "yes/no/maybe/42/abort" question... so I just took a lucky guess :)
<gchristensen>
please don't scare away new comers
<lukego>
gchristensen: Oh you know I think the problem is that it creates a derivation name based on the basename of the URL, and it is the basename that contains a space. So invalid derivation name
<lukego>
yes, if I do 'nix-prefetch-url --name foo ...' then it is okay.
<bachp>
Hi I'm trying to package https://github.com/getsentry/sentry but it's build process is a mixture of python setup.y and node npm (or yarn). Does anyone have experience how to handle such hybrid build processes?
<lukego>
Is there a nix function / trick for converting a string into a valid derivation name? (e.g. somehow mangling out any illegal characters?)
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Ericson2314 opened pull request #26881: Make hash-breaking cleanups avoided in #26007 (master...cross-hashbreak) https://git.io/vQGYS
NixOS_GitHub has left #nixos []
<ij>
What is responsible for there being a LANG in my `env`?
<sphalerite>
noobly_: what is home-manager?
<sphalerite>
(the answer for me is obviously no, but I'm curious)
<sphalerite>
ij: on nixos or other distro?
<noobly_>
It's kind of like the configuration.nix but for your dot files, to create reproducible user configuration
<noobly_>
on nixos, I'll pull up the github link one sec
<noobly_>
As a linux noob who likes the ability to customize, but hates actually doing it, I was very drawn to nixos to not have to ever rebuild my system again, and home manager takes that even farther.
<Drakonis[m]>
says it targets 17.03
<noobly_>
So I think it's quite lovely, and hope it gets more attention from developers
<noobly_>
17.03? what is current?
<Drakonis[m]>
that's current
<Drakonis[m]>
the next one is 17.10
<noobly_>
oh nice
<noobly_>
Do you use it?
<gchristensen>
17.09
<Drakonis[m]>
hmm
mudri has quit [(Ping timeout: 255 seconds)]
<Drakonis[m]>
read the readme
<gchristensen>
(next version is 17.09)
<Drakonis[m]>
it will help set things up
<Sonarpulse>
anyone know how long release.nix evaluation normally takes?
mudri has joined #nixos
Infinisil has quit [(Quit: Lost terminal)]
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
seagreen has quit [(Quit: WeeChat 1.7.1)]
Infinisil has joined #nixos
seagreen has joined #nixos
<seagreen>
Is there a good list of maintained NixOS configs somewhere online? If not would that be a good thing to make?
simendsjo has quit [(Quit: ERC (IRC client for Emacs 25.1.1))]
<noobly_>
Drakonis[m]: I've read the read me, just wondering if you'd had any issues with it?
<noobly_>
the documentation mentions the possibility of catastrophic failure
<sphalerite>
I presume that's because it modifies stuff outside your nix profile and might in case of a bug accidentally delete your $HOME
<sphalerite>
But between the likelihood of that and solid backup-keeping, you're probably safe using it :)
marsel has quit [(Ping timeout: 240 seconds)]
<Gravious>
sphalerite, i see, thanks for explaining :)
<noobly_>
sphalerite: ok, thanks :)
<noobly_>
I imagine home-manager is only useful between machines of the architecture, yeah?
<sphalerite>
??
ambro718 has joined #nixos
<noobly_>
sphalerite: what??
<noobly_>
oh, ha, I meant of the SAME architecture
<noobly_>
and this would apply to the configuration.nix as well, right?
<sphalerite>
what difference would the architecture make?
lukego has quit [(Ping timeout: 260 seconds)]
<sphalerite>
For the system configuration, there are likely to be differences (but you can share most of the config and just import the arch-specific pieces)
<sphalerite>
for home-manager, I don't think there'd be any difference usually
<noobly_>
so if I have a 32 bit laptop, and want to reproduce my configuration.nix on my 64 bit desktop, I could just copy and paste the config without having to worry about my desktop downloading 32 bit applications?
<noobly_>
man I love NixOS it is truely the future, thank you sphalerite
<noobly_>
I can't wait to tailor my system to my precise preferences and never have to configure anything again
Filystyn has quit [(Quit: Konversation terminated!)]
oida_ has joined #nixos
oida has quit [(Ping timeout: 240 seconds)]
katyucha_ has joined #nixos
pie_ has quit [(Quit: Leaving)]
pie_ has joined #nixos
noobly_ has quit [(Quit: Page closed)]
pie_ has quit [(Remote host closed the connection)]
katyucha_ has quit [(Client Quit)]
pie_ has joined #nixos
katyucha_ has joined #nixos
hellrazor has joined #nixos
MP2E has joined #nixos
katyucha has quit [(Killed (barjavel.freenode.net (Nickname regained by services)))]
katyucha_ is now known as katyucha
katyucha_ has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] LnL7 closed pull request #26818: llvm-packages: get rid of extra build depedencies for manpages (staging...llvm-manpages) https://git.io/vQOtq
NixOS_GitHub has left #nixos []
ryanartecona has quit [(Quit: ryanartecona)]
Filystyn has joined #nixos
turion has joined #nixos
<turion>
I'd like to install nixos on my 1 GB USB stick.
<clever>
1gig is a bit small
<turion>
The smallest config I can come up with still takes 1.3GB, what can I do?
<turion>
clever, yes, it's a bit crappy
<turion>
But given that the minimal installer is just 300 MB, I thought it might work
<clever>
do you want to use it as an installer, or a real system with persistant data?
peacememories has joined #nixos
<turion>
Actually as an installer
<clever>
the installer uses a compressed read-only filesystem
jbgi has quit [(Ping timeout: 260 seconds)]
pie_ has quit [(Changing host)]
pie_ has joined #nixos
<turion>
I see
<clever>
the iso files are bootable usb images, you can just dd them to a usb stick
<turion>
Can I somehow alter the config of the installer?
<clever>
yeah, let me find an example
<turion>
Basically, can I make my own installer with my own config?
<turion>
Trouble is, I need some extra packages in order for it to boot, it seems
<clever>
make a configuration.nix file, that does imports = [ <nixpkgs/nixos/modules/installer/cd-dvd/installation-cd-minimal.nix> ];
<turion>
Ok
<clever>
and then build it with
<clever>
nix-build '<nixpkgs/nixos>' -I nixos-config=./configuration.nix -A config.system.build.isoImage
<clever>
then add whatever else you want to the configuration.nix
<turion>
Oh awesome
<turion>
My problem so far basically was that when I try to boot from the minimal or the graphical installer, then systemd fails to bring up NetworkManager and the login service
<turion>
Since it doesn't have the firmware for my wireless card, and I don't have a wired connection
<ryantrinkle>
gchristensen: do you happen to know if gnucash is working, in particular online banknig?
<ryantrinkle>
i noticed you had commented on gnucash generally at some point in the irc logs
<ryantrinkle>
i was able to get it to enumerate accounts, but all the actual online actions in the menu are constantly greyed out
<ryantrinkle>
so i think there might be an issue with the plugin or something
freezeboy has joined #nixos
<MP2E>
hey, trying to use nix-copy-closure remotely over ssh, but i can't seem to get signing to work. I used the 'nix-store --generate-binary-cache-key' option to generate the public and private keys and put both under the client and servers /etc/nix/ folders. When running the nix-copy-closure command with sign I get 'openssl failed with exit code 1'
<MP2E>
if i use nix-copy-closure without --sign it just complains that there is no signature x.x
<MP2E>
should mention, both computers are using nixos master, built as of friday
<MP2E>
they're both using the same commit as well
<freezeboy>
Hi all, I'm trying to write a package for an appimage application, and I'm stuck at the unpackPhase because the downloaded file is simply the binary, not an archive, I can't find how to disable unpackPhase (but keeping the fetchurl)
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] copumpkin pushed 2 new commits to master: https://git.io/vQG8H
<NixOS_GitHub>
nixpkgs/master 0fafa0d Daiderd Jordan: erlang: remove erlangR16 and all versioned variants from all-packages...
<NixOS_GitHub>
nixpkgs/master 2dc0eaf Daniel Peebles: Merge pull request #26797 from LnL7/erlang-versions...
<clever>
MP2E: if you use nix-copy-closure --to root@remotebox, it wont care about signatures
<clever>
secret-key-files = /etc/nix/signing.sec
<freezeboy>
Infinisil: thx I already looked there but I don't understand how to set the unpackPhase script so that it downloads and just keeps the file as is
<clever>
MP2E: and i think you need to set this option in nix.conf (via nix.extraConfig in configuration.nix) so it knows what to sign with
<Infinisil>
freezeboy: You just need to set the phases attribute to only those phases that you need, aka exclude unpackPhase
<freezeboy>
Infinisil: but where is the fetchPhase then ?
tokudan has quit [(Quit: Leaving)]
<Infinisil>
freezeboy: Ah right
<MP2E>
clever: ah thanks!
<clever>
MP2E: and if using --from, the nix-copy-closure itself has to run as root
peacememories has quit [(Ping timeout: 240 seconds)]
<MP2E>
clever: thanks again :) really useful stuff, I couldn't find much by googling
<clever>
MP2E: and in the case of a single-user nix install on debian or mac, it doesnt even need root to bypass
<clever>
whatever user did the install has that power by default
<MP2E>
awesome! now everything is working
<MP2E>
:D
<Infinisil>
freezeboy: What's the error that you get? Is your source just a single binary that looks like an archive and that's why it's trying to unpack it? If that's the case you may be able to set the unpackCmd = "true" so that it doesn't do anything to unpack it.
seagreen has quit [(Quit: WeeChat 1.7.1)]
<freezeboy>
Infinisil: well I started to write a script to create a directory and just creating a symlink
<freezeboy>
I'm not sure what behavior I should get in fact
<Infinisil>
freezeboy: Could you gist your nix file?
detran has quit [(Read error: Connection reset by peer)]
<freezeboy>
Infinisil: well it's on a virtualmachine without X so I'll have to find a way to do it ;)
<clever>
freezeboy: try setting unpackPhase instead of unpackCmd
<clever>
and line 11 does nothing, the script doesnt make use of version
<clever>
you can also just ditch the unpackPhase entirely
<clever>
just put the commands all into installPhase, and remove unpack from line 12
<clever>
that subdomain also goes against how nix works, "desktop-auto-upgrade", the download will just randomly break every time they bump the version, and then nobody can install the package
peacememories has joined #nixos
<freezeboy>
well that's the link they put on the website :(
goibhniu has joined #nixos
<clever>
yeah, they are offering an auto-updating link, so it just gives the latest version for anybody
<clever>
but nix expects the url contents to never change
<Infinisil>
Best would be to build from source
<clever>
yeah, that too
<freezeboy>
it is not free
orivej has joined #nixos
<Infinisil>
Argh why is molotov.tv in french
<freezeboy>
it is a french company
<Infinisil>
Ahh okay then
pie_ has joined #nixos
<freezeboy>
strange name ....
<Infinisil>
Some websites automatically use french because they think every swiss person speaks french
<freezeboy>
ok so now I have the thing installed
sigmundv__ has quit [(Ping timeout: 240 seconds)]
<pie_>
hey guys, how do i use a gamepad?
<freezeboy>
but instead of having /nix/store/blabla-molotov/molotov, I just have the first part :/
<freezeboy>
it is not a symlink
<clever>
you need to mkdir $out/bin/ and put the symlink in bin
<clever>
and you want to just symlink $src
<clever>
and a symlink wont do, it needs patchelf ran on it, which requires +w
<freezeboy>
:'( I think I will to my previous solution: keep this file in my home, and letting it auto updating itself
<clever>
you still need to patchelf it
<clever>
and the auto-update will break that
<clever>
one second
<freezeboy>
yes but if it is my home, I don't need the patch, am I right ?
<clever>
you do
<clever>
the ld.so path is wrong, so it will never start
<clever>
and the meta attribute was on the fetchurl
<freezeboy>
anyway as you said I don't have the direct url, just a magic auto update ... so it will be hard to have a useful package
<clever>
i noticed it has a version in the url, so it may not fully update
<clever>
./result/bin/molotov: error while loading shared libraries: libfuse.so.2: cannot open shared object file: No such file or directory
Wizek_ has joined #nixos
<clever>
it also needs rpath set
<clever>
so patchelf is a must
raignarok is now known as raignarok1
raignarok1 is now known as florianjacob
MP2E has quit [(Read error: Connection reset by peer)]
<freezeboy>
well thank you for the different inputs, I'll stop there for tonight, I'll see tomorrow if I still motivated to play with this one, or try another package ;)
MP2E has joined #nixos
<clever>
freezeboy: almost done patching i
<freezeboy>
really ? juste some patchElf $out/molotov ?
proteusguy has quit [(Remote host closed the connection)]
<freezeboy>
on my side the closure looks good now (hurray) but the file refuses to start
Isorkin has quit [(Ping timeout: 255 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub>
[nixpkgs] Ericson2314 opened pull request #26883: linux bootstrap tools: Use same derivation whether cross compiling or not (master...linux-make-bootstrap-tools) https://git.io/vQGwO
NixOS_GitHub has left #nixos []
<freezeboy>
saying no such file or directory, but if I open the file there is some content
<freezeboy>
anyway there's no X, so ... i could not run in the end
<clever>
/tmp/molotov on /mnt type iso9660 (ro,relatime)
<jeremejevs>
Hi! Just dumping a tip for future readers: for AMD RX 5xx cards to work (an RX 550 in my case), you need a 4.11+ kernel. Was about to ask for help here, but then, well, 4.11 helped.
peacememories has joined #nixos
<clever>
freezeboy: !!!, the ELF file is also a iso9660 filesystem!
<freezeboy>
didn't know this was possible
<clever>
iso9660 filesystems start with a special header at something like 64kb into the disk image
<clever>
and its trivial to create holes in an ELF file
<clever>
and patchelf re-arranges the contents of the elf, breaking this magic
<clever>
and even if we could patchelf it, its going to try to run the unpacked contents
<clever>
we need to manually unpack this, then patch the contents
<freezeboy>
very interesting
<freezeboy>
but definetely, I won't start tonight ;)
Wizek_ has quit [(Remote host closed the connection)]
<clever>
freezeboy: this is the unpacking expression i have, but i think they added some custom compression as the icing on the cake
<clever>
so nothing is readable
MP2E has joined #nixos
<freezeboy>
ok, I'll try from this version then
<clever>
i'm trying a 3rd option now
<clever>
it claims you can just run the appimage with --appimage-extract
<freezeboy>
you're never giving up
<clever>
but patchelf breaks things
<clever>
but, there is another way, to run unpacked binaries
<clever>
/nix/store/mpbivrldqncax4wg4yjrzm607i5wvlwp-molotov: error while loading shared libraries: /nix/store/mpbivrldqncax4wg4yjrzm607i5wvlwp-molotov: ELF file ABI version invalid
<clever>
and it uses this override to build a custom glibc locales package, with just the locales you selected
seanz has quit [(Quit: Leaving.)]
ilyaigpetrov has quit [(Quit: Connection closed for inactivity)]
hiratara has joined #nixos
<ij>
Gotcha.
noobly has joined #nixos
boomshroom has joined #nixos
<boomshroom>
Hello.
<ij>
Is the top-level value of configuration.nix always a function?
<clever>
ij: yeah
civodul has quit [(Quit: ERC (IRC client for Emacs 25.2.1))]
<ij>
What's the config and pkgs that it asks for? Are those previous top values like security, environment, boot, etc.?
<clever>
ij: the top-level value of every nixos module (including configuration.nix) will return either { options = {}; config = {}; } or just { something };
<clever>
ij: nixos will then inteligently merge all of the configs (and the ones lacking either) together, to create a single master config attribute
<clever>
which is passed to all of them
<clever>
so every module is being passed its own return value as an argument
<clever>
and the pkgs argument comes from loading <nixpkgs> and passing it the config in config.nixpkgs.config
<clever>
ij: and via config._modules.args, you can add any custom argument you want, which is passed to every module
<clever>
that is how pkgs is being added
<noobly>
so I know setting up a python enviroment in NixOS had some contreversy due to a user doing an imperitive "nix-env" install
<noobly>
I'm trying to set up a scheme / racket enviroment, will nix-env -i work?
qmake has joined #nixos
<clever>
noobly: i prefer baking absolute paths into everything i build, so it will work even with nix-build and ./result/bin/foo
<clever>
as an example of what can go wrong, if you install nixops on ubuntu 14.04, it just fails to import modules, but the exact same nixops on 12.04 works fine
<qmake>
I am trying to build a package, but do not know how to solve "called without required argument qmake"
<clever>
qmake: you must load it with callPackage, or possibly qt5.callPackage
<qmake>
I call it with libsForQt5.callPackage ./qarma { };
seagreen has quit [(Quit: WeeChat 1.7.1)]
<clever>
qmake: it may also not need qmake in the arguments of the file
katyucha has quit [(Ping timeout: 240 seconds)]
mellowmaroon has joined #nixos
<qmake>
Other qt packages that use qmake don't do anything special and I tried qt5.qmake, and it is not part of that (which is what libsForQt5 does I assume, supply all qt dependencies of a certain version)
<mellowmaroon>
Is there a way to get version 1.17.1 of rustc?
<clever>
qmake: what other qt packages are you looking at?
<clever>
qmake: i do see a related commit from ~9 days ago
<qmake>
clever: Thanks! I will just try and see what I need to change to make it work pre-qmake
<qmake>
clever: The downside of googling and searching on Github, it will be the latest. I did check the top-level declerations in 17.03 release, but not that of e.g. qt5ct on release 17.03
<qmake>
clever: Yeah, I should now be able to build it, except for one dependency which I cannot seem to find in nixpkgs: Project ERROR: Unknown module(s) in QT: x11extras
<qmake>
Arch Linux has a package for it: qt5-x11extras, but I cannot find something similar on nixpkgs, only a reference to a patch for virtualbox
<clever>
nix-repl> qt56.qtx11extras
<clever>
i do see a qtx11extras attribute in some of the qtxx sets
<qmake>
Yep... Note to self, do not use github search anymore, it sucks for these kind of searches
<clever>
$ ls ~/.nix-defexpr/channels_root/nixos/
<clever>
qmake: this directory contains the nixos channel for root
<clever>
which is usualy what <nixpkgs> maps to
<clever>
so you can grep the exact nixpkgs copy that your running against
<henrycrutcher_>
Just a question for you -- has anyone sucessfully run Microsoft Word in a wine/PlayOnLinux/CrossOver/etc under any version of NixOs? Can it be done at all?
hiratara has joined #nixos
<mellowmaroon>
henrycrutcher_: Haven't tried. I've found LibreOffice sufficient for my use cases
<qmake>
clever: Thanks for all your help! I managed to build it and it works correctly ^^ (took some trial and error with copying things from other packages that used qmakeHook/makeQtWrapper, but now it works)
goibhniu has quit [(Ping timeout: 240 seconds)]
arianvp2 has quit [(Quit: arianvp2)]
erasmas has quit [(Quit: leaving)]
thc202 has quit [(Ping timeout: 260 seconds)]
athan has quit [(Ping timeout: 260 seconds)]
digitus has quit [(Quit: digitus)]
phinxy has quit [(Read error: Connection reset by peer)]