<tobiasBora>
maurer: so you use ssh to deploy to a first server, that is used as a client in nixops?
Lisanna has joined #nixos
fendor_ has quit [Remote host closed the connection]
fendor_ has joined #nixos
<tobiasBora>
as you say, it should be a server, not a client
<maurer>
tobiasBora: Actually, that is a reasonable idea - could you ssh to your big server, and run nixops there?
<maurer>
Rather than from your rpi?
<tobiasBora>
ahah, my rpi is my biggest server ^^
fendor_ has quit [Read error: Connection reset by peer]
<maurer>
By big server I mean using your big target deployment server
<maurer>
as your nixops deployment server as well
fendor_ has joined #nixos
<tobiasBora>
for now I've just one server, the rpi. So you mean I should run nixops from it right?
<tobiasBora>
it can be an idea. nixops can deal with local machine.
<tobiasBora>
?*
fendor_ has quit [Remote host closed the connection]
fendor_ has joined #nixos
<tobiasBora>
for example, if I use deployment.targetHost = "localhost";, will it work?
thc202 has quit [Ping timeout: 268 seconds]
fendor_ has quit [Remote host closed the connection]
fendor_ has joined #nixos
tzemanovic has quit [Remote host closed the connection]
fendor_ has quit [Ping timeout: 260 seconds]
tzemanovic has joined #nixos
<clever>
tobiasBora: that would probably work
<maurer>
tobiasBora: Yes, that is what I am suggesting
<maurer>
tobiasBora: I was arguably suggesting you should use your biggest target machine, set targetHost = "localhost", and then also deploy from it to elsewhere
<tobiasBora>
yes I see
winem_ has joined #nixos
<tobiasBora>
I think that's a cool idea.
<tobiasBora>
Can I put the configuration in, say, /etc/nixos/nixops/, or should I create a new folder outsite of nixos configuration just for that purpose?
<clever>
id keep a dir in home
tzemanovic has quit [Ping timeout: 244 seconds]
<tobiasBora>
Ok thanks
<tobiasBora>
Also, because for now, I just have a single server, I want to make sure that it won't add too many overhead. Will it be more or less equivalent in term of ressources (time to deploy, space, ...) to deploy it that way rather than with a simple rsync?
<clever>
what would you be rsync'ing?
<tobiasBora>
clever: well for now I just rsync the configuration file to /etc/nixos/configuration.nix, but with what maurer propose, I'll need also to rsync the nixops configuration to ~/nixops/ no?
<gchristensen>
<infinisil>
gchristensen: I agree
<gchristensen>
<3
<tobiasBora>
s/also/instead
<maurer>
~/.nixops I think, but yes
<gchristensen>
sometimes I'll type random stuff to see if the ssh connection is still alive, see it is dead, press enter, then ~. to tell ssh to kill the session... and then the connection comes alive and I send whatever I spewed
<maurer>
well, both ~/.nixops, and wherever you're pushing your files
* maurer
disappearing for a bit
<tobiasBora>
Why should I touch the .nixops folder? Isn't nixops supposed to do it already?
<gchristensen>
ps: ~. is magic, and sometime you ssh somewhere, press enter, then ~? to see what other fun stuff ssh can do
<tobiasBora>
what is ~.?
<gchristensen>
[grahamc@zoidberg:~]$ ~?
<gchristensen>
Supported escape sequences:
<gchristensen>
~. - terminate connection (and any multiplexed sessions)
<infinisil>
Very useful
<tobiasBora>
interesting, thanks!
dj_goku has quit [Ping timeout: 256 seconds]
<tobiasBora>
so any idea if the nixops way will be heavier than simpling rsyncing the configuration to /etc/nixos?
<gchristensen>
I especially like that you can take an existing connection and add / remove port forwards
<gchristensen>
tobiasBora: not much point to nixops if you do that, so I'd just skip it.
winem_ has quit [Ping timeout: 265 seconds]
<tobiasBora>
gchristensen: Well for testing I may want latter on to use nixops as well, or if I use my other raspberry. And also, that's fun, so if if it don't touch the performance I don't mind to try to set it up ;)
<roderick>
does anyone have any experience setting up gitlab on nixos? following the manual it appears to be up, but I can't push/pull via ssh and I get an error involving git-shell when I try to create a project from the web interface
orivej has joined #nixos
andymandias has quit [Ping timeout: 260 seconds]
<tobiasBora>
I tried to use localhost in nixops, but he is trying to generate new keys... Is it normal??
<clever>
tobiasBora: yes
<gchristensen>
yeah ...
<gchristensen>
I'd
<gchristensen>
tend to not use nixops to manage localhost... but I'm just one voice
sir_guy_carleton has joined #nixos
<tobiasBora>
gchristensen: ok, I think I'll just try it once for fun, and then I'll be back to normal use. But if you don't want to use nixops to manage localhost, how would you solve the problem I raised here then? https://github.com/NixOS/nixops/issues/976
justanotheruser has quit [Ping timeout: 240 seconds]
<{^_^}>
nixops#976 (by tobiasBora, open): Add a way not to use the user's computer as a cache
<gchristensen>
not use nixops
<tobiasBora>
gchristensen: even when you are a team of 200 programmers that want to setup 100 servers?
<gchristensen>
then I'd get a bigger system and use nixops on that one
<tobiasBora>
gchristensen: you mean sacrify one server just to run nixops?
justanotheruser has joined #nixos
erickomoto has joined #nixos
<gchristensen>
at 100 servers you probably have at least a few of those for build and deploy management, so I'd put it in that process. BUT: we're talking one, when you have 100, you maybe don't even want nixops
<roderick>
also, which repo is the nixos manual hosted in? I found some issues with the gitlab section that should probably be updated
<clever>
roderick: nixpkgs, under the nixos subdir
<tobiasBora>
gchristensen: ok I see. I'm still not sure to understand why nixops needs to compile everything on the client side first, especially because usually servers are more efficient than simple laptop (actually, even in your case you don't need it I think, you just want to let the vm compile it and the caching can be done because the vm shares the store with the host), and the fact that server/routers are slow can
<tobiasBora>
be balanced by setting the local computer as a build node on the router I guess... But anyway, I think we went through all the pro/cons of nixops, and even if I believed that nixops should provide a "light client mode", I think I won't change your mind. So thank you everyone for the interesting discution, I hope I didn't bother you too much!
<gchristensen>
I don't deploy to a VM
<tobiasBora>
gchristensen: so you just try to compile, but you don't deploy?
<gchristensen>
no, I don't use a VM
<tobiasBora>
even a lightweight nixos container?
<gchristensen>
I don't do that either
<gchristensen>
I agree nixops should support using a specified machine as a builder for the deploy
<tobiasBora>
ok, so just compilation?
<gchristensen>
my laptop is much more powerful than the target host, is why I use nixops
<tobiasBora>
ok I see
<gchristensen>
I don't disagree with your idea at all, I think it is a good idea
<gchristensen>
but we don't have it now, probably won't have it soon, and nixops _right now_ is not an appropriate tool for your use case I think
<tobiasBora>
Ok. I think it could be quite valuable, especially when you want to develop from several computers/with several programmers. If at some points nixops change it's mind, let me know ;)
<tobiasBora>
Thank you!
alexteves has quit [Remote host closed the connection]
<angerman>
Alright, in nixos-unstable there are a few minor issues wrt to cross compiling haskell stuff to windows. I think there might be even some more generic issues with building cross compilers with integer-gmp though. I'll PR once I think I've got it sufficiently streamlined. It is looking *much* better than it used to a few month back.
<iqubic>
So I'm back.
<clever>
nice
<iqubic>
Time to figure out why this shellnix fails to work.
<samueldr>
iqubic: in the commit where 9.x was removed, it's possible to see in the context that nodejs-10_x is available
<samueldr>
you could also (if your shell does tab completion) nix-shell -p nodejs-[tab][tab] to see the available options
<samueldr>
or using nix repl
<iqubic>
well, I got it to work.
<tnks>
A while ago, a few libraries like EKG in Haskell had some references to assets that would pull in dynamic dependencies by reference, even if doing a statically-linked compilation.
<tnks>
There was a hack a few of us were doing to get around it, but now it seems that hack is no longer necessary.
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
markus1189 has quit [Ping timeout: 244 seconds]
<tobiasBora>
I'm trying to setup openvpn
<tobiasBora>
but I need to run some code involving easyrsa to generate the keys.
<tobiasBora>
However, I'd like as much as possible to avoid to type any command line on the server
<tobiasBora>
What is the best way to proceed?
<tobiasBora>
I saw in the examples that I can use system.activationScripts.<...> in order to put a script that will check if the key exists, and recreate it if not.
<tobiasBora>
do you confirm it's the good way to proceed?
Supersonic has quit [Disconnected by services]
Supersonic112 has joined #nixos
Supersonic112 is now known as Supersonic
<tobiasBora>
Also, because the key is secret, I shouldn't put it anywhere... is /etc/openvpn/easy-rsa/keys/ a good place to put the key?
<gchristensen>
as long as the parent directory is locked down and the files can only be read by root and openvpn, seems fine
init_6 has joined #nixos
pie_ has quit [Remote host closed the connection]
pie__ has joined #nixos
graphene has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @IvanMalison opened pull request #43550 → rofi-systemd: init at 0.1.0 → https://git.io/fNmji
<tobiasBora>
(well put this in a configuration file)
<tobiasBora>
However, I get that nix mess it up, and that it shouldn't work right?
<tobiasBora>
So what's the good way to refer to the openvpn share folder?
<clever>
${pkgs.openvpn}/share/
<samueldr>
(looks like nothing builds that plugin?)
<samueldr>
,locate openvpn-auth-pam.so
<{^_^}>
Couldn't find any packages
lassulus_ has joined #nixos
<samueldr>
but yeah, if you had a package building it, you could use something like ${that-openvpn-plugin}/share/openvpn/plugin/lib/openvpn-auth-pam.so to get the path
pluplog has joined #nixos
lassulus has quit [Ping timeout: 240 seconds]
<pie__>
so ive been using ghcwithpackages for everything, but not i need to build a package without nix because rebuilds take too long, but i have no idea how to do that
mounty has quit [Ping timeout: 260 seconds]
<pie__>
*but now
<tobiasBora>
clever: thanks!
mounty has joined #nixos
andymandias_ has joined #nixos
andymandias has quit [Ping timeout: 240 seconds]
lopsided98 has quit [Ping timeout: 240 seconds]
<tobiasBora>
I don't understand a syntax error
<tobiasBora>
I've:
<tobiasBora>
{ config, pkgs, lib, ... }:{ let a = "hey"; b = "yep"; in { ... }}}
<tobiasBora>
and I've: syntax error, unexpected LET
Sonarpulse has joined #nixos
<samueldr>
let cannot be inside an attribute set
<samueldr>
the braces are, (except for function parameters) an attribute set
<samueldr>
you probably want {...}: let a = "hey"; b = "yep"; in {...}
lopsided98 has joined #nixos
<samueldr>
> ({...}: let a = "a"; b = "b"; in { a = a; b = b; }) {}
<{^_^}>
{ a = "a"; b = "b"; }
iyzsong has joined #nixos
<tobiasBora>
samueldr: great thank you! I don't know why, but emacs does not align correctly the multiples X = ... in the let, but at least I don't have any syntax error!
<samueldr>
:) most syntax files for nix have weird edge cases
zopsi has quit [Quit: Oops]
<samueldr>
they do the colour right though, mostly
<tobiasBora>
ok thanks ;)
<tobiasBora>
grrrr these "Couldn't connect to server" drives me crazy
sbdchd has quit [Remote host closed the connection]
<tobiasBora>
clever: thank you. But which service should I target?
<clever>
oh, and id avoid using an activation script for that kind of task
<clever>
create your own systemd service that will do the job, and flag it to run before openvpn
<clever>
its very easy for an activation script to break and stop the entire machine from booting
<tobiasBora>
oh good to know
<tobiasBora>
what are activation script exactly?
<gchristensen>
you should read the activation script :)
<clever>
tobiasBora: activation scripts run both on bootup (before network is online, before systemd has even ran), and also when you nixos-rebuild switch
<{^_^}>
[nixpkgs] @Enzime opened pull request #43552 → streamlink: set macOS as a supported platform → https://git.io/fNYeM
alex``` has quit [Quit: WeeChat 2.1]
roderick has quit [Read error: Connection reset by peer]
<tobiasBora>
clever: thank you. I tried to change it into a service, but it seems that I need to provide an executable in "Exec", not a script... what is the best way to proceed?
worldofpeace has joined #nixos
<clever>
tobiasBora: .script instead of .serviceConfig.ExecStart
init_6 has joined #nixos
<tobiasBora>
ouhhh thanks clever!
klntsky has quit [Remote host closed the connection]
klntsky has joined #nixos
jperras has quit [Ping timeout: 260 seconds]
vasiliy_san has joined #nixos
zgrep has left #nixos ["Well, I don't think I'm ready for NixOS just yet. I'll probably continue using nix, though."]
<Enzime>
does anyone know how to run interactive scripts inside nix-build?
silver has quit [Read error: Connection reset by peer]
<infinisil>
,XY
<infinisil>
Enzime: XY problem
<Enzime>
infinisil: I want to debug code that's getting built on macOS
<Enzime>
but because macOS stdenv issues afaik you can't just run clang normally
<Enzime>
and expect it to build
<Enzime>
so I need the context that nix-build sets up
<Enzime>
to run it correctly so I can debug
trylist has joined #nixos
<clever>
Enzime: nix-shell --pure will closely emulate that context
graphene has quit [Remote host closed the connection]
<disasm>
just switched to unbound for my internal dns recursor. Got 99% of it working, but for some reason, it won't respond to queries destined for an ipv6 address (locally and remotely in the lan) netstat -an shows ::1:53 (udp and tcp) in the list. tcpdump shows the dns queries coming in. ip6tables shows it's allowed. Logs show nothing, even at verbosity 4. ssh and ping work fine with ipv6 in the LAN, so I'm
erickomoto has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
pikajude has quit [Remote host closed the connection]
pikajude has joined #nixos
erickomoto has joined #nixos
<sphalerite>
iqubic: you've been using nix for about half a year now as far as I remember. I don't think it's unreasonable to expect you to be able to read a manpage for yourself at this point.
simukis has joined #nixos
<iqubic>
sphalerite: I am reading the man pages.
<iqubic>
What I don't get is why all the examples shown in "man nix-build" are written like: nix-build '<nixpkgs>' ...
<iqubic>
like why do you need to put <nixpkgs> into the command?
<clever>
iqubic: that tells it to load nixpkgs from $NIX_PATH
<clever>
if you dont specify a file, then it reads default.nix from the current dir
<iqubic>
But that's not mentioned anywhere in the man page for nix-build is it?
sbdchd has joined #nixos
<iqubic>
sphalerite: I started with 17.09 as my first NixOS version.
<cocreature>
“If no paths are specified, then nix-build will use default.nix in the current directory, if it exists.”
<clever>
If no paths are specified, then nix-build will use default.nix in the current directory, if it exists.
<iqubic>
Well, that explains it.
<iqubic>
But the man page doesn't give the format for the '<nixpkgs>' path, so it's a bit confusing.
<clever>
iqubic: its exactly the same as <nixpkgs> within nix expressions
joepie91 has quit [Remote host closed the connection]
<clever>
-I path
<clever>
Add a path to the Nix expression search path. This option may be given multiple times. See the NIX_PATH environment variable for information on the semantics of the Nix search path. Paths added through -I take precedence over NIX_PATH.
joepie91___ has joined #nixos
joepie91___ has quit [Changing host]
joepie91___ has joined #nixos
<clever>
iqubic: NIX_PATH is also described in the nix-build man page
<iqubic>
I actually never learned what the with expression does. I should figure that out. LOL.
joepie91___ is now known as joepie91
sbdchd has quit [Ping timeout: 264 seconds]
<iqubic>
Not sure how helpful this will be, but I want to read it anyways.
drakonis has quit [Read error: Connection reset by peer]
andymandias has joined #nixos
<iqubic>
So instead of writting "inherit foo" you could write "foo = foo", right?
betaboon has joined #nixos
<sphalerite>
iqubic: yes
palo has quit [Ping timeout: 248 seconds]
<betaboon>
hello #nixos, after seeing nicolas pierrons talk on overlays i am trying to cleanup my overlays. i heard him say "overlays should not be recursive". but the nixpkgs manual (9.11.3.8) on "overriding python packages using overlays" does exactly that. for reference: https://blog.flyingcircus.io/2017/11/07/nixos-the-dos-and-donts-of-nixpkgs-overlays/
<srk>
betaboon: I would say recursive is not about 'rec' in that case but the recursive import
<iqubic>
I don't understand overlays at all. They are just some big giant black box for me.
graphene has quit [Remote host closed the connection]
<iqubic>
Though I can't say that I've ever needed to modify a package in nixpkgs yet.
<srhb>
iqubic: Nor add another one? :)
<cocreature>
srk: the blogpost is pretty explicit in discouraging "rec" and suggests to use "self" instead
graphene has joined #nixos
b has quit [Ping timeout: 276 seconds]
<srk>
cocreature: ah, ok, what's the reason tho?
<iqubic>
cocreature: How long have you been using nix for? I feel like I've only ever seen you in #haskell.
<srk>
hehe, same :)
<cocreature>
iqubic: I’ve used nix for a bit less than a year and nixos for a few weeks
<iqubic>
Oh, I see.
<betaboon>
iqubic: i maintain all my custom/private packages in overlays. or packages that i backport from nixpkgs-unstable to my deployments. overlays removes the need to maintain a nixpkgs-fork in that case. which i found is quite an improvement
<cocreature>
srk: because you probably want to refer to the final value not the one that ytou are producing atm
<iqubic>
I have no idea how one adds a package using an overlay.
<srhb>
iqubic: Essentially it's just a function that produces an attrset of packages, so... self: super: { newpackage = ... }
<joepie91>
iqubic: hmm... you can sort of think of overlays, conceptually, as `for (overlay in overlays) { packageSet = overlay(packageSet) }`
<joepie91>
(JS pseudocode)
<betaboon>
iqubic: the summary of nicolas talk that i posted is quite usefull
<srhb>
(Where self is pkgs as the result of your overlay, and super is the result without your overlay)
<joepie91>
er, sorry, one sec
<iqubic>
I'd just build the package with nix-build and a default.nix and then "nix-env -i ./result" to install.
<srhb>
iqubic: Works too... It gets a little easier with overlays once you want to cross-refer without installing :)
<iqubic>
Why is an overlay better than that method?
<joepie91>
iqubic: `for (overlay in overlays) { Object.assign(packageSet, overlay(packageSet)) }`
<joepie91>
that's the right one :P
<iqubic>
srhb: What do you mean by cross-assign?
<betaboon>
srhb: your self/super explanation seems like quite the over-simplification XD
<cocreature>
joepie91: now do knot-tying in js :)
<srhb>
iqubic: For instance, I don't use nix-env much, but I use nix-shell all the time. Many of my projects want to refer to customPackage
<srhb>
betaboon: It's... Pretty cloes :)
<betaboon>
srhb: yeah :D
<iqubic>
I see. How do you do that? "let customPackage = import ./something; in {}"?
<srhb>
iqubic: By being able to refer to pkgs.customPackage everywhere without doing anything but importing nixpkgs (eg { pkgs ? import <nixpkgs> }: ... ) which picks up my overlay
<srhb>
iqubic: No, it's in pkgs as a result of the overlay :)
<srhb>
iqubic: So it gets all the benefits of being a first-class nixpkgs citizen.
<joepie91>
cocreature: you're going to have to tell me what that is first :)
<iqubic>
where do you put that overlay to make nixpkgs see it?
<iqubic>
I wish there was more literature online about Nix/NixOS.
<adisbladis[m]>
sphalerite: Actually packageOverrides could probably trivially be reimplemented as an overlay
<iqubic>
How is that?
<sphalerite>
adisbladis[m]: it's *already* implemented as an overlay ;)
<sphalerite>
adisbladis[m]: and nbp also commented that on the issue
<adisbladis[m]>
The moar you know :D
<adisbladis[m]>
I didn't have a proper look of that
erickomoto has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<adisbladis[m]>
iqubic: Anyway. Just ignore packageOverrides and forget that it exists. It might not exist that much longer.
<iqubic>
Alright, I will.
<iqubic>
What does callPackage do?
<adisbladis[m]>
iqubic: It calls a package?
<adisbladis[m]>
And injects any missing dependencies
<iqubic>
I see.
<adisbladis[m]>
Let's say your function that returns the derivation takes `pythonPackages`. You would now need to _always_ pass `pythonPackages` to that function.
<adisbladis[m]>
`callPackage` injects that from the top-level package attribute set
wangoe has joined #nixos
adam-6520493 has quit [Ping timeout: 240 seconds]
adam-6520493 has joined #nixos
<LnL>
yeah, pkgs.callPackage ({ stdenv, hello }: ...) {}; inspects the function and calls it with pkgs.stdenv and pkgs.hello
jperras has joined #nixos
<LnL>
the extra argument is for things that should not come from pkgs or arguments that are not in there
<betaboon>
how do people go on about nixops and continuous integration?i want to automatically deploy on commits on a specific branch. any ideas/pointers/hints ?
<betaboon>
srk: how would you do the "nixos-rebuild switch" part? + i should go into more detail: i have a repo with my nixops-deployment. and i want to deploy on commits on that repo. including adding of new nodes stc.
<betaboon>
srk: ah yeah. thats not realy what i want.
<srk>
I see
<srk>
do you run nixops?
<betaboon>
i dont just want to have my packages build automatically and then "at-some-point" update all machines to those new packages.
<betaboon>
i want to on-push deploy a whole nixops-network
<srk>
in case of nixops you can use hydra to build your whole deployment
<betaboon>
any pointers on that ?
<srk>
hmm
<adisbladis[m]>
You could also just build your deployment locally
graphene has quit [Remote host closed the connection]
<adisbladis[m]>
And let nixops take care of the rest through nix-copy-closure
<adisbladis[m]>
Most of my nixops deployments are actually hooking into the nixos (qemu) testing tooling to test the whole deployment before anything is actually deployed
<clever>
srk: this adds a custom dump command to nixos, to generate 2 .nix files
<clever>
srk: which then let you eval the cluster with normal nix tools, and skip the python
<srk>
clever: like I know python very well but it still feels faster to strace | grep exec
<clever>
srk: the problem is redoing all of the quotations on the args
<clever>
this sub-command spits out a pair of nix files that deal with the args for you
manny has quit [Client Quit]
<srk>
handy. I've tried a PoC of nixops in haskell few months ago, wanted to try hnix and how would such app structure in haskell https://lpaste.net/5117496903763755008
<srk>
might resume it one day
<betaboon>
I'm somewhat curious on the nixops-teraform-provider discussion
<{^_^}>
[nixpkgs] @numinit opened pull request #43562 → xpra.xf86videodummy: init at 0.3.8 → https://git.io/fNYka
<clever>
betaboon: i prefer just using nixops directly
manny has joined #nixos
<betaboon>
clever: yeah i want to stick to using it directly. but i don
<betaboon>
* don't want to have to deploy on every commit on every service my development-team creates.
<betaboon>
i would like to have that automated to some extent
<clever>
betaboon: i try to avoid continous deployment, it tends to break things
<betaboon>
clever: i have seperate dev/stage/prod instances
<srk>
if you have staging infra it's nice
<clever>
it can also be important that the staging infra matches the production one
<clever>
and wiping it and starting over makes it not match up
<clever>
some bugs only happen if the cluster has several months worth of state
andreabedini has joined #nixos
<srk>
indeed
<clever>
and if you auto-deploy to staging constantly, you risk causing permanent damage to it
iqubic has quit [Read error: Connection reset by peer]
<betaboon>
for now i want to auto-deploy to dev-instance constantly.
<betaboon>
its just that our team is growing and i spend to much time just deploying.
<clever>
teach the devs how to deploy their changes?
<betaboon>
not as in "it takes to much time" but as in "to much of _my_ time is spent"
<juhe>
Hi, when trying to build curaengine from unstable, I'm getting "FileNotFoundError: [Errno 2] No such file or directory: 'setup.py'"... Any idea how to resolve this?
<butchery>
does slic3r work for anyone else? I'm getting gtk warnings and then a segfault
<{^_^}>
[nixpkgs] @vcunat pushed 2 commits to release-18.03: https://git.io/fNYLl
ajs124 has joined #nixos
spear2 has quit [Read error: Connection reset by peer]
<LnL>
was it used in a raid at some point in time?
<manveru>
possibly... i didn't create the partitioning
mariatsji has joined #nixos
<LnL>
maybe the superblock wasn't cleared
<LnL>
or whatever that's called
<manveru>
i see the device after i run gparted and ignoring like 10 warnings about it being unable to read the /dev/md126
<manveru>
maybe it was created alongside a lot of other disks in a raid1
<manveru>
i'll see if i can maybe fix it on a win machine
sbdchd has joined #nixos
<LnL>
try mdadm --zero-superblock, not sure if that might mess with existing data tho
ixxie has joined #nixos
sbdchd has quit [Ping timeout: 260 seconds]
Thra11 has quit [Ping timeout: 260 seconds]
dramforever has joined #nixos
mariatsji has quit [Remote host closed the connection]
jensens has quit [Ping timeout: 248 seconds]
<dramforever>
Hi! Just starting out... is there an equivalent of 'build-essentials' for nix?
<dramforever>
I just installed gcc and found that it didn't bring ld with it, and then got binutils but still missing crt1.o, then I got to think 'wait... there has to be a proper way to do this'
<sphalerite>
dramforever: stdenv
<gchristensen>
*but don't install it
<sphalerite>
dramforever: you don't install compilers and libraries
andreabedini has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<manveru>
LnL: looked at it under windows, but no indication of a raid there
<manveru>
so strange
rk has joined #nixos
andreabedini has joined #nixos
<manveru>
i think i'll just get another 8tb disk, copy the stuff over, and format it properly, for now it's too risky to mess with the data
<manveru>
thanks for the help tho :)
<clever>
thats what id do too
<manveru>
and then i can make another RAID :D
<rk>
Hi. I have a problem with NixOS: I would like to use the (newer) nixpkgs-version instead of the nixos-version of a webserver (lighttpd). How can I do this in configuration.nix?
<adisbladis[m]>
rk: Many NixOS modules provide a `package` attribute. If they don't you can always override your lighttpd version using an overlay
ajs124 has left #nixos [#nixos]
<ben>
I think I'd first try to use nixpkgs for the whole system
<{^_^}>
[nixpkgs] @dotlambda pushed commit from @timokau to staging « pythonPackages.cvxopt: re-enable tests (#43566) »: https://git.io/fNYYw
<rk>
@clever: Thanks, I'll test this now. Is there any good documentation for this?
<clever>
rk: the nixpkgs manual
jperras has joined #nixos
<gchristensen>
anyone using Xen on NixOS? I'd love a "xen config for dummies" :D
<clever>
gchristensen: i have gotten it to work before a few years ago, but i dont remember where i left the config right now
<rk>
@clever. Hmm, even after reading the nixpkgs manual, I would not know how to write it...
<gchristensen>
aye :)
jperras has quit [Ping timeout: 265 seconds]
<rk>
@clever: Thanks very much, it worked here. =)
<disasm>
If I have attrsOf submodule, how can I set an attr inside the submodule to the key of the attribute? for example `services.myservice.configs."foo".stateFileName` should default the the value of "foo".
<disasm>
s/the the/to the
<rk>
(at least after manually adding the nixpkgs-unstable-channel: "nix-channel --add https://nixos.org/channels/nixpkgs-unstable nixpkgs-unstable". Is there any way to add the channel in configuration.nix?
nuncanada has joined #nixos
nuncanada has quit [Remote host closed the connection]
<clever>
rk: after you nix-channel --update, you can refer to it as <nixpkgs.unstable>
<{^_^}>
[nixpkgs] @Izorkin opened pull request #43568 → percona-toolkit: init at 3.0.11 → https://git.io/fNYOG
iMatejC has quit [Remote host closed the connection]
iMatejC has joined #nixos
iMatejC has quit [Remote host closed the connection]
<juhe>
Can I somehow "nix show-derivation" with applied overlays from /etc/nixos/configuration.nix ? It seems that "nix show-derivation nixpkgs.<something>" doesn't take the configuration into account.
sc_ has quit [Quit: leaving]
iMatejC has joined #nixos
sc_ has joined #nixos
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
aarvar has quit [Ping timeout: 264 seconds]
Neo-- has joined #nixos
vcunat has quit [Ping timeout: 240 seconds]
<sphalerite>
juhe: I think `nix show-derivation -f '<nixpkgs/nixos>' pkgs.<something>` should do the trick
<sphalerite>
a bit of a mouthful but yeah
sbdchd has joined #nixos
jtojnar has quit [Remote host closed the connection]
{^_^} has quit [Remote host closed the connection]
{^_^} has joined #nixos
{^_^} has quit [Changing host]
{^_^} has joined #nixos
coot_ has quit [Quit: coot_]
User__ has joined #nixos
User__ has quit [Remote host closed the connection]
w17t has joined #nixos
<juhe>
sphalerite: thanks! It works nicely. I found a much uglier workaround with nix-repl, but your suggestion is definitely less writing than with nix-repl thing
jtojnar has quit [Read error: Connection reset by peer]
jensens has joined #nixos
jtojnar has joined #nixos
<sphalerite>
\o/
dramforever has quit [Quit: Page closed]
<tobiasBora>
Hello!
<tobiasBora>
Wanted to know, when I'm setting up a new service, it takes lot's of time because I try to find the good configuration, and when I modify a single line in the configuration, I need to run nixos-rebuild --fast switch, and this takes something like 1mn to finish, even if I just edit a single line.
<tobiasBora>
What is the good practice to avoid this lose of time?
<sphalerite>
hm, I don't think it should take that long really
<sphalerite>
are you running off an HDD?
<tobiasBora>
sphalerite: Well, I'm running it on a raspberry pi, 700Mhz, 4cores, and the "hard drive" is a SD card class 10
<sphalerite>
aaah that would explain it :/
<sphalerite>
unfortunately nixos isn't the speediest of things, and does tend to take that long on such weak hardware :/
ambro718 has quit [Quit: Konversation terminated!]
<sphalerite>
if you have a more powerful machine available, you might want to test configs on there using nixos-rebuild build-vm
derped has joined #nixos
lonokhov has joined #nixos
pie__ has quit [Ping timeout: 260 seconds]
derped has quit [Client Quit]
w17t has quit [Quit: Leaving]
<tobiasBora>
if my more powerful machine is a non-nixos machine, can I do something?
w17t has joined #nixos
<sphalerite>
if it's a linux machine with nix, yes
jperras has joined #nixos
derped has joined #nixos
jperras has quit [Ping timeout: 260 seconds]
<tobiasBora>
ok thank you sphalerite. The only problem I see with that is that if I configure all my server using the domain name "mydomain.com", then when I'll deploy it to the VM the vm won't have this domain. Do you know what is the good way to fake a DNS on the vm?
ajs124 has joined #nixos
<sphalerite>
easiest option I guess would be to use a real DNS for it
joshua__ has joined #nixos
humanoyd has joined #nixos
<tobiasBora>
sphalerite: you mean having two configurations, one for the VM and one for the rasp, with different domains, and reserve a subdomain of my main DNS name to the test? The problem with this method is that I may move with my laptop, so my ip is not fixed...
<joshua__>
Hey, I am trying to create a nix package (from a cmake project), but I'm having issues getting nix to add the $out/bin directory into the PATH when I enter nix-shell, same with PYTHONPATH
<joshua__>
What am I missing?
Mic92 has joined #nixos
<sphalerite>
tobiasBora: you could just give it some local IP address that won't be publicly accessible but will work for tyring stuff out, asl ong as you don't need to use letsencrypt or something
<sphalerite>
tobiasBora: or you could deal with the slowness, or try and work out what's going slowly (my guess would be evaluation) and improve that
<tobiasBora>
sphalerite: hum, local ip looks a good idea.
hxrts_ has joined #nixos
<sphalerite>
my best guess at what's slow would be nixos evaluation
pie__ has joined #nixos
<sphalerite>
you could probably improve that by disabling a bunch of modules you're not using
<{^_^}>
[nixpkgs] @alexeymuranov opened pull request #43569 → [18.03] gnome3.geary: 0.12.2 → 0.12.3 (cherry-picked from master) → https://git.io/fNYZ8
sir_guy_carleton has joined #nixos
<tobiasBora>
sphalerite: I think someone mention that a while ago... But it means that I should have a local fork of nixpkgs, where I manually comment the lines of the modules I don't use?
<sphalerite>
nope
monotux has joined #nixos
<sphalerite>
there's some way to disable modules
<Enzime>
what's the best phase to set NIX_CFLAGS_COMPILE/NIX_LDFLAGS?
ixxie has joined #nixos
<monotux>
hmm....silly question. I'd like to use an ACME certificate for another service than HTTP, but how do I specify the path to this certificate in my configuration.nix without hardcoding it to a path in /nix? I'm guessing that this is a pretty common usage pattern but I didn't find anything upon a googling
<monotux>
as of now the certificates are fetched using a nginx virtual host definition, but on a normal linux system these files should end up in some path like /etc/acme
<sphalerite>
monotux: /var/lib/acme
axel_parolta has joined #nixos
<monotux>
ooooh that simple! thanks sphalerite!
<axel_parolta>
I have nixos as a virtualbox host and I'm trying to use the extension pack for the USB support. I enabled the extension pack in my nix config and it built all it needed. However, when I launch virtualbox it says that the extension pack is not installed. Anyone have a though on that? I also tried installing the extension pack from virtualbox directly but didn't work neither.
<axel_parolta>
Is there any magic required for that to work that ain't documented?
<{^_^}>
[nixpkgs] @jtojnar pushed to master « gnome3.totem: disable vala plug-ins again »: https://git.io/fNYZH
shad has joined #nixos
alexteves has joined #nixos
<joshua__>
Can anyone tell me how to get a package to add the $out/bin into the PATH variable?
cryp7nix has joined #nixos
<Enzime>
joshua__: if you're installing the package it'll be added to the PATH variable automatically
<joshua__>
When I enter a nix-shell in the directory with my default.nix file, that doesn't happen.
<{^_^}>
[nixpkgs] @dotlambda pushed commit from @bhipple to master « pythonPackages.aws-adfs: init at 0.12.0 (#43458) »: https://git.io/fNYnM
<monotux>
sphalerite, the certs are owned by nginx. any tips on how to reliably access them from another user? I'd like to avoid adding mosquitto to the nginx group or similar...
<{^_^}>
[hydra] @Ma27 opened pull request #574 → Improve dev env → https://git.io/fNYcU
iqubic has quit [Ping timeout: 276 seconds]
<juhe>
Is it possible to extend nixpkgs.pkgs with a derivation libfoo defined in configuration.nix (or close to that file), so that other derivation, not coming from configuration.nix, but a derivation coming from nixpkgs.pkgs can take it as dependency? The "nixpkgs.pkgs = pkgs // { libfoo = lib.callPackage libfoo.nix {}; };" ended with "infinite recursion encountered, at undefined position"... :'-(
<sphalerite>
that's how I use an LE cert for mumble
wangoe has quit [Ping timeout: 240 seconds]
<infinisil>
sphalerite: Oh, so you set another cert attribute, but with the same domain, so the domain only gets created once, but linked to both dirs?
<sphalerite>
tobiasBora: yeah it's a bit of a pain but it should hopefully improve eval time
<juhe>
{^_^}, infinisil: will check it, I use overlays to override package derivations themselves, somehow didn't realize that it could serve also for extending the list of available packages, hmm
<sphalerite>
tobiasBora: to test only evaluation, you can run `time nix-instantiate '<nixpkgs/nixos>' -A system`
wangoe has joined #nixos
<sphalerite>
infinisil: another cert attribute..?
<infinisil>
Ah never mind, I don't really get it
cryp7nix has quit [Quit: leaving]
<sphalerite>
infinisil: nginx is configured to serve up /var/lib/acme-challenge because I'm using enableACME as well on the same server
<sphalerite>
oh right I see what you mean
<sphalerite>
yep. Although I could also just use the same cert for nginx and for mumble
<infinisil>
So you're not using the same cert?
<sphalerite>
nope
cxkzm has joined #nixos
iqubic` is now known as iqubic
axel_parolta has quit [Ping timeout: 240 seconds]
Thra11 has joined #nixos
obadz has quit [Ping timeout: 244 seconds]
obadz has joined #nixos
<{^_^}>
[hydra] @Ma27 opened pull request #575 → jobset view: jump back to the proper tab when displaying all failed jobsets → https://git.io/fNYcN
<tobiasBora>
sphalerite: it gives 38s. Will try to disable some modules
<sphalerite>
hm interesting, lots of builds seem to be failing with sandboxing disabled
<buckley310>
what packages does gcc need to compile 32-bit? (gcc -m32)
<sphalerite>
on ARM
<sphalerite>
buckley310: you'd probably want to use i686Packages instead of the normal stdenv
vasiliy_san has quit [Quit: Connection closed for inactivity]
<sphalerite>
um… why might nix be building in /run/user/0 rather than /tmp?
<Dezgeg>
that's your TMPDIR as root
<monotux>
sphalerite, thanks, I'll have a look
<buckley310>
is that environment.i686Packages? i cant find much on google
<sphalerite>
buckley310: my bad, got the name a bit wrong
<sphalerite>
buckley310: but just use pkgsi686Linux.callPackage instead of regular callPackage
<sphalerite>
ummmmm shouldn't setting NIX_REMOTE=daemon have the same effect as passing `--store daemon`?
<tobiasBora>
sphalerite: if I disable a service that I need, like the firewall, I'll just get an error or I just won't have any firewall anymore?
<sphalerite>
NIX_REMOTE=daemon works, while passing --store daemon causes error: null pointer cast to ref \n error: unexpected EOF reading a line
<sphalerite>
tobiasBora: if you set options defined by the module, you'll get errors
<sphalerite>
if you're relying entirely on the default config, you just won't get firewall
<tobiasBora>
hum, that's a bit scrary ^^' How can I make sure that I don't disable default stuff?
<sphalerite>
well that's the thing. Everything is on by default :p
<sphalerite>
so you're disabling default stuff either way
<tobiasBora>
How can everything be on by default? For example I don't have docker installed, so how can ./virtualisation/containers.nix be usefull?
<sphalerite>
it's not. But it's still evaluated.
<sphalerite>
also I don't think virtualisation/containers.nix is docker, it should be nixos containers
<tobiasBora>
yeah, I copied the wrong line
<tobiasBora>
Hum... I tried to disable quite a bit portion, and it does not change the time from 38.8s to 38.6...
<tobiasBora>
big*
<sphalerite>
hm that's weird
sbdchd has quit [Remote host closed the connection]
sbdchd has joined #nixos
<sphalerite>
if you try setting one of the options defined by those modules, does it error?
<sphalerite>
it might be that you got the paths wrong for disabling them. disabledModules is a weird mechanism
alex`` has joined #nixos
sbdchd has quit [Remote host closed the connection]
<sphalerite>
definitely not getting a rice cooker before moving, too much space taken for too specialised a piece of equipment in a small kitchen :p
<Enzime>
"The trademark "Zojirushi", "the elephant logo", "Air Pot" and other trademarks belong to Zojirushi Corporation and are registered trademarks. The trademark "Brew-Thru", "Gravity Pot", "Neuro Fuzzy", "Gourmet d'Expert", "Gourmet Sizzler", "Home Bakery Supreme", "Panorama Window", "UltraSlim", "Mr. Bento", "Ms. Bento", "Classic Bento", "Zutto”, "Rizo" and other trademarks belong to Zojirushi America
<Enzime>
Corporation and are registered trademarks."
wavewave has quit [Quit: Connection closed for inactivity]
<hyper_ch>
Enzime: you have a rice cooker?
<Enzime>
hyper_ch: I have a Tiger rice cooker
<hyper_ch>
I read about them also
<hyper_ch>
also japanese
<hyper_ch>
various people told me that japenese rice cookers are the best, then followed by south korean ones
obadz has joined #nixos
<tobiasBora>
sphalerite: it seems that the modules are not taken into account: ./services/networking/firewall.nix ==> networking.firewall.allowedUDPPorts = [ port ]; ===> no error
mariatsji has joined #nixos
<hyper_ch>
so, I'm off now anyway... need to continue with kdrama
rihards has joined #nixos
<Enzime>
hyper_ch: which kdrama?
<hyper_ch>
Enzime: currently Live Up to Your Name, Dr. Heo
<juhe>
Hm, how can I append a library path to binary's RPATH (RUNPATH?) ? The libngspice used by kicad's eeschema binary (if compiled with ngspice support) is not in RUNPATH nor mentioned in NEEDED elf entries. This causes crash. The ngspice simulation works if kicad is started with LD_LIBRARY_PATH containing the path to proper libngspice.so library though.
<Enzime>
haven't heard of that one
<Enzime>
hyper_ch: you should check out (Call Me) Mother
<hyper_ch>
Enzime: before that it was Romantic Doctor, Teacher Kim and the one before was Yi San
jperras has joined #nixos
<Enzime>
I've been slowly watching it, it's so good
<Enzime>
based off an award-winning Japanese show (also called Mother)
<hyper_ch>
Enzime: is it still going on or finished?
<joepie91>
Enzime: hyper_ch: this discussion should probably go to #nixos-chat :)
<sphalerite>
manveru: you wanted to know about this iirc? ^
<tobiasBora>
sphalerite: ohhhh it's going to be crazy to find the good set of modules, because they seems to be interdependent: The option `warnings' defined in `/nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/services/x11/window-managers/i3.nix' does not exist.
graphene has quit [Remote host closed the connection]
<sphalerite>
tobiasBora: yeah it's not much fun to use, but it can improve eval time significantly :/
graphene has joined #nixos
<tobiasBora>
Hum... I'm not sure to understand what's wrong with i3... I never installed it, and I tried to add "services/x11/window-managers/i3.nix" in the list, but still the same error
<sphalerite>
huh, disabling it should fix it I think… :/
<Enzime>
tobiasBora: what list?
<tobiasBora>
Enzime: the list of disabledModules
<Mic92>
sphalerite: I recently saw your nickname as a material in a exposition of the Harvard museum. Is this the origin of the name?
<sphalerite>
Mic92: yes, my nickname is a rock :p
grumble1 has joined #nixos
grumble has quit [Read error: Connection reset by peer]
grumble1 is now known as grumbe
grumbe is now known as grumble
init_6 has quit [Ping timeout: 264 seconds]
<tobiasBora>
sphalerite: my file begins with disabledModules = ["services/x11/window-managers/i3.nix" ... ], shouldn't it be enough to disable i3.nix?
<{^_^}>
[nixpkgs] @expipiplus1 opened pull request #43572 → dRonin: init at 2018-06-30. breakpad: init at 2018-07-06 → https://git.io/fNYlK
<sphalerite>
I think so, not sure why this wouldn't work
<sphalerite>
tobiasBora: oooh it's because it doesn't get used directly I think
<sphalerite>
unless you actually want to use xserver of course
<tobiasBora>
already disaled
<sphalerite>
oh hm :/
<tobiasBora>
I think I'll comment everything, and uncomment block by block
<tobiasBora>
it would be great to have a list of module that we can uncomment without troubles
mariatsji has quit [Remote host closed the connection]
sbdchd has joined #nixos
<sphalerite>
yeah it's a pain
mariatsji has joined #nixos
<sphalerite>
or to, you know, not have all the modules enabled by default…
<tobiasBora>
true
<sphalerite>
only reason I know of to have them all on by default is for the generation of the manual with all the options in it
<alphor>
how's the nix ecosystem for rust on a scale of 1 = java, 10 = python?
<tobiasBora>
uuu it's gonna to be long. For 70% of the services I try to disable I have an error
<alphor>
maybe where scale isn't health of ecosystem, but ability to package apps easily.
mariatsji has quit [Ping timeout: 264 seconds]
<sir_guy_carleton>
alphor: with 10 being the best, i assume?
<alphor>
sir_guy_carleton: yep, I'd guess haskell is better, but I'm not familiar with just how much better
sbdchd has quit [Ping timeout: 248 seconds]
<alphor>
really just looking for >= 6, I've packaged maven apps in nix before but it was just compiling a shadow jar (all transitive dependencies) locally with gradle. That's not at all satisfying
<alphor>
and using nixos to do system stuff like firewall, data dir management, systemd services (which is great). But ideally I'd like to be able to have nix own the whole chain from source to deploy
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
<tobiasBora>
sphalerite: Hum... Is it suppose to make me recompile the whole binary cache??? Because I disabled only a few programs, and now it tries to recompile stuff:
<tobiasBora>
building '/nix/store/rpl4n6l4dimmy2pg4dfgs6fwzqcn6hh2-manual-olinkdb.drv'...
trylist has joined #nixos
<tilpner>
alphor - carnix is okay when it works
<tilpner>
And there's buildRustPackage to fall back on, which is terrible for development but can work for just deployment
dmc has quit [Ping timeout: 244 seconds]
<sphalerite>
tobiasBora: yeah it will need to rebuild the manual
<sphalerite>
unless you disablr that too
worldofpeace has quit [Quit: worldofpeace]
worldofpeace has joined #nixos
ixxie has joined #nixos
dmc has joined #nixos
cxkzm has quit [Quit: WeeChat 2.0]
jperras has joined #nixos
sbdchd has joined #nixos
<tobiasBora>
only the first time, or each time I install a new package I'll need to build the manual?
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
<monotux>
sphalerite, sorry for interrupting you all the time. but in the murmur nix-file you linked earlier, do you know if that preStart is run as the user in question or run as root? I'm guessing that it's run as the current user, as it seems that it fails to change permissions for me before starting the service
worldofpeace_ has joined #nixos
<tilpner>
tobiasBora - You could services.nixosManual.enable = false; if you don't use it much. Or install a static copy of it
<manveru>
Mic92: yo :)
<tilpner>
tobiasBora - Though I've found manually curating a set of modules to be too brittle and not worth the effort for a single system :/
<alphor>
tilpner: thanks! lukewarm support is good enough to try it out.
erickomoto has joined #nixos
<tobiasBora>
tilpner: so I don't have any way to avoid to spend 1mn between each configuration test??
<tilpner>
tobiasBora - That's not what I said. You can, but you can't also have an always-up-to-date manpage of your current option set
dnovosel has quit [Ping timeout: 265 seconds]
jperras has quit [Ping timeout: 256 seconds]
agander has quit [Ping timeout: 244 seconds]
agander_ has joined #nixos
agander_ is now known as agander
worldofpeace_ has quit [Client Quit]
<tobiasBora>
Hum... I'm thinking, the long part is to load all the files right? Why wouldn't it be possible to run a kind of daemon that loads it once?
agander has quit [Client Quit]
agander_ has joined #nixos
<tobiasBora>
tilpner: ok... So maybe I'll disable manpages
agander_ has quit [Client Quit]
agander has joined #nixos
fenedor has joined #nixos
sbdchd has quit [Remote host closed the connection]
erickomoto has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<nh2>
teto1: with https://github.com/NixOS/nixops/pull/922 I get the issue that it prints some IPv6 address and then SSH says "Invalid -J argument", have you seen that before?
<samueldr>
I now wonder the difference between .hosts and .extraHosts
<philippD>
the one is a dict the other a list of strings?
imalison has quit [Remote host closed the connection]
<samueldr>
ah! .extraHosts is verbatim, .hosts is a list yeah
<samueldr>
s/list/attrset/
<disasm>
although, my preference as late is to use `networking.dnsmasq.extraConfig` to define hosts and internal dns servers for specific domains. Then just set dns to localhost and you have a dns server replacement for /etc/hosts :)
<manveru>
i should set that up...
<philippD>
samueldr, disams: thanks I'll use `networking.hosts`, dnsmasq seems a litte overkill for one entry ;)
Tehnix has quit [Remote host closed the connection]
<disasm>
manveru: if you want to see some example of how I currently have my home network setup, github.com/disassembler/nixos-configurations for my systems not nixops and github.com/disassembler/network for my nixops/nix-darwin controlled machines
stepcut has quit [Remote host closed the connection]
<manveru>
thanks man :)
<{^_^}>
[nixpkgs] @k0ral opened pull request #43579 → st: add derivation flags to enable some official patches → https://git.io/fNYBS
stepcut has joined #nixos
<disasm>
most recently I swapped out powerdns/pgsql backend for nsd/unbound for a declarative dns deployment.
<disasm>
so now to add records, all I do is edit my config and nixops deploy :)
<{^_^}>
[nixpkgs] @fpletz pushed commit from @Izorkin to master « nginxModules.sla: init at 7778f01 »: https://git.io/fNYEj
<hodapp>
so, guess I must go dive into this build again and get it building Python 3.x bindings, but boost is involved, so... ewww.
`_ has quit [Quit: WeeChat 2.1]
hxrts__ has joined #nixos
<sphalerite>
disasm: what trouble are you having with the ssh binary cache?
<tobiasBora>
gchristensen: and do you know why even when I disable it, as soon as it calls a module, I can't disable this module?
<gchristensen>
I don't understand
<fresheyeball>
disasm: any luck?
cxkzm has quit [Quit: WeeChat 2.0]
<tobiasBora>
gchristensen: Well I'm disabling some modules to same rebuild time. Usually, when I see "The option XXX defined in YYY does not exist", I disable the package YYY, and it works. However, as soon as the package is "rename.nix", even if I disable it I keep having this error.
<sphalerite>
disasm: oh yeah I remember having lots of weird trouble with it myself actually. I think I ended up just running `nix copy --all --from ssh-ng://bob@192.168.99.13 --to file:///home/linus/arm-binary-cache` in a loop on a server with a bunch of space
<sphalerite>
where arm-binary-cache is served up via http
<sphalerite>
and using that as a binary cache. Because of how badly ssh binary caches seem to work.
halfbit has quit [Ping timeout: 256 seconds]
moet has joined #nixos
hxrts__ has quit [Ping timeout: 260 seconds]
moet has quit [Client Quit]
<hodapp>
I keep forgetting I have cachix set up
<shapr>
I'm trying to run gRPC-haskell on debian9 with nix as the package manager, I ran "nix-shell release.nix -A grpc-haskell.env" and some packages were not downloaded from the store, is there another way to fetch those packages?
jmeredith has quit [Quit: Connection closed for inactivity]
<benley>
anyone happen to know if/where git-credential-libsecret can be found in nixos?
<shapr>
I got four lines, here's one: Warning: haddock-interfaces: /nix/store/y88jdscmbsniingbyw3mcsa0dgpahnaj-swagger2-2.1.6/share/doc/x86_64-linux-ghc-8.0.2/swagger2-2.1.6/html/swagger2.haddock doesn't exist or isn't a file
<benley>
or if there's a better git credential helper I should use?
<shapr>
er, four lines of errors, any idea how to fix that?
sir_guy_carleton has joined #nixos
<infinisil>
,locate git-credential-libsecret
<{^_^}>
Found in packages: git
<shapr>
re-running the command doesn't do anything
<tobiasBora>
sphalerite: Ok, so by removing most modules, I divided by 1.7 the time to deploy: before it was 50s, now it's 29s. Still not perfect, but better. Thanks!
<tobiasBora>
By the way, how long is a rebuild on a decent computer?
iqubic has quit [Remote host closed the connection]
<tobiasBora>
If you have some ideas to still improve it, the time is now around 12s to display the message "trace: warning: You don't have `system.nixos.stateVersion` explicitly set."
<tobiasBora>
and then one more 12s until "activating the configuration"
<gchristensen>
you're doing some deep dark stuff, what is your end goal here?
Mateon3 has joined #nixos
<benley>
infinisil: it appears that the git package, even gitFull, does not actually build the git-credential-libsecret binary (or git-credential-gnome-keychain), but they do include the .c sources for each in the output derivation.
<benley>
I'll just override one of them to build it
<infinisil>
Yeah
<tobiasBora>
gchristensen: just decrease the time of a nixos-rebuild
Mateon1 has quit [Ping timeout: 264 seconds]
Mateon3 is now known as Mateon1
<gchristensen>
huh
<tobiasBora>
it was around 50s before, which is quite long when you just want to change a single line in the conf
<tobiasBora>
no I disabled some modules, and it's 26s, which is a bit better
<andi->
how often do you rebuild for those seconds to matter?
<infinisil>
When I think about it.. a rebuild is the ranges of 20 seconds, often over a minute for me.. And we're living in a century where computers can do billions of calculations per second
<infinisil>
It could potentially be so much better
<MichaelRaskin>
andi-: if you get anything wrong the first time, it doesn't matter that much how often the debug loop with 1-minute wait happens, it is just annoying whenever it happens
* andi-
runs a rebuild with `time`
<andi->
MichaelRaskin: ok, then it is a valid concern :)
<MichaelRaskin>
Just like NixOS VM tests with 1-minute overhead just to start full NixOS are annoying to debug.
<sphalerite>
a no-op rebuild switch takes 1m37 on my high-end laptop o>O
<sphalerite>
tobiasBora: ^
<andi->
noop was just 5s
jtojnar has quit [Read error: Connection reset by peer]
<benley>
my guess would be nixos-rebuild is IO bound, not cpu
trylist has quit [Read error: Connection reset by peer]
<MichaelRaskin>
Not that simple; with warm caches it still takes a lot of time
justbeingglad1 has joined #nixos
<benley>
true.
<sphalerite>
fpletz: hey, can I PM you?
<tobiasBora>
sphalerite: really?? You told be before that 1m was really long for a rebuild switch
<sphalerite>
tobiasBora: yeah I'm confused now
<sphalerite>
I don't know why it takes so long, I don't think it always did
<tobiasBora>
sphalerite: so it means that everytime you want to change the configuration, you need to wait 1m40?
<sphalerite>
I haven't really touched it much besides updates recently, maybe that's why I didn't notice
<YegorTimoshenko[>
how does one enable allowShell in stage-1? is it `boot.kernelParams = [ "allowShell=1" ];`?
<Lisanna>
Ugh, trying to write a Hydra plugin for fetching sources from gerrit, and I haven't used perl in probably 8 years. Could someone look at my code and make sure I'm not doing something stupid?
<{^_^}>
[nixpkgs] @yegortimoshenko pushed 2 commits to master: https://git.io/fNYg5
<Lisanna>
STDERR: Couldn't require Hydra::Plugin::GerritChanges : syntax error at /build/lisanna-hydra-68c3f8a/src/lib/Hydra/Plugin/GerritChanges.pm line 39, near "LWP:"
silver has joined #nixos
<Lisanna>
already run it through a linter and it says it's fine x_x
<YegorTimoshenko[>
might not be valid, but it did work. just would like to make sure that production systems are easy to recover, it's much easier when there's a shell option
jperras has quit [Ping timeout: 260 seconds]
graphene has quit [Remote host closed the connection]
graphene has joined #nixos
<Lisanna>
oh, wow. used "LWP:UserAgent" instead of "LWP::UserAgent"
Thra11 has quit [Ping timeout: 244 seconds]
Thra11 has joined #nixos
<YegorTimoshenko[>
Lisanna: last time i read that file in Hydra i ended up implementing a Nix CI from scratch
<Ankhers>
If I need to make symlinks in mkDerivation, what is considered the best place to do so?
orivej has joined #nixos
<Lisanna>
Ankhers symlinks for what?
sbdchd has quit [Remote host closed the connection]
<Lisanna>
YegorTimoshenko[ really?
<Ankhers>
Lisanna: To my dependencies. The build tool (erlang's rebar3) looks in a very specific place for it's deps.
<Dezgeg>
allowShell won't be parsed by the kernel but by stage-1
<Lisanna>
Ankhers well, hopefully it doesn't use absolute paths for those very specific places
<YegorTimoshenko[>
Ankhers: `postInstall`/`postFixup` (in nixpkgs tree both are used, `postFixup` being probably more common but i may be biased). then, you might get away with `buildEnv` instead, if you want to merge multiple paths into one
<Lisanna>
YegorTimoshenko[ if Ankhers 's builder is the one looking for the deps, won't they need to do it in a preBuild or preConfigure phase?
<drummeur>
hello, I'm having some issues getting my audio set up, if anyone has a minute
<infinisil>
,ask drummeur
<{^_^}>
drummeur: Just ask your question. It's the best way to know if anybody can help.
<drummeur>
I'm using an external sound card (focusrite scarlett 2i2) and I can get it to play sound when I test in the settings panel, but not in web browsers or anything like that
<drummeur>
There isn't any linux anything for my card, but supposedly it's class compliant so it doesn't actually need one
<drummeur>
I'm just kind of at a loss for where to go from there.
aszlig has quit [Quit: Kerneling down for reboot NOW.]
<infinisil>
Which settings panel?
<drummeur>
the system settings in KDE
aszlig has joined #nixos
<infinisil>
Is it using pulseaudio?
<drummeur>
yes
<drummeur>
i have `sound.enable = true; hardware.pulseaudio.enable = true;` in my config file
hxrts_ has quit [Ping timeout: 276 seconds]
Thra11 has quit [Quit: WeeChat 1.4]
<infinisil>
Maybe try asking #pulseaudio, they probably know more about this
<lostman>
hi all. how can I set up per-user path overrides? I'm trying to figure out how to use ~/.nixpkgs/config.nix for that purpose. I just want to add some PATHs
Neo-- has quit [Remote host closed the connection]
<infinisil>
Ankhers: Basically fix transforms a function by giving the result of it as the argument, which allows stuff in an attrset to depend on other stuff in the same attrset
qwerty_asdf has joined #nixos
<Ankhers>
infinisil: Oh okay. So it is only to allow recursion, and not some other magical thing?
<infinisil>
> p (lib.fix (attrs: { foo = 10; bar = attrs.foo + 2; }))
<Mic92>
samueldr: I am currently building the search engine for NUR. Since it is possible to have duplicates across different repos, how this could be handled?
<Mic92>
I do not see how this would be possible with the current format.
<samueldr>
I'm checking a thing
<samueldr>
» $ nix-env -iA nur.repos.mic92.inxi
<samueldr>
always prefix by the repo name, here mic92
<Mic92>
samueldr: ok make sense
<samueldr>
though, (a bit harder to manage) order by the attribute name to the right of the repo name, then by the repo name?
<samueldr>
so you'd get aa.hello, zz.hello, aa.inxi, mic92.inxi, zz.inxi
<samueldr>
(otherwise aa.inxi would have more visibility than zz.inxi, as all zz's packages would be clustered together, and all of aa's would be clustered to the top
<Mic92>
samueldr: the search is sorted by attribute rather then package name?
<samueldr>
without any intention to replace nixpkgs, it's (oversimplified) a way to make overlays more discoverable
<samueldr>
Mic92: putting a copy of the attribute path without it being fully qualified removes guesswork when working with attribute names, if needed
hxrts_ has joined #nixos
<samueldr>
(could be used to wrap nur.repos.<span class="name">mic92</span>.<span class="attr">inxi</span>)
justanotheruser has joined #nixos
<samueldr>
(it's then possible to do something like make the nur.repos prefix lighter, the repo name darker, and the package name bold, if needed)
<Mic92>
samueldr: do you mean something like? { "mic92": { "inxi" : { ... }}
<Mic92>
ah I see
<samueldr>
oh no, the flat map is perfect
<Mic92>
yes, you just want the original name too
<samueldr>
exactly
rprije has joined #nixos
fresheyeball has joined #nixos
`_ has joined #nixos
<fresheyeball>
hey folks
<fresheyeball>
so I have a haskell package that is getting built with callCabal2nix
<fresheyeball>
and the tests dump out some stuff... in a file
<fresheyeball>
I would like that fill to be in the nix-build result
<fresheyeball>
but I don't see how to extend the behavior of callCabal2nix
<Mic92>
samueldr: position can be tricky at times, some packages are just overriden packages from nixpkgs. So it is sometimes from nixpkgs and sometimes original.
<samueldr>
Mic92: possibly remove it in this case?
<Mic92>
in the nixpkgs case?
<samueldr>
if it's safe to guesstimate the position for non-nixpkgs case, maybe?
<samueldr>
though, it's mostly useful if we add links to the repos
<samueldr>
which may be service-dependent
<samueldr>
and in that case, commit id will be needed
jluttine has quit [Ping timeout: 244 seconds]
<Mic92>
so fare there is gitlab/github
hamishmack has joined #nixos
hamishmack has quit [Client Quit]
<Mic92>
commit id is there.
<samueldr>
(though, would be easy enough to add functions per-service and not link for unknown)