<gchristensen> could make a "dummy" oidentd that reads a line over netcat and writes back the line + USERID : UNIX : clever
<clever> gchristensen: then its no better then the ones irc clients implemented, that could basicaly lie :P
<gchristensen> it'll fix the ~ though
<clever> gchristensen: i want one that scans the conntrack table and follows the nat, then relays the reques to the right machine
ambro718 has quit [(Ping timeout: 260 seconds)]
MP2E has quit [(Read error: Connection reset by peer)]
<gchristensen> clever: https://github.com/NixOS/nixpkgs/issues/27758#issuecomment-319248706 expand "Command: nix-instantiate -v -A hello (present)" and then look for"repeated"
MP2E has joined #nixos
<clever> gchristensen: oh, some other processing i often want in nix paths like this
MP2E has quit [(Read error: Connection reset by peer)]
<clever> gchristensen: replace every instance of a given path, with <nixpkgs>, while obeying $NIX_PATH
<clever> so basicaly, undo the path search
<clever> then throw a legend at the top
<gchristensen> heh, yeah,neat
thc202 has quit [(Ping timeout: 248 seconds)]
MP2E has joined #nixos
<gchristensen> clever: maybe a trie
<clever> gchristensen: but also, i would maybe want such an option directly in nix
<clever> just show --show-trace and -v are readable out of the box
<gchristensen> IMO the problem isn't the length of lines, but number
<clever> i think its mostly the repitition
justanotheruser has joined #nixos
slack1256 has joined #nixos
eacameron has joined #nixos
zeus_ has quit [(Read error: Connection reset by peer)]
zeus_ has joined #nixos
Infinisil has quit [(Quit: leaving)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] primeos pushed 1 new commit to master: https://git.io/v7EaJ
<NixOS_GitHub> nixpkgs/master 87b215d Michael Weiss: android-studio-preview: 3.0.0.7 -> 3.0.0.8...
NixOS_GitHub has left #nixos []
Infinisil has joined #nixos
MP2E has quit [(Read error: Connection reset by peer)]
eacameron has quit [(Ping timeout: 240 seconds)]
jtojnar has joined #nixos
MP2E has joined #nixos
rpifan has quit [(Remote host closed the connection)]
<Infinisil> When are session Environment variables set?
jtojnar has quit [(Client Quit)]
justanotheruser has quit [(Quit: WeeChat 1.7.1)]
MP2E has quit [(Read error: Connection reset by peer)]
<Infinisil> Because I feel like they should be set now, but they aren't
yegortimoshenko has quit [(Remote host closed the connection)]
justanotheruser has joined #nixos
jtojnar has joined #nixos
<Infinisil> hmm
jtojnar has quit [(Client Quit)]
<Infinisil> I'm actually using rycee[m] 's home-manager to set it, hold on
jtojnar has joined #nixos
<Infinisil> Eh whatever, I'll just try relogging
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] grahamc pushed 1 new commit to staging: https://git.io/v7Eal
<NixOS_GitHub> nixpkgs/staging f49c2fb Sergey Mironov: trivial-builders.nix: add writeShellScriptBin builder
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] grahamc closed pull request #19050: trivial-builders.nix: add writeShellScriptBin builder (master...write-shell-script-bin) https://git.io/vPJCi
NixOS_GitHub has left #nixos []
MP2E has joined #nixos
MP2E has quit [(Client Quit)]
rpifan has joined #nixos
<Infinisil> I'm trying to shoehorn some package into using XDG
<Infinisil> So now I'm setting these XDG_CONFIG_HOME, etc. variables
<dhess> Anyone here know what are the consequences of not patching the Linux kernel with the cpu-cgroup-v2-patches patch?
<dhess> or maybe the better question is, why do nearly all of the NixOS kernels use this patch?
<Infinisil> dhess: Are there no comments to be found anywhere?
<dhess> there's a README.md but all it does it point to a justification for why the patch is out-of-kernel
<dhess> that justification is quite long and detailed. I was hoping for a succinct reason why NixOS uses it.
joehh has quit [(Ping timeout: 240 seconds)]
<dhess> and the commit message in nixpkgs isn't very useful. :( https://github.com/NixOS/nixpkgs/commit/2b1fa9da8b1896bbc877d110b459c3fb2c8fd2cd
cpennington has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth opened pull request #27858: nixos/libvirt: dependency on pkgs.OVMF (master...patch-6) https://git.io/v7Eap
NixOS_GitHub has left #nixos []
<Infinisil> dhess: No idea, maybe search through all nixpkgs issues and all related files history
<dhess> Here is the lkml thread. https://lkml.org/lkml/2016/8/5/368
<dhess> but uhh... that is also not exactly "succinct."
<dhess> Infinisil: it would be nice if you could click a button on a given file and GitHub would show you all the issues that have ever referred to a commit that touched it.
<Infinisil> maybe this patch was taken from a different distro or so
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] volth closed pull request #27858: nixos/libvirt: dependency on pkgs.OVMF (master...patch-6) https://git.io/v7Eap
NixOS_GitHub has left #nixos []
<dhess> "issue-blame" or something like that.
<Infinisil> dhess: Yes! that would be super useful
<Infinisil> I'm going to relog now, brb
Infinisil has quit [(Quit: leaving)]
<dhess> Infinisil: it would be nice if the committer had mentioned why he did it, or if there was an issue, referred to it.
<dhess> I wish people wrote more verbose commit messages. I don't get the obsession with 1-liners.
<dhess> Usually the summary is farily obvious from the commit itself and adds no useful information. e.g., "bump Xmonad 1.2 -> 1.3"
Infinisil has joined #nixos
<dhess> I guess it's good for grepping logs, but still, more info please!
<Infinisil> Damnit, env vars still not set :(
<Infinisil> rycee[m]: Piiiiiing
leat has quit [(Ping timeout: 260 seconds)]
<dhess> Ahh you can search GitHub issues by commit id! I did not know that.
<Infinisil> Well I don't wanna bother him too much, but this sessionVariables option doesn't work
<Infinisil> dhess: Nice
<dhess> here is the issue but again, not really any details on *why* it was added to NixOS. https://github.com/NixOS/nixpkgs/pull/17992
<dhess> I guess the lwn.net article is better than nothing.
<Infinisil> dhess: Well you can just leave a comment there to ask
<dhess> Infinisil: I suppose. Mainly I'm just curious; I don't have an opinion one way or the other. (I have a kernel that it won't apply cleanly to, which is why I started wondering about it.)
<dhess> ahhhh looks like it's for systemd.
<Infinisil> dhess: From wikipedia: "Unlike v1, cgroup v2 has only a single process hierarchy and discriminates between processes, not threads." and from the patch: "This patch implements cgroup v2 thread support."
<Infinisil> Not sure why this is needed by nixos
leat has joined #nixos
<dhess> Infinisil: apparently systemd prefers v2
<dhess> for its own process mgmt.
<dhess> I would guess that's it.
<Infinisil> dhess: Hmm.. I mean v2 is in the linux kernel, just not thread support i guess. Not sure why systemd would need cgroups for threads to work
slack1256 has quit [(Remote host closed the connection)]
<Infinisil> Ahh, maybe it isn't in the krenel
https_GK1wmSU has joined #nixos
https_GK1wmSU has left #nixos []
leat has quit [(Ping timeout: 240 seconds)]
<dhess> Infinisil: yeah thanks.
<dhess> turns out this kernel has Android extensions and it's incompatible with the cgroup-v2 patches anyway.
<dhess> so I'll just run without it
<dhess> presumably systemd can deal with it
endformationage has quit [(Quit: WeeChat 1.7)]
<dhess> right from that systemd issue sounds like it'll be fine
<Infinisil> dhess: What are you building anyways?
<dhess> Infinisil: Jetson TX1 kernel from Nvidia sources. It is a P I T A.
<dhess> but unfortunately the mainstream Linux kernel is missing a ton of support for this board, like power management, fan management, GPU, etc.
<Infinisil> Well have fun with that :D
<dhess> oh you bet.
<dhess> it is *finally* starting to build now after about 3 days of struggling to get this far.
<Infinisil> Whoa I didn't realize that this xsession thing is a script that runs all the time, and once it's done you're logged out
<gchristensen> good ol xsession
erictapen has quit [(Ping timeout: 255 seconds)]
<Infinisil> Ah found it, need to put my env vars into ~/.xprofile
<clever> Infinisil: oh, one min
rpifan has quit [(Ping timeout: 246 seconds)]
<clever> Infinisil: line 118 lets you configure things in the nixos config
<clever> 122 gets sourced, as you found
<clever> and 130 gets executed
<Infinisil> clever: I don't want to use the nixos config though
<clever> then xprofile is the best option
<Infinisil> I'm trying to actually properly separate system from user stuff :P
<Infinisil> relogging
Infinisil has quit [(Quit: leaving)]
Infinisil has joined #nixos
gnuhurd has quit [(Ping timeout: 260 seconds)]
joehh has joined #nixos
<Infinisil> What should i put in .xprofile and what in .xsession?
<clever> .xsession is more for entirely replacing the desktop manager
<clever> and once it returns, the entire session is torn down
Supersonic112 has quit [(Disconnected by services)]
lambdamu has joined #nixos
<Infinisil> Ah, well then *rm .xsession*
<clever> .xprofile must return for the session to properly load, so you should only set vars and daemonize things
Supersonic112_ has joined #nixos
<Infinisil> clever: Ah right
Supersonic112_ is now known as Supersonic112
<clever> displayManager.sessionCommands lets you inline xprofile type things
lambdamu_ has quit [(Ping timeout: 260 seconds)]
<Infinisil> brb
Infinisil has quit [(Quit: leaving)]
<clever> gchristensen: another trick you can do with nix here, is just math it out in ${, like ${3600*24*30*6}, https://github.com/NixOS/nixos-org-configurations/pull/33
<gchristensen> oh true
<clever> gchristensen: then its more readable then just 15552000
Infinisil has joined #nixos
<gchristensen> nice idea :)
cpennington has quit [(Ping timeout: 240 seconds)]
<clever> only way to improve it more would clutter lib.nix up a bit
<clever> but ${lib.months * 6} for ex
<Infinisil> :O
betaboon has quit [(Quit: This computer has gone to sleep)]
<clever> but it can be unclear, do you want it in seconds, miliseconds, nanoseconds, days?
<clever> we need types, lol
<gchristensen> clever: well after https://github.com/NixOS/nixpkgs/pull/27797 we can have (lib.datetime.months_in_seconds 6)
<clever> yeah
<gchristensen> speaking of which fpletz ping?
<Infinisil> I also feel an actual language that could be used during compiletime would be nice
<Infinisil> While nix can be used to hackily parse some stuff, doing something even remotely complicated is impossible
takle has quit [(Remote host closed the connection)]
<gchristensen> where is anyone parsing anything via nix
<gchristensen> sanityCheck -> always return false
<clever> gchristensen: one random example ive run into, i want to do ip manipulation for dns in nix
<clever> gchristensen: for example, do you know how PTR records work in dig?
<clever> dns*
* gchristensen flashes back
<gchristensen> *lying* no
https_GK1wmSU has joined #nixos
<clever> for v4, its simple, 192.168.2.15 -> 15.2.168.192.in-addr.arpa.
<clever> now try doing v6 in pure nix
<Infinisil> Being able to run something at compile- and runtime would be nice, this could replace stuff like these parsers, and also maybe replace bash
https_GK1wmSU has left #nixos []
<Infinisil> A unified language for both
<clever> gchristensen: fe80::230:48ff:fec5:d2df turns into f.d.2.d.5.c.e.f.f.f.8.4.0.3.2.0.0.0.0.0.0.0.0.0.0.0.0.0.0.8.e.f.ip6.arpa.
<gchristensen> I know :|
<clever> gchristensen: https://github.com/cleverca22/nix-tests/tree/master/ip-magic is what i wrote to deal with it
<clever> but it uses import from derivation
s33se has joined #nixos
rpifan has joined #nixos
<clever> gchristensen: my general idea, was that you have a single attrset, in the form of { hostname = { mac="..."; v4.private = "..."; };
<clever> gchristensen: and then you can auto-generate dhcp config, and bind config
<gchristensen> aye
<Infinisil> that would be nice
<Infinisil> I vote for haskell as a replacement for nix at compile and for bash at runtime
<Infinisil> s/compiletime/buildtime
<simpson> Thankfully, it's not a vote.
<clever> Infinisil: did you see my runHaskell gist?
s33se_ has quit [(Ping timeout: 246 seconds)]
<Infinisil> clever: Yes, I was the one that came up with that idea :P
jgertm has quit [(Ping timeout: 276 seconds)]
<clever> ah, thats how bad my memory can be :P
<Infinisil> clever: Eh, I wouldn't remember everyone I've done something here with too
mbrgm has quit [(Ping timeout: 246 seconds)]
<Infinisil> Okay, time to share an idea: Today we have every language separated into compile-time/run-time/evaluation-time whatever
<Infinisil> But really these phases should all be able to flow into each other somehow
mbrgm has joined #nixos
<Infinisil> Somehowe incorporating time itself as a basic property of everything
data has joined #nixos
data has quit [(Client Quit)]
<Infinisil> I have no idea how one would do that, but I feel like this is The Answer
<Infinisil> Also state is just a pure function :: Time -> a
leat has joined #nixos
<Infinisil> small idea rant done for today
<gchristensen> erm, time isn't the input for most state
<gchristensen> but a series of ordered events
eschnett has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] adisbladis opened pull request #27859: Revert "buildenv: read propagated-user-env-packages line-by-line" (master...revert_27427) https://git.io/v7EKL
NixOS_GitHub has left #nixos []
<Infinisil> gchristensen: But the events all have a time associated with them out of which a mapping from time -> value can be created
geraldnilles[m] has joined #nixos
geraldnilles[m] has left #nixos []
eacameron has joined #nixos
zeus_ has quit [(Remote host closed the connection)]
zeus_ has joined #nixos
zeus_ has quit [(Ping timeout: 246 seconds)]
<fpletz> gchristensen: pong?
Nobabs27 has joined #nixos
fpletz has quit [(Changing host)]
fpletz has joined #nixos
<gchristensen> fpletz: I'm not sure what to write for docs / changelog :/ I'd love some feedback from you on that
<clever> gchristensen: https://help.ubuntu.com/community/Boot-Repair the boot debug tool i previously mentioned
joehh has quit [(Ping timeout: 260 seconds)]
<gchristensen> nice, clever
ebzzry has quit [(Ping timeout: 248 seconds)]
<fpletz> gchristensen: sure, I'll have a look into the docs… just haven't found the time yet :)
<gchristensen> fpletz: ok, fwiw the only changed behavior is in no longer being able to import arbitrary lib/* files
<clever> gchristensen: aha, https://paste2.org/XcGYK8BB
<gchristensen> this is amazing!
eacameron has quit [(Remote host closed the connection)]
<clever> yeah
<Nobabs27> how do I get icon themes working?
<clever> gchristensen: line 578, i think it posted the encrypted form of his luks header
<Nobabs27> they show up in lxappearance, but "apply" does nothing
<fpletz> gchristensen: yes, not sure if it's even documented, we should just make sure there isn't any contradicting information in there
<clever> gchristensen: so now a wipefs pass wont erase the disk fully if his password has been leaked
<clever> though i think luks spreads the key material over many sectors
<Nobabs27> or do icon themes simply not work?
<gchristensen> true
<clever> gchristensen: this boot info script has crazy details like: Boot sector info: Syslinux looks at sector 23436688 of /dev/sdd1 for
justbeingglad has joined #nixos
justbeingglad has left #nixos []
cpennington has joined #nixos
zeus_ has joined #nixos
eacamero_ has joined #nixos
<gchristensen> fpletz: it is not documented d:)
<Infinisil> clever: Damn, dat paste, so beautiful
filterfish has joined #nixos
<clever> Infinisil: yeah
spacefrogg has quit [(Quit: Gone.)]
aw has quit [(Quit: Quitting.)]
aw has joined #nixos
spacefrogg has joined #nixos
<Infinisil> Hold on, I can just export $HOME=$HOME/.config/<some program> to make them conform to XDG..
<Infinisil> more or less
<clever> Infinisil: just beware of when programs fork out children
<clever> Infinisil: there is also libredirect in nixpkgs
<Infinisil> Probably this would create more problems overall
<clever> libredirect could do it better
<Infinisil> clever: Oh I'll check it out
<Infinisil> clever: Soooo. what does it do?
<Infinisil> There aren't any docs
<clever> Infinisil: any attempt to open a file in /usr/share/X11/xkb gets redirected to the storepath of xkeyboard_config
<Infinisil> Ohhh, fancy
<Infinisil> does writing work too?
<Infinisil> yes it should, never mind
<Infinisil> clever: Does this work for every program?
<clever> i found that it makes chromium deadlock on startup
<Infinisil> Ohh
<clever> and if teamspeak launches chromium, it inherits the vars, and the browser locks up
<clever> the nixpkgs chromium has since been wrapped with a script to undo redirects
<Infinisil> Hmm.. not as good as it sounds then
<clever> i havent noticed problems with other things
<clever> though one program passed null pointers to stat()!!
<Infinisil> Well..
<Infinisil> Alright I'll give it a go
<clever> linux returns a proper error, libredirect segfaulted (i sent a PR to fix that)
<clever> but if source is available, just patch it at build time
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-unstable-small advanced to https://github.com/NixOS/nixpkgs/commit/87b215d5f7 (from 3 hours ago, history: https://channels.nix.gsc.io/nixos-unstable-small)
nix-gsc-io`bot has quit [(Client Quit)]
<mpcsh> hello from my first nixos install!
<adisbladis> Congrats :)
<mpcsh> can someone confirm for me that `nix-env -i nixos.bspwm` does not result in `bspc` being executable? I think I'm doing something wrong
<mpcsh> bspwm doesn't work for me (gives me like 1/6th of my screen, all windows stacked together, no keybinds work except to launch stuff)
Wizek has quit [(Quit: Connection closed for inactivity)]
<mpcsh> but all other wm's and de's work
<clever> [clever@amd-nixos:/tmp]$ ls -lh /nix/store/1d9qwcfyk3cxck8lqyannxlqc1fbx3nj-bspwm-0.9.3
<clever> total 0
<clever> mpcsh: the package appears to be broken, it contains zero files
<mpcsh> clever: man fuk
Nobabs27 has quit [(Quit: Leaving)]
<tnks> is there any "gotcha" to be aware of if calling a nix-shell from within a nix-shell?
<tnks> I'm not sure this is the route I want to go down, but it seems like it might work. I'm collecting options for Python development.
<clever> tnks: i think the bash in a shells PATH has less features, which breaks the next nix-shell invocation
<clever> mpcsh: i think its already been fixed in master
<tnks> clever: seriously? I wasn't expecting that.
<tnks> because what guarantees that the outer nix-shell has a good bash at all?
<mpcsh> clever: how long would that take to make it to unstable?
<tnks> I'd figure nix-shell being provided by Nix and all would pin the interpretter it runs in to a specific one.
<tnks> and the outside shell would just be used to kick it off.
<gchristensen> tnks: [nothing](https://github.com/NixOS/nixpkgs/issues/27493)
<clever> tnks: i think it expects an interactive bash
<clever> tnks: so if your line-editing is borked, nix-shell will get upset
<tnks> gchristensen: ☹
<gchristensen> :)
<tnks> oh, but coming soon: ☺
<tnks> okay, so I'm not going to play this game. I'll see if I can do this another way.
phinxy has quit [(Read error: Connection reset by peer)]
inflames has joined #nixos
<gchristensen> tnks: if you add bashInteractive to the outer nix-shell, it should work fine
<tnks> gchristensen: okay, so this is actually just a break with only the outer shell, the subsequent nested nix-shell invocations should be fine?
<tnks> either way, I feel the alternatives for what I'm trying to do should be simplier.
<gchristensen> I think so :)
<tnks> no one wants to call multiple nix-shells anyway... just from a UX-perspective.
leat has quit [(Ping timeout: 260 seconds)]
<gchristensen> yeah agreed
<Infinisil> Ummm, why can't I build this simple pakcage? https://gist.github.com/718717a4a7957a4ff894513fa370f2f7
catch22 has quit [(Remote host closed the connection)]
<Infinisil> Coping ${pkgs.wget} to $out, then wanting to replace $out/bin/wget with a wrapped version. Gives me a permission error that it can't change $out/bin/wget
<gchristensen> Infinisil: what does it do?
<clever> Infinisil: cp preserves the read-only bin dir
<gchristensen> oh the permissions are locked down copying from elsewhere in the nix store
<clever> you need to chmod +w
<Infinisil> Ahh
<clever> Infinisil: also, dont copy wget, use makeWrapper instead
<gchristensen> or use stdenv.mkDerivation and set src = pkgs.wget
<clever> i mean, wrapProgram
<clever> makeWrapper renames the target out of the way, then makes a wrapper
<clever> wrapProgram just assumes its out of the way already
<clever> ehh, backwards again, lol
<Infinisil> clever: Ahh
<clever> i can never keep them right
<clever> oh
<Infinisil> but I'm using the other wget
<clever> and your basicaly doing that already
<Infinisil> :)
<clever> so your only going to copy the man pages and such
<clever> ln might be faster
<Infinisil> how would i use ln for that?
<Infinisil> Ah link
<Infinisil> I thought I read ls
<clever> symlink share to ${wget}/share/
inflames has quit [(Remote host closed the connection)]
<Infinisil> But then I'll have to mkdir $out first :P
<Infinisil> I'll just keep this as short as possible
<Infinisil> Okay, but why does `which wget` still show the systems one
<clever> did you install it in nix-env or systemPackages?
<Infinisil> nix-env
<Infinisil> With this override in .config/nixpkgs/config.nix
<clever> which --all wget
rpifan_ has joined #nixos
rpifan_ has quit [(Read error: Connection reset by peer)]
rpifan has quit [(Remote host closed the connection)]
<Infinisil> --all gives me bad option, but -a works. Both paths are shown ~/.nix-profile/bin/wget and /run/current-system/sw/bin/wget
<Infinisil> in that order
<Infinisil> But the second one is chosen..
<clever> when you just run "wget" in a shell?
<clever> or by "which wget" ?
<Infinisil> which wget gives me /run/current-system
<clever> ls -lh ~/.nix-profile/bin/wget
<Infinisil> points to the correct one, the one from /run/current-system doesnt
<Infinisil> Weird
<clever> and is the right one +x'd?
<Infinisil> clever: Same permissions for both
<clever> cat ~/.nix-profile/bin/wget
<Infinisil> The correct one
<Infinisil> OOHHh
<clever> ?
<Infinisil> For some reason a new terminal did it
<clever> "type which"
<Infinisil> shell builtin
<clever> aha!!!
<clever> i assumed you had the which from the which package
<clever> which can search the PATH every time its ran
<Infinisil> and a builtin can't?
<clever> you have the shell builtin which, which searches the shells PATH cache
<Infinisil> Ahh
<clever> bash has that cache disabled on nixos
<Infinisil> zsh apparently not
<clever> that also explains why it didnt accept --all
<Infinisil> Ahhh
<Infinisil> it all makes sense now
<clever> you have which, not which
<clever> and time, not time
<clever> (intentionaly confusing statement)
<tnks> clever: from a previous conversation, I think you might have insinuated that the shellHooks of propagatedBuildInputs would be called by nix-shell.
<Infinisil> well TIL one more thing
<tnks> but I'm not seeing that as the case.
<clever> tnks: the setup hooks are, not the shellHooks
<tnks> got it. Does anyone try to chain shellHooks together?
<clever> tnks: i wouldnt
<clever> $out/nix-support/setup-hook is for setup-hooks
<clever> any time a package is in the inputs list, that gets sourced
<clever> throw an echo into it to help debug
<clever> and propagatedBuildInputs forcibly adds things to the input list
<tnks> clever: okay, so nix-shell will only run one shellHook, because nix-shell is kind of a "one-derivation at a time" kind of tool, yeah?
<tnks> (this gets at why I was thinking of running nested nix-shell invocations).
<clever> yeah
<clever> and you usualy shouldnt nest them
<clever> but find another solution
<tnks> well, the shellHook for Python packages is pretty short.
<tnks> not too difficult to reason about.
<tnks> but maybe the setup hooks break.
<clever> what do you want from the shell hooks?
<tnks> "developer-mode" for Python development.
<tnks> but to do the thing that manual says "you can't do"
<tnks> rubbish... it just doesn't do it yet!
<clever> lol
<Infinisil> Oh I've got a great idea, to make a nixpkgs overlay that makes programs conform to the XDG specification
joehh has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] sigma opened pull request #27860: fzf: 0.16.10 -> 0.16.11 (master...pr/fzf-0.16.11) https://git.io/v7EMS
NixOS_GitHub has left #nixos []
eacamero_ has quit [(Remote host closed the connection)]
<mpcsh> clever: so nixos.bspwm is broken but turns out nixos.bspwm-unstable isn't
<mpcsh> hey does anyone know how to get command-not-found working?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nix] domenkozar reopened pull request #893: Solve issue #889. Add support for configurable runstatedir ( nix-daem… (master...patch-runstate) https://git.io/vw1JD
NixOS_GitHub has left #nixos []
<Infinisil> mpcsh: Well I do have the option enabled in my configuration.nix, but it doesn't seem to be doing anything
<Infinisil> Same for you?
<mpcsh> Infinisil: yeah :(
<Infinisil> mpcsh: checking `which command_not_found_handler` does indeed return something
<clever> Infinisil: the nix channel must also include a sqlite database
filterfish has quit [(Remote host closed the connection)]
<Infinisil> clever: And nixos-unstable doesn't?
<clever> the generation keeps being turned off because it slows down channel updates
<Infinisil> Oh
<clever> there is also the github.com/bennofs/nix-index project
cpennington has quit [(Remote host closed the connection)]
<Infinisil> There must be a way to create it yourself
<clever> which can index every file in every derivation
<clever> command-not-found is hard-coded to look in the channel directory, which is read-only due to nix
<Infinisil> I can set the dbPath option to something else
filterfish has joined #nixos
<mpcsh> clever: sure, but that doesn't provide the behavior of being referred to a package when typing a command that's not installed
filterfish has quit [(Remote host closed the connection)]
filterfish has joined #nixos
Nobabs27 has joined #nixos
<Infinisil> mpcsh: That does work for me, e.g. htpasswd shows me which packages have that command
<clever> he has since added some command-not-found logic to it
zeus_ has quit [(Remote host closed the connection)]
<Nobabs27> I just tried installing themes manually to .themes and .icons, but still getting the same issue. Why don't themes apply???
<mpcsh> clever: still, I feel like if there's an official nix solution I'd rather use that
zeus_ has joined #nixos
<Infinisil> Nobabs27: No idea
<Nobabs27> infinisil: is it the same for you?
<Infinisil> Nobabs27: My GTK theme works for at least some applications
<Infinisil> E.g. sonata
<Nobabs27> Infinisil: How did you install yours?
<Infinisil> Hmm.. not sure, but my themes reside in ~/.themes
<Nobabs27> and how do you apply them?
<Infinisil> Oh and somewhere else apparently, because .themes doesn't contain the one i have currently applied
<Nobabs27> ...
<Infinisil> But it also works with the ones in .themes
<Nobabs27> are you using lxappearance ?
<Infinisil> Yup
<Infinisil> I installed arc-theme
<Infinisil> with nix
<Infinisil> in configuration.nix
<Nobabs27> same
<Nobabs27> for me I hit apply, but if I reopen lxappearance its as if I didnt do anything
<Infinisil> Oh and I had to also install gtk_engines and gtk-engine-murrine
<Nobabs27> hmm maybe thats why
<Infinisil> one of those, don't know which one made it work
zeus_ has quit [(Ping timeout: 276 seconds)]
<Infinisil> Nobabs27: If those engine things don't work, just run lxappearance from terminal to see stdout, maybe it reports something weird
<Nobabs27> kk
<Nobabs27> Infinisil: (lxappearance:6109): Gtk-WARNING **: Unable to locate theme engine in module_path: "adwaita",
<Nobabs27> I installed adwaita and that didn't fix it
<Nobabs27> also had to install hicolor to get rid of an error
<Nobabs27> gnome-themes-standard apparently
Wharncliffe has quit [(Quit: Lost terminal)]
leat has joined #nixos
<Nobabs27> Infinisil: ok no more errors, its still not staying selected tho
<Infinisil> Nobabs27: No idea sorry
<Infinisil> I also have no clue how themes work
justan0theruser has joined #nixos
<Nobabs27> that odd tho that you can just install em and they work, yet here it's exactly the same and it does not work??
justanotheruser has quit [(Ping timeout: 240 seconds)]
<Infinisil> clever: Oh damn, didn't know about builtins.isFunction and builtins.intersectArgs
<Infinisil> intersectAttrs*
<Infinisil> and builtins.functionArgs
<clever> yeah, those can be usefull
<Infinisil> using them right now
<Nobabs27> ok how about another weird issue: in thunar preferences, it won't let me select "Single Click to Activate Items"
eacameron has joined #nixos
Nobabs27 has quit [(Quit: Leaving)]
eacameron has quit [(Ping timeout: 260 seconds)]
ebzzry has joined #nixos
<mpcsh> does *anyone* here have command-not-found working?
<clever> bash: command-not-found: command not found
<tnks> how I do parameter expansion in an inlined Nix script?
justanotheruser has joined #nixos
<clever> tnks: example?
justan0theruser has quit [(Ping timeout: 260 seconds)]
zeus_ has joined #nixos
<Infinisil> I have just created such a nice bit of nix code
reinzelmann has joined #nixos
<adisbladis> Infinisil: I envy you... Currently writing Java
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] sigma closed pull request #27853: bazel: 0.4.5 -> 0.5.3 (master...pr/bazel-0.5.3) https://git.io/v70bp
NixOS_GitHub has left #nixos []
<Infinisil> adisbladis: Like 5 years ago I have been mainly programming with Java P
<Infinisil> But then everything changed when the Fi.. Swift got released
<adisbladis> Infinisil: Never really liked swift.. Always saw it as a bit pointless
<Infinisil> adisbladis: While I currently don't code in Swift much anymore, I could argue a ton for it
rpifan has joined #nixos
<Infinisil> But I need to go walk the dog for ~30min, so bbl
joehh has quit [(Ping timeout: 246 seconds)]
reinzelmann has quit [(Quit: Leaving)]
<hyper_ch> is nixos-unstable still broken with virtualbox?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] sigma opened pull request #27861: bazel: 0.4.5 -> 0.5.3 (master...pr/bazel-0.5.3) https://git.io/v7EQf
NixOS_GitHub has left #nixos []
et4te has quit [(Remote host closed the connection)]
<clever> hyper_ch: broken in what area?
<hyper_ch> clever: some error when trying to compile vbox
<hyper_ch> but I noticed it's still broken since it hasn't updated for the past 5 days
<clever> hyper_ch: its enabled on my end and i havent seen any problems
<hyper_ch> clever: do you use the vb extension?
<clever> $ ps aux | grep vbox -i
<clever> root 3747 0.0 0.0 0 0 ? S< Jul13 0:00 [iprt-VBoxWQueue]
<clever> $ lsmod | grep -i vbox
<clever> vboxdrv 380928 2 vboxnetadp,vboxnetflt
<clever> 17.09pre110213.01c3847b9c (Hummingbird)
<hyper_ch> I'll be off to work soon... so recompile won't do
<hyper_ch> clever: are you on nixos-unstable channel?
<clever> hyper_ch: yeah
<hyper_ch> not nixpkgs?
<hyper_ch> ok
alx741 has quit [(Quit: alx741)]
<Infinisil> Nix question: How can I make this work: "${runtime-var}", so the ${ actually gets put into the string?
<Infinisil> It works like this: ''''${runtime-var}'', but I don't need/want the ''
<clever> nix-repl> ''''${foo}''
<clever> "${foo}"
<clever> the '' doesnt appear in the final string
<Infinisil> clever: I know
<Infinisil> Is it possible by using "?
<clever> nix-repl> "\${foo}"
<clever> "${foo}"
<Infinisil> Oh nice
<Infinisil> thx
joehh has joined #nixos
<Infinisil> I wrote a function that lets you do this: wget = makeXDG "wget" pkgs.wget ({ cache }: { wget = "--hsts-file=${cache}/hsts"; });
<clever> neat
<Infinisil> It also creates the xdg cache home folder with the "wget" subfolder before the binary is run
<Infinisil> but only the cache one here, because it's the only one used
<Infinisil> I should also add a way to have certain env vars be set
zeus_ has quit [(Remote host closed the connection)]
zeus_ has joined #nixos
<Infinisil> Why the hell is there no generic name attribute on derivations which is consistent over version
<Infinisil> s
<Infinisil> I could use that if it existed
<spacefrogg> What for? It's only informative, as far as I know.
zeus_ has quit [(Ping timeout: 246 seconds)]
<Infinisil> spacefrogg: Yeah, but having the actual name of the package can be useful sometimes
<spacefrogg> The name attribute is the name of the package. The version is part of it.
zeus_ has joined #nixos
<Infinisil> spacefrogg: But that's not the actual *name* of the package. zsh isn't called "zsh-5.3.1", wget isn't called "wget-1.19.1"
<Infinisil> And parsing that name by splitting on "-" isn't the way to go
indi_ has quit [(Remote host closed the connection)]
<spacefrogg> As far as I know there, is no technical need for the name without a version in NixOS. So yeah, you're on a loss, here.
indi_ has joined #nixos
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
nico202 has joined #nixos
<Infinisil> I think there could be benefits be splitting it up into the actual package name ("pname") and a version attribute
<Infinisil> Hell it's already done by most packages, name is most often just used to put the two together
<spacefrogg> I believe you exchange reason and consequence. It normally is split up in two when you need the version separately, e.g. for the download URL.
markus1199 has quit [(Ping timeout: 260 seconds)]
<spacefrogg> But I don't want to argue either way. Just what hold you back do use the name attribute? Is it esthetics?
markus1189 has joined #nixos
<spacefrogg> holds* to*
<Infinisil> sphalerite: Because I actually need the name without the version for my thing
mbrgm has quit [(Quit: ZNC 1.6.5 - http://znc.in)]
<spacefrogg> Care to tell me why?
MercurialAlchemi has joined #nixos
<Infinisil> spacefrogg: To create a directory for the package and the directory name shouldn't just change between different versions
indi_ has quit [(Remote host closed the connection)]
mbrgm has joined #nixos
indi_ has joined #nixos
<spacefrogg> Infinisil: Why not? You shouldn't create stateful dependencies where it is not necessary.
<spacefrogg> Is it necessary?
<Infinisil> If it's necessary to keep a packages stateful data between versions??
mog has quit [(Quit: im quiting!)]
<Infinisil> What I'm writing may not be ready yet, but it could very well be a part of nixpkgs one day. But that can't happen without packages exporting their name
oida_ has joined #nixos
<spacefrogg> Create the state anew for each package installation, if possible. What you are trying to do fulfills the very definition of impurity that NixoS is trying to avoid.
<Infinisil> spacefrogg: Oh sure, I'll just throw away all my /var and everything else that's stateful, because who needs mutable data anyways
<Infinisil> That's not how software works
nslqqq has quit [(Ping timeout: 255 seconds)]
oida has quit [(Ping timeout: 258 seconds)]
<Infinisil> While nix deals well with the immutable part, we can't ignore the mutable part
<spacefrogg> That is a concession to the software design. And /etc is the way how NixOS manages impurity.
<Infinisil> when I'm having my contacts in radicale-v1.1.3, then I don't want to lose all of them just because it updated to radicale-v1.1.4
nslqqq has joined #nixos
<simpson> I want to spread NixOS to a new cloud provider. They don't support NixOS yet. What should I read to figure this out?
<spacefrogg> Okay, I understand now. You're searching for a state-exporting mechanism that was deliberately left out. You'd have to modify each nixpkg that really needs state to export the path to its application state. This is currently done on an as-needed basis.
<Infinisil> simpson: Well if you have root access then you could just try to run nixos-infect (or this other similar project) to see if it works or adapt it a bit
<simpson> Infinisil: I was hoping for more concrete or documented guidance than that.
<Infinisil> spacefrogg: Sure, but that's what I'm trying to make easier, and if packages just exported their actual name this would be even more easier
ChongLi has quit [(Quit: leaving)]
ChongLi has joined #nixos
<spacefrogg> No, packages might (and actually do) define arbitrary paths to store their state. Sometimes these are only known after some post-installation initialization.
<spacefrogg> This is nothing to be (generally) solved on the package-building side.
<spacefrogg> This is actually why the comprehensive module system exists in NixOS.
ChongLi has quit [(Client Quit)]
ChongLi has joined #nixos
<Infinisil> spacefrogg: I do not want to put this into the package! I only need the packages to export a *name*, nothing else, and this would make my task a lot easier
<spacefrogg> I did understand that. But nothing tells you that your package actually recognizes the "state-storage location" you assign to it based on its name, would it?
<Infinisil> Eh whatever, maybe I'll open an issue for that, I really think this would be a general improvement
<spacefrogg> This has to be figured out on an individual basis, anyway. Well the go forth and export a versionless name in those cases.
<Infinisil> spacefrogg: Alright, what I'm creating is a wrapper for packages to make them conform to the XDG convention. And for that I need to create a directory at e.g. ~/.config/<package name>. I'm going to pass such directories with command line flags or env vars.
<Infinisil> Yes, it's going to be done on a per-package basis, of course it can't be done automatically
<Infinisil> spacefrogg: As a programmer I just think that not exporting the name and version even though they are available is just stupid. There is not a single disadvantage to doing this
nico202 has quit [(Ping timeout: 260 seconds)]
mog has joined #nixos
<Infinisil> And no, the extra 0.1% evaluation time because there's more attributes doesn't count
<clever> Infinisil: also, all attribute names get turned into ints for faster compares
<Infinisil> Nice to know
<seequ> Infinisil: is it a system- or use-specific package?
<seequ> user*
mog has quit [(Quit: im quiting!)]
<seequ> Ah, there
<spacefrogg> Infinisil: Well, the better. Then for each package that is using the xdg-generator, split apart a name. No need to create a standard, here.
<Infinisil> seequ: Well I'm trying to handle stateful data with this so it's doing the correct thing for any user
<Infinisil> spacefrogg: It's just additional work being done. If there was the convention to export pname and version, then everyone would have less work
<spacefrogg> Not all packages (not even close) are explicity written up as derivations. Forcing them to export a pname to fulill this (mostly needless) convention would be a lot of unnecessary work.
<spacefrogg> And it is mostly needless as most applications don't carry state around (except for config in /etc).
<Infinisil> Sorry I don't feel like arguing anymore :)
MoreTea has joined #nixos
<spacefrogg> Last statement. Thank you for writing this generator!
<spacefrogg> Should have said that first.
<Infinisil> sphalerite: Np ;)
<spacefrogg> Not me, but yw. :)
reinzelmann has joined #nixos
<clever> spacefrogg: nix-repl> builtins.parseDrvName "foo-1.2.3"
<clever> { name = "foo"; version = "1.2.3"; }
<dhess> also clever has something similar I think, or maybe Mic92's is the same
<spacefrogg> Infinisil: ^
<spacefrogg> clever: Is that authoritative?
<Infinisil> spacefrogg: That's just not reliable, a dash in the name and it does'nt work
<clever> Infinisil: the source i linked is also an example of the attr name stuff i mentioned before
<simpson> dhess, clever: I am currently playing with nixos-in-place on their Debian image. It appears that the IP addresses are statically configured, so I have to get that static information into the NixOS expression.
<clever> Infinisil: state.sName is a variable holding the int that means "name", because thats searched for a lot from the code
<clever> Infinisil: and state.symbols.create("version") will either return the int for version, or create&return one
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] mbrgm opened pull request #27862: restic: 0.7.0 -> 0.7.1 (master...upgrade-restic) https://git.io/v7EFf
NixOS_GitHub has left #nixos []
<dhess> simpson: which provider is this?
rjsalts has quit [(Quit: Coyote finally caught me)]
<simpson> dhess: SoftLayer.
<Infinisil> clever: Well that's something I guess
<clever> simpson: with my kexec code, you can just put static network config into it, but you need a new tar for every machine
<clever> simpson: ask them if they have an auto-config thing similiar to digital ocean, like https://github.com/NixOS/nixops/issues/605
<spacefrogg> Infinisil: So there you have it, at last.
<Infinisil> That's a hack, not a solution
<dhess> simpson: in Mic92's gist (see above), he shows an example of setting eth0 via systemd
<clever> simpson: the DO module will do an http query to http://169.254.169.254 and can query its own IP
rpifan has quit [(Ping timeout: 240 seconds)]
<spacefrogg> You know of a package that does not work? Packages with dashes do work. (Sample size = 1)
<clever> nix-repl> builtins.parseDrvName pythonPackages.deluge.name
<clever> { name = "python2.7-deluge"; version = "1.3.13"; }
<Infinisil> ^^
MoreTea has quit [(Quit: Leaving)]
<clever> simpson: also, does this hoster provide imaging services?, can they just flash an image to the hdd with the click of a button?
<dhess> there's still no iPXE install image for NixOS, is there?
<clever> dhess: there is
<dhess> oh? where is it?
<clever> dhess: my kexec trick above uses a modified form of it, i run the kernel+initd from ipxe via kexec
dejanr has joined #nixos
<simpson> clever: Yeah, but the images have to be based on one of their blessed distros. The only Linux they support is RHEL.
<clever> simpson: what if you could just give them a nixos image and ask them to bless it?
<dhess> geeze how did I miss that
<dhess> last time I looked I only found some old GitHub issues
<clever> dhess: i also have this, which splits it out of release and makes it possible to customize: https://gist.github.com/cleverca22/75e3db4dabeff05b743e9be77a2341b9#file-netboot-nix
<clever> dhess: that gist also includes bits of dhcp config, and a way to give every machine its own default
<simpson> clever: I will see! Odds are good that they won't be open to that, but I'll certainly ask.
<simpson> I guess that they have CoreOS.
dejanr has quit [(Read error: Connection reset by peer)]
<clever> simpson: as for the major differences between nixos-in-place and my kexec trick, nixos-in-place leaves you stuck with whatever partition layout the machine had to begin with
dejanr_home has joined #nixos
<clever> simpson: so you have to start with an image that has an FS and layout you can accept
<clever> simpson: my kexec trick lets you wipe the machine and do whatever you want
<clever> simpson: and as an example of poor choices, one of my servers is now stuck with a 20gig /home partition that sits at 56% used
<clever> and a 1.8 tb / partition
<clever> that makes it imposible to run something like a full bitcoin node, without getting root and messing around with things
<clever> simpson: the bigger problem i can forsee, is how do you give the user ssh access automatically, there needs to be a metadata service so you can auto-config on first boot
<simpson> clever: Yeah. So, I'm reaching out to somebody technical, and hopefully I'll get more info from them. The need for autoconfig and the desire to know about image options.
<simpson> There's good news, at least; the CLI tool that they provided works, and it's got a Python library, so adding it to nixops shouldn't be too hard.
zeus_ has quit [(Remote host closed the connection)]
<clever> simpson: and using this, you can generate a disk image with nix-build: https://github.com/NixOS/nixpkgs/blob/master/nixos/lib/make-disk-image.nix
zeus_ has joined #nixos
<clever> and i should probably get some sleep, its nearly 4am now
<simpson> Peace.
dejanr_home has quit [(Ping timeout: 268 seconds)]
zeus_ has quit [(Ping timeout: 246 seconds)]
adamCS has quit [(Ping timeout: 260 seconds)]
adamCS has joined #nixos
<mpcsh> Infinisil: so I did some more reading and I have a better first contribution
<Infinisil> mpcsh: :D
<mpcsh> about to throw up a PR in a minute
FRidh has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] mpcsh opened pull request #27863: material-icons-ttf: init at 3.0.1 (master...master) https://git.io/v7Ebg
NixOS_GitHub has left #nixos []
<mpcsh> Infinisil: ^
blahdodo has quit [(Quit: Bye bye)]
<Infinisil> mpcsh: Nice!
<Infinisil> Very well done, I don't even have anything to complain about!
<mpcsh> ayy thanks :)
blahdodo has joined #nixos
eacameron has joined #nixos
<cocreature> Hey, it seems like by using "cabal new-build" inside a nix-shell I’ve somehow managed to mess up something and now when I try to enter the shell again it fails to find some package-db http://lpaste.net/357356 any ideas how to fix that?
<cocreature> I tried nuking all dist and dist-newstyle directories in this project but that didn’t help
<cocreature> I guess I might need to nuke something in /nix/store but I’m unsure what
eacameron has quit [(Ping timeout: 255 seconds)]
nschoe has joined #nixos
<Infinisil> cocreature: What does new-build do?
<cocreature> Infinisil: it’s a new feature in cabal which manages package-dbs in a different way.
<Infinisil> or is that "cabal new build" which creates a new project or so?
<Infinisil> cocreature: Ah
nadley has quit [(Ping timeout: 268 seconds)]
<cocreature> it seemed to work inside of nix-shell but now after a day or so I can’t enter the shell anymore and I’m not sure how to reset whatever nix seems to have stored here
<hyper_ch> clever: nixos-rebuild boot --upgrade --> will take a while on my notebook
<Infinisil> cocreature: The shell itself is stateless, the files mustve changed somehow
eacameron has joined #nixos
https_GK1wmSU has joined #nixos
<cocreature> nix-store --gc deleted some things from /nix/store that contained dist-newstyle directories. let’s see how this goes
<Infinisil> cocreature: That shouldn't fix it
https_GK1wmSU has left #nixos []
<cocreature> Infinisil: well what _should_ fix it? sry I’m new to nix :)
<cocreature> I definitely haven’t modified any of the .nix files and none of them references dist-newstyle
eacameron has quit [(Read error: Connection reset by peer)]
eacameron has joined #nixos
cfricke has joined #nixos
<cocreature> so something™ must be leaking to somewhere and make nix look for the dist-newstyle folder
<Infinisil> cocreature: No idea, maybe you could try to just copy the files you need into a new directory and run nix-shell there
rydnr has joined #nixos
<Infinisil> You could always try running nix-shell with --pure
<rydnr> Hi guys
justanotheruser has quit [(Ping timeout: 240 seconds)]
<cocreature> Infinisil: alright, I’ll try that. thanks for your help!
vinymeuh has joined #nixos
justanotheruser has joined #nixos
<seequ> Any clue why `nix-build; nix-env -f . -i` caused two builds?
<rydnr> I'm writing a package which downloads a zip file that contains more than one directory, and packer complains. How do you manage this situations? Can I still use fetchurl in this case?
<seequ> (I was testing if the new build works first)
<Infinisil> seequ: nix-build is one command, a semicolon enables you to run another command after it, nix-env -f . -i can make another build
<Infinisil> Ahh
<Infinisil> Does the full package get rebuilt?
eacameron has quit [(Ping timeout: 260 seconds)]
<rydnr> I should RTFM before asking questions like this. Sorry...
<seequ> Infinisil: I ran them as separate commands.
<Infinisil> rydnr: Nah, no problem. I think you want to set stripRoot = false
nixer has joined #nixos
eacameron has joined #nixos
<seequ> Infinisil: I'm just curious why nix-env couldn't use the same build
<Infinisil> seequ: Can you gist the nixfile?
arximboldi has joined #nixos
<dhess> Dezgeg: sheeeeeeit, you worked for Nvidia??
<Infinisil> seequ: what arguments are you passing nix-build and nix-env?
<seequ> None
<dhess> and all this time I've been trying to figure out this Tegra stuff myself! :)
<Infinisil> seequ: Huh
<seequ> Just `nix-build` and `nx-env -f . -i`
<seequ> Without the typo
<Infinisil> So, what's the default.nix?
eacameron has quit [(Ping timeout: 240 seconds)]
<seequ> Infinisil: Just qt59.callPackage ./package.nix {}
<Infinisil> Because default.nix gets called when you don't specify a file, but you gisted package.nix
<Infinisil> seequ: and with import <nixpkgs> {}; at the beginning?
Guanin has joined #nixos
<Infinisil> Hmm, weird
<hyper_ch> clever: yes, still sha256 mismatch with vbox extension
<hyper_ch> https://github.com/NixOS/nixpkgs/issues/27666#issuecomment-318145113 --> still didn't make it into nixos-unstable
<Taneb> I'm getting "Failed to check file system type of "/boot": no such file or directory when I try to run nixos-install
<hyper_ch> Taneb: how are you trying to install?
indi_ has quit [(Remote host closed the connection)]
indi_ has joined #nixos
<Taneb> With the minimal installer, running off a USB
<hyper_ch> and you mount the designated root folder to /mnt ?
<hyper_ch> or what installation guide do you follow?
<Taneb> To /mnt as the instructions said
<Infinisil> Taneb: What does `wipefs /dev/<your boot mounted disk id>` output?
<Infinisil> if you want to use efi booting this should output something with vfat
<seequ> Taneb: You need to mount your boot partition to /mnt/boot for UEFI install
<rycee[m]> Infinisil: Hey hey.
<Infinisil> rycee[m]: Hey :D
<rycee[m]> Infinisil: Ah the environment variables are set by either PAM or Bash.
indi_ has quit [(Ping timeout: 260 seconds)]
<rycee[m]> It is not very robust and I've been wanting to change it, but I am uncertain how to make it better. Right now you have to use PAM unless you want to use bash and have HM manage your bash configuration.
<Infinisil> rycee[m]: Ohh, maybe I should read the descriptions a bit better, I didn't enable bash
<rycee[m]> I think there should be a third option to just write out a ~/.profile file (like the bash option does) that you then can source yourself.
<Infinisil> Hmm..
<Infinisil> *thinks*
justanotheruser has quit [(Ping timeout: 248 seconds)]
<Infinisil> I think it's best to write to .profile
<rycee[m]> (if you are using a Bourne compatible shell)
<Infinisil> rycee[m]: how are you supposed to set env var in other shells?
jensens has joined #nixos
<Infinisil> s/var/vars
<Taneb> Ugh, I need to head out, I'll try again this evening
<rycee[m]> I guess by adding a HM module for that shell and making a PR :-)
<Infinisil> Taneb: Alright then, see ya :)
<Infinisil> rycee[m]: Heh yes
<rycee[m]> But I think most common shells nowadays are sufficiently Bourne compatible to read commands of the form `export DICPATH="${HOME}/.nix-profile/share/hunspell"`
<Infinisil> rycee[m]: What modules would you like to see for HM?
goibhniu has joined #nixos
<Infinisil> rycee[m]: Maybe yes, .profile will be bourne
<rycee[m]> I think some additional shells would be fun but I don't really have any further modules I'm really wanting to make. I am working on a "news.nix" moduleish thing.
filterfish has quit [(Ping timeout: 246 seconds)]
<Infinisil> rycee[m]: Which does?
ambro718 has joined #nixos
<adisbladis> rycee[m]: Are there env vars currently handled by hm?
<rycee[m]> That will allow writing a sort of change log and when you do a switch it will let you know if there are any changes or important news for you. Like it may say "Foo will be deprecated soon, please use bar instead" if it notices that "service.foo.enabled == true".
<Infinisil> adisbladis: You can set them yourself in HM, or have a module set it for you
tokudan has joined #nixos
<Infinisil> rycee[m]: Interesting, do you also have a concrete example of it being useful?
<rycee[m]> adisbladis: Seems only the lesspipe, gpg-agent, and info modules set environment variables themselves. But you can use `home.sessionVariables` to set your own.
<adisbladis> rycee[m]: Just found it :)
<rycee[m]> Infinisil: Well, I started working on news.nix because I'm planning to change the way you define which window manager you need in your X session. Unfortunately the way I plan to change it will cause a potentially confusing error message from Nix. So I wanted a way to let the user know beforehand :-)
jgertm has joined #nixos
<adisbladis> That's not gonna work at all on fish if you don't set home.sessionVariableSetter to pam for me... Thinking if there might be a better way
<rycee[m]> Yeah, I wish pam would work in all cases but it is quite restrictive in which variables you can set :-(
<unlmtd> question: Iv enabled radvd on interface eth0 and 'dhcdcd.denyInterfaces' eth0. Now eth0 doesnt configure a link-local address
<rycee[m]> adisbladis: So if pam is insufficient for you then there needs to be some "fish" hm module that will take care of it.
<adisbladis> rycee[m]: I'm thinking that making a more general env-vars file would be better? Then source that via a shell-specific implementation
<Infinisil> rycee[m]: I was just wondering why you're so slow at writing, but then I saw the [m] :P
<adisbladis[m]> Why would the matrix bridge be significantly slower?
<rycee[m]> adisbladis: Sure, that would work but then you still need to provide code for different shells to use this env-vars file. Seems more straight forward to directly generate the env-vars file in the right format for the target shell.
<rycee[m]> Infinisil: Yeah, I was sleeping :-)
wak-work has quit [(Ping timeout: 276 seconds)]
justanotheruser has joined #nixos
<Infinisil> Oh what would be nice are modules for terminals
faffolter has joined #nixos
faffolter has quit [(Changing host)]
faffolter has joined #nixos
jgertm has quit [(Ping timeout: 248 seconds)]
<unlmtd> adisbladis: matrix users stay logged in even when afk
<adisbladis> unlmtd: I know :) So do most irc users
Ivanych has joined #nixos
<unlmtd> I think thats what he meant
<adisbladis> rycee[m]: I might be overthinking this a bit :)
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lsix opened pull request #27865: pythonPackages.django: 1.11.3 -> 1.11.4 (master...update_django) https://git.io/v7Eh2
NixOS_GitHub has left #nixos []
<adisbladis> rycee[m]: Anyway, I find "setenv KEY VALUE" is usually more portable
freusque has joined #nixos
<adisbladis> At least it works as intended in bash, zsh and fish
<Infinisil> adisbladis: What is setenv?
joehh has quit [(Ping timeout: 240 seconds)]
<adisbladis> Infinisil: equivalent to "export KEY=VALUE"
<rycee[m]> adisbladis: Hmm, are you sure? I get `setenv: command not found` in my bash.
<Infinisil> I don't have setenv
<Infinisil> Yeah same
nh2 has joined #nixos
ambro718 has quit [(Ping timeout: 240 seconds)]
<adisbladis> rycee[m]: Hmm.. I think it used to work
<adisbladis> Have been running fish for about 10 years now so my bash is very rusty...
<adisbladis> Maybe some distros I have been using in the past were "helpful" enough to provide an alias
<adisbladis> Or maybe my memory is just playing tricks
<adisbladis> setenv is originally a csh thing
<Infinisil> Yeah just found that out too
ison111 has quit [(Ping timeout: 240 seconds)]
<adisbladis> Home-manager could generate two env-files then :) One with csh-style syntax and one with bourne-syntax
<adisbladis> Then all you need to do is source that
wak-work has joined #nixos
<rycee[m]> Fair enough, could have "pam", "bsh", and "csh" as possible options for the environment variable setter.
<adisbladis> rycee[m]: I was thinking of generalising further and having "pam" and "shell"
<adisbladis> Then it's up to whatever shell modules you have enabled to source the appropriate config
ThatDocsLady has joined #nixos
https_GK1wmSU has joined #nixos
https_GK1wmSU has left #nixos []
fab has joined #nixos
<adisbladis> rycee[m]: In that case switching login shells from the system config would be seamless
fab is now known as Guest80856
faffolter has quit [(Ping timeout: 240 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh pushed 1 new commit to staging: https://git.io/v7ueJ
<NixOS_GitHub> nixpkgs/staging 4f66c0c Frederik Rietdijk: Merge remote-tracking branch 'upstream/master' into HEAD
NixOS_GitHub has left #nixos []
joehh has joined #nixos
<rycee[m]> adisbladis: Sounds like a good idea. I can give that a try.
<rycee[m]> Have to leave for now though :-)
<Infinisil> See ya
__Sander__ has joined #nixos
<adisbladis> rycee[m]: I can do it :) Been meaning to do something to hm :)
ebzzry has quit [(Ping timeout: 240 seconds)]
<adisbladis> A fish module would be an easy good start
<rycee[m]> Sounds even better :-D
<rycee[m]> Cheers, bye.
q6AA4FD has quit [(Ping timeout: 260 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Moredread opened pull request #27867: gutenprint: 5.2.11 -> 5.2.12 (master...gutenprint) https://git.io/v7uvJ
NixOS_GitHub has left #nixos []
vinymeuh_ has joined #nixos
charlycoste has joined #nixos
thc202 has joined #nixos
vinymeuh_ has quit [(Client Quit)]
<Infinisil> I desparately need someone that understands overlays, because I certainly do not
q6AA4FD has joined #nixos
<nixer> Can someone explain how setup hooks work? I'm trying to get Julia packages to Nix. I used the perl expressions as a guide. I added a setup hook that adds the packages to the load path, but it doesn't work correctly. I'm guessing the error is either here: https://github.com/kskyten/nixpkgs/blob/julia/pkgs/development/julia-modules/generic/builder.sh or here: https://github.com/kskyten/nixpkgs/blob/julia/pkgs/development/compilers/julia/
nh2 has quit [(Ping timeout: 255 seconds)]
<tilpner> Infinisil - Any specific questions?
<Infinisil> tilpner: What's the difference of packageOverrides and overlays?
<spacefrogg> Infinisil: ??
takle has joined #nixos
<spacefrogg> Infinisil: overlays are modern and a clean approach. They are stackable.
<Infinisil> Alright, stackable
<tilpner> Infinisil - Overlays are just a prettier generalisation of packageOverrides. They compose better, as you can have more than one of them, but they serve the same purpose
<Infinisil> Thanks, another question:
<Infinisil> I have an overlay in ~/.config/nixpkgs/overlays which overrides the irssi package
<nixer> If I understood it correctly setup hooks are run for all items in the buildInputs. So if I'm running an expression with the julia build depencency it should add the current package to the load path, but it is not doing it.
<Infinisil> And a packageOverride creating a new package called "irc" which uses the irssi package, but it uses the old one, not overlayd by the one in the overlays folder
<Infinisil> But I want it to use the overlayd irssi
<Infinisil> Hold on I'll gist it
vinymeuh has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<tilpner> Infinisil - I don't know how packageOverrides interact with overlays. Can you use an overlay instead of your packageOverrides?
<spacefrogg> You should mix packaveOverride
filterfish has joined #nixos
<spacefrogg> with overlays, that is.
<tilpner> spacefrogg - "shouldn't"?
<spacefrogg> Yes!
<spacefrogg> :)
takle has quit [(Ping timeout: 240 seconds)]
<Infinisil> tilpner: spacefrogg: Alright here are my two overlays
<Infinisil> I should be able to use the overlays attribute it config.nix to determine the order, because in the filesystem it should be arbitrary, right?
mudri has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] tjikini opened pull request #27868: rustNightlyBin: 2017-06-26 -> 2017-08-02, use xz-compressed package (master...patch-1) https://git.io/v7uJO
NixOS_GitHub has left #nixos []
<tilpner> Infinisil - It's alphabetical order if loaded from filesystem
<Infinisil> Ah, well that's too arbitrary for me
nslqqq has quit [(Ping timeout: 255 seconds)]
<tilpner> Are you loading both overlays via the same mechanism? Either overlays attribute or .config/nixpkgs/overlays, but not both at the same time?
<Infinisil> tilpner: I'm now setting the overlays attribute in config.nix to include both
takle has joined #nixos
<Infinisil> not including them in any other way, they aren't in the overlays directory
<Infinisil> Hold on I'll test that now
<Infinisil> Okay problem: It can't find attribute irc in selection_path 'nixos.irc'
<Infinisil> doing nix-env -iA nixos.irc
<Infinisil> Even though I have irc defined in the my.nix overlay
<spacefrogg> nix-env looks in .config/nixpkgs/overlays or in NIX_PATH
<tilpner> That suggests your overlay is not loaded at all
<spacefrogg> the overlays attribute does not affect nix-env
<spacefrogg> You need to set NIX_PATH=nixpkgs-overlays=... I think
<Infinisil> spacefrogg: It doesn't?
<spacefrogg> Or have it in ~/.config/nixpkgs/overlays
ThatDocsLady is now known as ThatDocsLady_mtg
<Infinisil> It should work with the overlays attribute: https://nixos.org/nixpkgs/manual/#sec-overlays-install
<tilpner> I'm not sure how to set the overlays attribute from user Nix. In my config, I pass an overlays list to nixpkgs, but that's my system config
Ralith_ has quit [(Ping timeout: 240 seconds)]
<tilpner> To be safe, paste the relevant part of your config?
<spacefrogg> Infinisil: nix-env does not evaluate configuration.nix
<Infinisil> spacefrogg: I have this in config.nix
<Infinisil> But yes, it seems that the overlays are ignored for some reason
<Infinisil> I can also put invalid paths there and still install irssi
<tilpner> Infinisil - Please try importing each file
Ralith_ has joined #nixos
<Infinisil> Ohhh right, I actually did that before and it didn't work either, hold on, Il'l do it again
filterfish has quit [(Ping timeout: 260 seconds)]
Arcaelyx has quit [(Quit: Textual IRC Client: www.textualapp.com)]
<Infinisil> Same result
<Infinisil> But
<Infinisil> I originally thought this wasnt' related, but it might as well be: Everytime I ran this nix-env command, I got: "arning: name collision in input Nix expressions, skipping ‘/home/infinisil/.nix-defexpr/channels_root/nixos’"
Guest80856 has quit [(Ping timeout: 276 seconds)]
nslqqq has joined #nixos
* tilpner can't actually find the documentation for config.nix
<Infinisil> tilpner: Right! I can't find one either!
<FRidh> because there is none
<michaelpj_> yeah, the various configuration files and their relationships aren't well documented at all. To get overlays working the way I wanted, I had to import them in configuration.nix and config.nix both
<tilpner> I don't use user-side Nix much, including nix-env, so I can't help much. As said above, I pass a list of functions while importing nixpkgs manually, so I have it a little easier
<tilpner> (nix-env can see items declared in overlays though)
<Infinisil> I actually haven't used user nix much too because configuration.nix is so good. But since discovering home-manager I'm trying to use user-side more and more
<FRidh> michaelpj_: overlays are documented. What is missing? https://nixos.org/nixpkgs/manual/#sec-overlays-install
<Infinisil> FRidh: What the config.nix file can do
mudri has quit [(Ping timeout: 260 seconds)]
<FRidh> Infinisil: I asked about overlays, not the config.nix file in general. That documentation is missing.
<Infinisil> Ah
<michaelpj_> that page doesn't document using them in nixos
<michaelpj_> in general, it's the relationship between the nixos configuration (which can include explicit attribute sets for the `nixpkgs.config` setting), and the nixpkgs configuration files that I find very confusing
Guest80856 has joined #nixos
mudri has joined #nixos
<michaelpj_> hands up who knew about /etc/nixpkgs/nixpkgs-config.nix?
<tilpner> michaelpj_ - What does that do?
* Infinisil doesn't lift his hand
<michaelpj_> it's used as a fallback for `config.nix`, I think. But I don't know, because it isn't documented ;)
* tilpner guesses it sets a global/system/default nixpkgs.config value
<tilpner> Hmm, okay
<Infinisil> I don't have a /etc/nixpkgs folder
<michaelpj_> er, it's somewhere around there
<michaelpj_> not at my nixos machine right now
<michaelpj_> maybe /etc/nix
<spacefrogg> Infinisil: Hm, of course is overlays ignored in config.nix. config.nix describes the nixpkgs.config attribute set.
<Guanin> Hi, i am currently trying to setup openldap with nixos for user authentication. The service itself is running and I added a ou=People entry, but when I try to login as that user, I either get "Failed to create session: No such file or directory" (on tty login) or "error: PAM: Authentication failure for illegal user" (ssh). my config is currently this: https://clbin.com/gZ8R5 I'd be glad about any hints :/
<Infinisil> I only have /etc/nix/nix.conf
<spacefrogg> Infinisil: The overlays attribute is part of nixpkgs
<spacefrogg> So that is why only point 2. and 3. are applicable to nix-env.
<FRidh> michaelpj_: indeed, how it can be used with NixOS is missing. Go forth and open a PR! ;) Do note that for nixos there is https://nixos.org/nixos/options.html
<michaelpj_> yeah, that is the other annoying thing about overlays: for nixos, you can have them as a value in an attribute set, but for the user nixpkgs you seem to have to have them in a directory? At least, I couldn't find an equivalent of `nixpkgs.overlays` for the user conifg
<michaelpj_> FRidh: I would if I was sure I understood it ;)
<FRidh> michaelpj_: when you do import <nixpkgs> {}; you call the `default.nix` of the Nixpgks package set. There, you can pass in config and overlays
<Infinisil> spacefrogg: Ah, that makes kinda sense
<spacefrogg> I find that hard to remember, really.
<Infinisil> So, my only option is to use the nix serach path..
<spacefrogg> I guess, you could set both the nix.nixPath attribute and overlays in configuration.nix to get consisten overlays behaviour.
Myrl-saki has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] tokudan opened pull request #27870: Add nixops-keys support to grafana while also keeping the old interface (release-17.03...grafana-nixops) https://git.io/v7uTD
NixOS_GitHub has left #nixos []
Guest80856 has quit [(Remote host closed the connection)]
<michaelpj_> can you have .nix files that are lists rather than attribute sets? having an `overlays.nix` next to `config.nix` that had the list in would be a nice alternative to having the directory. I might look into that...
<Infinisil> Wait no
<Infinisil> I have no way to make user overlays in a specific order other than naming the files correctly alphabetically..
<michaelpj_> Infinisil: what I ended up doing was symlinking my overlays individually into the overlays dir, and then separately importing them all into a list for use in `configuration.nix`. It doesn't keep them perfectly in sync because I need to symlink in any new overlays when I add them, but it mostly works
<michaelpj_> yeah, an explicit list is also better for that reason
<spacefrogg> Infinisil: You do, via NIX_PATH
<spacefrogg> Infinisil: No, you don't.
<spacefrogg> Infinisil: You're right. It defines only a search path.
<Infinisil> Hmm..
<FRidh> you can make a default.nix that has the same interface as Nixpkgs, but sets your config and overlays, and then have NIX_PATH=nixpkgss=/point/to/that/default.nix
<michaelpj_> note that the `nixpkgs.overlays` attribute seemed to solve most of that person's problems. I think it's the nicest interface - it's just a shame there isn't an equivalent for nixpkgs simpliciter
gnuhurd has joined #nixos
thaega has joined #nixos
<FRidh> michaelpj_: because its not part of Nixpkgs config you need to do it explicitly: with import <nixpkgs> { overlays=[ ... ];};
nh2 has joined #nixos
<michaelpj_> sure - but there is some mechanism for picking up e.g. the overlays directory, so potentially it could also look for an overlays.nix
betaboon has joined #nixos
betaboon has quit [(Changing host)]
betaboon has joined #nixos
ThatDocsLady_mtg is now known as ThatDocsLady
<Infinisil> Doesn't work, ugh
filterfish has joined #nixos
<Infinisil> My config.nix looks normal now, no fancy stuff in there. And I have this file now: https://gist.github.com/2e1c4512552e37a6c1356e861fefd4ec
<cocreature> fwiw in case anybody stumbles upon a similar problem: my earlier issues about nix trying to search for dist-newstyle directories were caused by .ghc.environment.* files that cabal new-build annoyingly creates by default
<spacefrogg> Infinisil: and you point NIX_PATH to it?
<Infinisil> But the overlays aren't even touched, changing the path to an inexisting one doesnt' make it fail
<Infinisil> spacefrogg: nix-env -iA nixos.irssi -I nixpkgs=$(pwd)/nixpkgs.nix
<Infinisil> in the directory where this file is
<Infinisil> Well whatever, I may just give up on overlays, they're a pain to work with
<Infinisil> for non-configuration.nix at least
<tilpner> Infinisil - Try either using nixos=$(pwd)... or nixpkgs.irssi
betaboon^ has joined #nixos
<tilpner> (Right now your path and channel names don't match)
filterfish has quit [(Ping timeout: 240 seconds)]
betaboon has quit [(Ping timeout: 240 seconds)]
<Infinisil> nix-env -iA nixpkgs.irssi -I nixpkgs=$(pwd)/nixpkgs.nix
<Infinisil> error: attribute ‘nixpkgs’ in selection path ‘nixpkgs.irssi’ not found
erictapen has joined #nixos
<Infinisil> nix-env '<nixpkgs>' -iA irssi -I nixpkgs=$(pwd)/nixpkgs.nix
<Infinisil> error: attribute ‘<nixpkgs>’ in selection path ‘<nixpkgs>’ not found
<tilpner> Infinisil - Now you're defining nixpkgs via nixpkgs, that can't work (I shouldn't have suggested that). Try it with nixos?
<Infinisil> nix-env -iA something.irssi -I something=$(pwd)/nixpkgs.nix
<tilpner> (Your nixpkgs.nix tries to import itself recursively)
<Infinisil> error: attribute ‘something’ in selection path ‘something.irssi’ not found
<nixer> How do I get the $out location as a variable inside an expression?
<Infinisil> Eh, whatever, I don't care anymore
jensens has quit [(Ping timeout: 260 seconds)]
<tilpner> Infinisil - Oh, I remembered why I don't use nix-env. It ignores NIX_PATH, so passing -I something is completely useless. Sorry, I should've caught that earlier :/
<Infinisil> nixer: That's not possible
<tilpner> Infinisil - If you still want to try, make sure ~/.nix-defexpr contains one file with the content "import /path/to/your/nixpkgs.nix {}"
<Infinisil> nixer: Because the path is determined by the derivation inputs. If you had the path available in the derivation, then it would depend on itself, which is not possible
<tilpner> You could also use "import <nixpkgs> { overlays = import /path/to/my/overlays.nix }"
betaboon^ is now known as betaboon
<spacefrogg> tilpner: Yeah, nix-env uses -f for that purpose.
<Infinisil> I may have messed up my nix channels or whatever
<Infinisil> In .nix-defexpr I have two links channels and channels_root
<Infinisil> Actually no, I'll have to sleep eventually, this can wait
<Infinisil> See ya!
mpcsh has quit [(Quit: THE NUMERICONS! THEY'RE ATTACKING!)]
<tilpner> Uhh, okay
<Infinisil> Thanks for wanting to help :)
<Infinisil> I've been on this for like 8 hours now, I can't be bothered anymore
<Infinisil> Well maybe not that much, but still
mpcsh has joined #nixos
<Infinisil> What the hell is CTCP time
<tilpner> Shows your local time. You should sleep! :)
jensens has joined #nixos
<ikwildrpepper> where can I find the linux kernel config of current kernel again? always forget
Infinisil has quit [(Quit: leaving)]
<tilpner> ikwildrpepper - $ zcat /proc/config.gz
<ikwildrpepper> tilpner: thnx
MoreTea has joined #nixos
nh2 has quit [(Ping timeout: 240 seconds)]
filterfish has joined #nixos
filterfish has quit [(Remote host closed the connection)]
<kiloreux> error: opening lock file ‘vagrant/.nix-profile.lock’: No such file or directory
<kiloreux> Anyone knows what is the reason for this error ?
filterfish has joined #nixos
<spacefrogg> kiloreux: Some write protection maybe? Does the user own the directory?
<kiloreux> Yes, the users owns it.
eacameron has joined #nixos
<spacefrogg> No, nothing comes to my mind.
simukis has joined #nixos
snikkers has joined #nixos
eacameron has quit [(Ping timeout: 248 seconds)]
bruno-rino has joined #nixos
<Guanin> not that I know anything specific, but aren't lockfiles pretty volatile?
<kiloreux> Guanin, what are you trying to say :D ?
<Guanin> well, vagrant/.nix-profile.lock seems to be a lockfile - for a lockfile, it is normal to be deleted when the locked file does not need any protection anymore
<Guanin> as it seems that the folder vagrant exists, it seems to open a lockfile without creating it?
jensens has quit [(Ping timeout: 260 seconds)]
<kiloreux> Yeah same idea came to my mind
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] vbgl pushed 1 new commit to master: https://git.io/v7uqQ
<NixOS_GitHub> nixpkgs/master 45fb1c9 Yann Hodique: fzf: 0.16.10 -> 0.16.11
NixOS_GitHub has left #nixos []
<kiloreux> that's why i tried creating a bogus lockfile with touch but it still wasn't used
<kiloreux> same error
<Guanin> what process causes that error, by the way?
<kiloreux> Just running the standard installation script
<Guanin> and what is its working directory (maybe you suspect it in the wrong folder)
* Guanin looks up what vagrant is
betaboon has quit [(Quit: This computer has gone to sleep)]
<nixer> How do I set these load paths correctly https://gist.github.com/kskyten/91bfc5e4eb2ec8e1f2a3d58f82add70a?
<Guanin> kiloreux, sorry, can't really help, but if you look for "vagrant lock file", it seems like the project has one or two problems here and there with lockfiles (at first glance)
<kiloreux> Guanin, That's already enough as a lead thank you.
<Guanin> what i'd try at first is to find out what the working directory is, because if you only have a relative path, you can guess a lot about where it really looks for the file ;)
<tilpner> FRidh - Want to merge this? https://github.com/NixOS/nixpkgs/pull/27780
Wizek_ has joined #nixos
bruno-rino has quit [()]
filterfish has quit [(Remote host closed the connection)]
filterfish has joined #nixos
<seequ> As it turns out: Nix on Ubuntu on Windows doesn't really work
<nixer> Are the variables set in builder.sh local to the script (i.e I cant set environment variables for the final environment there)?
<adisbladis> seequ: Have you tried it on Nix on Ubuntu on Windows on Virtualbox on OSX?
<adisbladis> ;)
<seequ> nope
<Guanin> anyone here who got openldap in combination with users.ldap running for authentication?
<seequ> adisbladis: Ubuntu on Windows = WSL
<adisbladis> seequ: I know, I'm just kidding
<seequ> adisbladis: Thought so, but wasn't entirely sure ^^
erictapen has quit [(Ping timeout: 260 seconds)]
<hyper_ch> I like WSL :
<hyper_ch> finally I have great linux tools on my gaming box
<spacefrogg> Guanin: I do. Needs some hacking, though.
catch22 has joined #nixos
cpennington has joined #nixos
<Guanin> spacefrogg, as long as it is all within the single config, it is totally fine :)
filterfish has quit [(Ping timeout: 240 seconds)]
<Guanin> I just need something like ldap to have the same userset within gitlab, for example
<Guanin> so if you could share some config snippets, that would be awesome :)
erictapen has joined #nixos
<FRidh> nixer: let x = stdenv.mkDerivation {}; in x; $out and x point to the same path
<FRidh> tilpner: I like to wait a bit to see if there's feedback from others.
<nixer> FRidh: Thanks!
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh pushed 2 new commits to master: https://git.io/v7usJ
<NixOS_GitHub> nixpkgs/master 30f96ed André-Patrick Bubel: gutenprint: 5.2.11 -> 5.2.13
<NixOS_GitHub> nixpkgs/master 5ccd255 Frederik Rietdijk: Merge pull request #27867 from Moredread/gutenprint...
NixOS_GitHub has left #nixos []
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh pushed 1 new commit to release-17.03: https://git.io/v7usk
<NixOS_GitHub> nixpkgs/release-17.03 d956601 André-Patrick Bubel: gutenprint: 5.2.11 -> 5.2.13...
NixOS_GitHub has left #nixos []
peacememories has joined #nixos
vinymeuh has joined #nixos
peacememories has quit [(Client Quit)]
cfricke has quit [(Ping timeout: 255 seconds)]
<tilpner> FRidh - Okay. Do you think FHSUserEnv should be overridable too?
<tilpner> FRidh - Oh, and why will that rebuild much?
arximboldi has quit [(Quit: arximboldi)]
Wizek__ has joined #nixos
rjsalts has joined #nixos
peacememories has joined #nixos
<FRidh> tilpner: oh right, it won't.
<FRidh> just had another buildEnv PR that would
Wizek_ has quit [(Ping timeout: 240 seconds)]
<tilpner> Was that other PR merged already?
<FRidh> no
c0ffee152 has joined #nixos
<tilpner> Aww, that would've explained the Travis complaints :/
ertes has quit [(Ping timeout: 246 seconds)]
peacememories has quit [(Ping timeout: 240 seconds)]
Wizek__ has quit [(Ping timeout: 268 seconds)]
catch22 has quit [(Quit: Leaving)]
<seequ> Is there a good way to make a derivation that just has a single file in $out/bin/ that doesn't get sanitized?
<seequ> A static text file defined in the derivation.
<LnL> like writeScriptBin?
<seequ> Exactly.
<seequ> Does it sanitize $HOME?
<gchristensen> what do you mean by doesn't get sanitized
<seequ> gchristensen: `$HOME` gets turned to `/homeless-shelter`
<gchristensen> only during the build time
<seequ> it ends up in the result too if the builder just writes a file
<gchristensen> either that, or you have a bug where you're evaluating the value of `$HOME` during build time
<seequ> ..ah
<gchristensen> it sounds like maybe you're using ${HOME} inside '' quotes ''
<seequ> ''${HOME}
<gchristensen> maybe paste your code?
cfricke has joined #nixos
<seequ> Sec, I'm testing if writeScriptBin works and whether I've been a dummie
<MoreTea> let HOME="homesweethome" in (writeScriptBin "myscript" ''${HOME}'') ==> myscript with content "homesweethome"
<gchristensen> hmm actually
<gchristensen> ''${HOME}'' would happen at evaluation time, not build time, and homeless-shelter is only during build time
<MoreTea> If you'd put ''$HOME'', nix won't interpolate it, and then it depends on what kind of script you're writing. If it's a shell script, it'll probably point to your $HOME ;)
xd1le has joined #nixos
<MoreTea> ''${HOME}'' should result into an evaluation error.
peacememories has joined #nixos
<MoreTea> (unless you have defined HOME somewhere)
<gchristensen> yeah something funny is happening, let's see what seequ says.
babic has joined #nixos
<seequ> Okay, writeScriptBin worked
<gchristensen> nice
<seequ> With the same code
<gchristensen> one of the mysteries of the world
Myrl-saki has quit [(Ping timeout: 260 seconds)]
takle has quit [(Read error: Connection reset by peer)]
<xd1le> Hi all, I was wondering if anyone knows if it would be acceptable to package a zsh program for nixpkgs, or if that sort of stuff should not be packaged by Nix?
sary has quit [(Ping timeout: 240 seconds)]
iyzsong has joined #nixos
cfricke has quit [(Quit: WeeChat 1.9)]
cfricke has joined #nixos
<seequ> zml: Wait, you mean packaging zsh itself or a script that depends on zsh?
ertes-w has joined #nixos
<seequ> gchristensen: The problem was that when the string was slapped to the builder, it got evaluated when echoed to a file :P
<seequ> A simple oversight
<seequ> Err, I meant to ping xd1le, not zml
<gchristensen> seequ: oh yeah, that'll do ya :L
<gchristensen> :)
<xd1le> seequ: just a zsh script
<xd1le> babic: wow zsh-navigation-tools looks pretty cool
<seequ> xd1le: If it's a script that's useful to have installed, why not?
<xd1le> installation of it would mean adding it to the user's fpath, is that supported?
<xd1le> and also, it has a runtime dependency on python
<xd1le> so if I was to install it manually, i'd have to have python in my path just for that, but i'm assuming I can give it python separately?
<xd1le> seequ: true, thanks
<seequ> xd1le: ALl files in $out/bin/ get added to path. You can define dependencies in the derivation and it (should) fix the deps automagically
<xd1le> seequ: is it possible to make deer use python without adding python to the user's path, or are you saying no?
<xd1le> (nbd just curious)
<seequ> So basically you'd have stdenv.mkDerivation { buildInputs = [ python ]; src = ./theZshFile.sh; installPhase = ''mkdir -p $out/bin; cp theZshFile.sh $out/bin''; }
<seequ> It won't add python to the path.
<xd1le> seequ: oh nice
<xd1le> that's cool
<xd1le> seequ: this is not supposed to be added to the path though, it should be in fpath, do you know how to add it to that?
<xd1le> seequ: but that's really helpful, thanks!
<seequ> Ah.. No idea!
<seequ> I've never touched fpath
<xd1le> seequ: no worries
betaboon has joined #nixos
<xd1le> so I think I just found the answer to that through babic's link, copy it to $out/share/zsh/site-functions
<seequ> That'd make sense :)
<xd1le> i'm going to try this and report back
takle has joined #nixos
takle_ has joined #nixos
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
takle has quit [(Ping timeout: 258 seconds)]
c0ffee152 has quit [(Quit: Lost terminal)]
erictapen has quit [(Ping timeout: 258 seconds)]
peacememories has joined #nixos
betaboon has quit [(Quit: This computer has gone to sleep)]
kirchner has joined #nixos
cpennington has quit [(Remote host closed the connection)]
<GlennS> Can anyone give me a steer on what would be a good approach to debugging an audit-tmpdir.sh failure?
<GlennS> for example, is it run as part of stdenv's genericBuild?
<gchristensen> it is, GlennS
<gchristensen> it is dangerous to have references to the temporary build directory after it has built
<GlennS> makes sense
<GlennS> now I have to work out how it got in there
eschnett has quit [(Quit: eschnett)]
<gchristensen> can you paste the log?
<Mic92> dhess: simpson clever's version is more sophisticated.
<GlennS> gchristensen: do you mean the stdout from the nix-build command?
<GlennS> or is there a file somewhere?
<gchristensen> GlennS: the stdout would do (there is a log, but I don't remember how to get it, and if you have the stdout already it'll be easier)
Mateon3 has joined #nixos
<GlennS> the particular broken bit is RPATH of binary /nix/store/z8nwl6j05ap0v6n3z8kcx1k20m5mx91w-gdal-2.1.3/lib/libogrjni.so contains a forbidden reference to /tmp/nix-build-gdal-2.1.3.drv-0
<GlennS> the stdout is quite large...
Mateon2 has quit [(Ping timeout: 268 seconds)]
<gchristensen> oh well that is all we need :)
<GlennS> I have run `patch-elf --print-rpath $out/lib/libogrjni.so`
<GlennS> and found the offending reference
<gchristensen> perfect!
<GlennS> (this is not the GDAL which is in nixpkgs - I have modified it to include the Java bindings)
<gchristensen> GlennS: https://github.com/nixos/patchelf "In addition, the '--allowed-rpath-prefixes' option can be used for further rpath tuning. For instance, if an executable has an RPATH "/tmp/build-foo/.libs:/foo/lib", it is probably desirable to keep the "/foo/lib" reference instead of the "/tmp" entry. To accomplish that, use:
Mateon3 is now known as Mateon2
ixxie has joined #nixos
Ivanych has quit [(Ping timeout: 260 seconds)]
<__Sander__> hmm
<__Sander__> I didn't expect this
<__Sander__> created dysnomia as a prototype tool for managing small datasets
<gchristensen> oh?
<__Sander__> but the snapshot store I have to manager is now already close to 4 TiB in size :s
<gchristensen> :D
<avn> __Sander__: may be using git lfs and/or git annex for snapshots can be good idea?
<__Sander__> yeah there are countless of possibilities
<__Sander__> it's just that I told my coworkers here that it has limitations
<__Sander__> and is for small data only
<gchristensen> avn: my understanding is it is a bit "more" than something git would satisfy: https://github.com/svanderburg/dysnomia
<gchristensen> __Sander__: sounds like a testament to the success of your project :P
<__Sander__> hehe, well always good to hear that my work is appreciated
<gchristensen> users push projects beyond their intentions
<__Sander__> yes
<__Sander__> that's something I have learned quite a lot in the last 2 years or so
erictapen has joined #nixos
hamishmack has quit [(Ping timeout: 240 seconds)]
jensens has joined #nixos
hamishmack has joined #nixos
<gchristensen> can someone please patch Varnish on unstable and 17.03 to patch against a remote-crash DoS, revealed in a just-unembargoed vulnerability? https://varnish-cache.org/security/VSV00001.html
<gchristensen> unfortunately I'm unable to do so at this time
ixxie has quit [(Read error: Connection reset by peer)]
ixxie has joined #nixos
arximboldi has joined #nixos
eschnett has joined #nixos
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<ikwildrpepper> gchristensen: I can update nixpkgs-master to 5.1.3
vinymeuh has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<ikwildrpepper> however in 17.03 we seem to have 5.0.0 which is dead for a year already (unmaintaineed
<MoreTea> ikwildrpepper gchristensen I'm patching 5.0.0
<gchristensen> ack! that is not a good position. oh wonderful,
<gchristensen> thank you ikwildrpepper + MoreTea!
<ikwildrpepper> MoreTea: ty
<MoreTea> I'm wondering, how do you do this in general?
<gchristensen> what do you mean?
<MoreTea> I did a nix-shell -A varnish, then `mkdir x; cd x; unpackPhase`
<MoreTea> adding a patch to a package.
<gchristensen> oh I do it a stupid way :P
<ikwildrpepper> I usually just use patches attribute and nix-build
<ikwildrpepper> perhaps I don't get the question :)
<gchristensen> MoreTea: http://memecrunch.com/meme/16RSF/i-have-no-idea-what-i-m-doing/image.png so I unpack the source, git init, add everything , commit, edit the code, commit, then use git's format-patch to create a .patch file
<MoreTea> I see.
<Dezgeg> yeah I use git as well
<FRidh> same
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] rbvermaa pushed 1 new commit to master: https://git.io/v7uE6
<NixOS_GitHub> nixpkgs/master 3906aac Rob Vermaas: varnish: Update to 5.1.2: https://varnish-cache.org/security/VSV00001.html
NixOS_GitHub has left #nixos []
<ikwildrpepper> I just create patch with diff -rc with old and new dir
nh2 has joined #nixos
<gchristensen> good thing somebody here knows what their doing
<gchristensen> they're*
<ikwildrpepper> I don't
<ikwildrpepper> I just do something :p
<MoreTea> are there maintainer scripts for this workflow?
<gchristensen> we don't write many of our own patches, no
<ikwildrpepper> doubt it. but it's not like it is that time-consuming or difficult :D
<ikwildrpepper> anyway, most patches I've added were pretty trivial
<ikwildrpepper> so they didn't require much work
pie_ has quit [(Ping timeout: 240 seconds)]
<spacefrogg> gchristensen: I found emacs very suitable for creating diffs.
<gchristensen> huh, cool, where can I read up on that?
<gchristensen> so this is Varnish Security Issue #1 which is crazy: " embarrased as I am to find out that after 35 years of writing C-programs I still dont understand signed/unsigned variables, I am also incredibly proud that it took eleven years before Varnish had a major security incident." http://varnish-cache.org/docs/trunk/phk/VSV00001.html
<spacefrogg> You just save the original files as foo.orig and modify the real ones. Then M-x diff and it will guide you.
<gchristensen> whoa very cool
<spacefrogg> The real benefit is that you can edit a diff in emacs and it will keep it sane for you.
<ikwildrpepper> embarrassed to say I never used varnish
<gchristensen> it is quite nicely done
peacememories has joined #nixos
<gchristensen> see also 11 years of no serious security issues while being widely deployed as first-line defenses
<FRidh> oops
<FRidh> removed an attribute from python.buildEnv that is actually quite useful...
ixxie has quit [(Quit: Lost terminal)]
<MoreTea> so I should do a pullrequest against release-17.03, right?
<gchristensen> MoreTea: sure
<gchristensen> MoreTea: do you have merge rights? I forget
<MoreTea> nope
<gchristensen> hrm
erictapen has quit [(Remote host closed the connection)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] moretea opened pull request #27871: Patch varnish vulnerability (release-17.03...varnish-17.03) https://git.io/v7uzB
NixOS_GitHub has left #nixos []
<FRidh> modifying passthru wouldn't cause a rebuild of the derivation, right?
<gchristensen> don't think so, FRidh
<MoreTea> @gchristensen, ikwildrpepper is that diff patch correct like this?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nix] domenkozar pushed 2 new commits to 1.11-maintenance: https://git.io/v7uzK
<NixOS_GitHub> nix/1.11-maintenance de4e706 Neil Mayhew: Propagate NIX_BUILD_CORES to nix-shell environments
<NixOS_GitHub> nix/1.11-maintenance 3afb744 Domen Kožar: Merge pull request #1313 from neilmayhew/topic/cores...
NixOS_GitHub has left #nixos []
<MoreTea> It mentions two different directories
<gchristensen> the `varnish-5.0.0-patched` is stripped
pie_ has joined #nixos
pie__ has joined #nixos
pie__ has quit [(Remote host closed the connection)]
cpennington has joined #nixos
<gchristensen> MoreTea: testing your patch now
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] FRidh pushed 1 new commit to staging: https://git.io/v7ugZ
<NixOS_GitHub> nixpkgs/staging 6e6271e Frederik Rietdijk: python.buildEnv: undo removal of passthru.python
NixOS_GitHub has left #nixos []
erictapen has joined #nixos
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<peti> niksnut, ikwildrpepper: I'm worried about "evaluation failed with exit code 255" at https://hydra.nixos.org/jobset/nixpkgs/pr-27209#tabs-errors. That error doesn't go away even though evaluating the jobset seems to succeed?
phinxy has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] grahamc pushed 2 new commits to release-17.03: https://git.io/v7ugo
<NixOS_GitHub> nixpkgs/release-17.03 b6b2da8 Maarten Hoogendoorn: patch varnish vulnerability
<NixOS_GitHub> nixpkgs/release-17.03 3a3d021 Graham Christensen: Merge pull request #27871 from moretea/varnish-17.03...
NixOS_GitHub has left #nixos []
<MoreTea> gchristensen, jeej
<MoreTea> peti, those pr-xxxx jobsets, are they created manually?
<gchristensen> they are
<MoreTea> ok :)
<gchristensen> MoreTea: thank you :)
<kiloreux> Can I remove the result link of nix-build without the risk of /nix/store link to be deleted when I ran garbage collection ?
<peti> MoreTea: Yes.
<kiloreux> I just need to use the path directly without the result directory.
<peti> kiloreux: No. If you need your build result to persist, then use "nix-env -p $NIX_USER_PROFILE_DIR/foo -i ...".
peacememories has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lsix opened pull request #27872: freerdp: 20170502 -> 20170724 (master...update_freerdp) https://git.io/v7u2A
NixOS_GitHub has left #nixos []
FRidh has quit [(Quit: Konversation terminated!)]
earldouglas has joined #nixos
eacameron has joined #nixos
<kiloreux> What should the NIX_USER_PROFILE_DIR be ?
<srhb> kiloreux: Typically /nix/var/nix/profiles/per-user/username
<srhb> It's not something you usually set..
<kiloreux> and what should come after the -i flag ?
<kiloreux> the directory of my default.nix ?
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] peti pushed 1 new commit to master: https://git.io/v7urz
<NixOS_GitHub> nixpkgs/master be0071c Peter Simons: wiggle: fix build...
NixOS_GitHub has left #nixos []
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
reinhardt has joined #nixos
joehh has quit [(Ping timeout: 246 seconds)]
goibhniu1 has joined #nixos
goibhniu has quit [(Ping timeout: 260 seconds)]
filterfish has joined #nixos
reinzelmann has quit [(Ping timeout: 260 seconds)]
goibhniu1 is now known as goibhniu
<domenkozar> anyone has a oneliner how to delete all drv files?
<peti> kiloreux: man nix-env
joehh has joined #nixos
<domenkozar> bennofs[m]: did you figure this out? :)
reinhardt has quit [(Remote host closed the connection)]
<domenkozar> mkay found a way
<domenkozar> so here's a quick story
dbmikus has joined #nixos
<domenkozar> on the hydra I run (https://ci.enlambda.com/)
<domenkozar> we have 2.5M files in /nix/store
<xd1le> hmm didn't work "command not found: python"
<domenkozar> turns out ext4 has this default feature called dir_index
<xd1le> seequ: cc ^
<domenkozar> that uses htree, which stores hashes of directory names in 32bit value
<domenkozar> and turns out at ~10M those start to collide
<LnL> delete drv files?
<xd1le> So I have a package with a runtime dependency on the "python", but it's not finding python with buildInputs = [ perl python ];, what do
peacememories has joined #nixos
<LnL> why do you need that?
HurricaneHarry has quit [(Ping timeout: 246 seconds)]
<xd1le> domenkozar: that's dumb
<domenkozar> LnL: to get rid of files :D
<LnL> ah, that's why you hit the ext limit
<domenkozar> yeah that should cut down probability to hit the limit
<LnL> thought I mentioned it yesterday
<domenkozar> yeah I just didn't know how
joehh has quit [(Ping timeout: 240 seconds)]
earldouglas has quit [(Quit: leaving)]
takle has joined #nixos
<LnL> does't a normal gc delete all drv files?
<domenkozar> don't want to do a normal gc on hydra as it will delete store paths
<LnL> hydra creates gcroots
<Dezgeg> maybe nix-store --gc --print-dead and nix-store --delete on whatever you want
takle_ has quit [(Ping timeout: 240 seconds)]
earldouglas has joined #nixos
<LnL> that also works with a grep '.drv$'
<domenkozar> LnL: yeah but it respects the "keep number of evaluations"
<domenkozar> afaik
<phreedom> thoughtpolice: have you actually gotten clang-analyzer to work? any examples?
<domenkozar> Dezgeg: yeah I used nix-store --gc --print-dead and it was also stuff that I don't want to be deleted
<LnL> I hope so :p
tvon has joined #nixos
<domenkozar> :D
silver_hook has joined #nixos
silver_hook has quit [(Changing host)]
silver_hook has joined #nixos
Rotaerk_ has quit [(Quit: Leaving)]
<xd1le> xd1le: I think it might be related to fpath, in that installing it only means you can load it (from zsh). And so when it's looking for python, it's looking for it from the user's $PATH. :/
zraexy has quit [(Ping timeout: 240 seconds)]
<xd1le> Is it possible to add a dependency to the $PATH?
<xd1le> (just tried propagatedBuildInputs, didn't work)
acowley_away has quit [(Ping timeout: 240 seconds)]
takle_ has joined #nixos
rpifan has joined #nixos
ebzzry has joined #nixos
acowley_away has joined #nixos
takle has quit [(Ping timeout: 258 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] globin pushed 1 new commit to staging: https://git.io/v7uPK
<NixOS_GitHub> nixpkgs/staging 5d91e80 Robin Gloster: Revert "gnome-tweak-tool: fix eval"...
NixOS_GitHub has left #nixos []
FRidh has joined #nixos
MoreTea has quit [(Ping timeout: 276 seconds)]
<FRidh> xd1le: buildInputs adds the items during build to PATH. But you need it during runtime. There's two solutions here really, either you wrap executables and add python to PATH, or you patch the code that has references to python and replace them with a link to python. The latter has the preference typically.
filterfish has quit [(Ping timeout: 255 seconds)]
phreedom has quit [(Ping timeout: 268 seconds)]
ixxie has joined #nixos
cfricke has quit [(Ping timeout: 240 seconds)]
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03-small advanced to https://github.com/NixOS/nixpkgs/commit/d95660168d (from 4 hours ago, history: https://channels.nix.gsc.io/nixos-17.03-small)
nix-gsc-io`bot has quit [(Client Quit)]
phreedom has joined #nixos
MoreTea has joined #nixos
Gravious has joined #nixos
<gchristensen> Gravious: do you have a copy of nix already?
<Gravious> not on this machine! :<
<gchristensen> if you have another machine + a usb stick you can do `nix-store -r /nix/store/w6410i2lk4lqdiqbb3y549gq8gr3fwfx-nix-binary-tarball-1.11.2` on the other machine and copy the tarball over
<gchristensen> otherwise, how did you get this URL? is there a website / docs issue?
<Gravious> (linked from nix pill #2)
<gchristensen> ohhh wow that is unfortunate
<gchristensen> can you link me to the nix pill?
<LnL> that has not worked for a while now
<gchristensen> Gravious: https://nixos.org/nix/ click Get Nix and go from there please :)
<Gravious> okay :)
<LnL> I think hydra stopped writing to disk almost a year ago
<gchristensen> I'll try reaching out to lethalman about fixing the post (maybe even incorporating them in to the docs, or a series on the website or something where we can maintain them)
<Gravious> cool :)
<LnL> yeah, the nix pills are great
<LnL> would be a shame if they get out of date
<gchristensen> s/get/stayed/
<MoreTea> gchristensen, that would be awesome
ryannx has joined #nixos
Guest99571 is now known as grahamc
grahamc has quit [(Changing host)]
grahamc has joined #nixos
grahamc has quit [(Changing host)]
grahamc has joined #nixos
<ryannx> Gah - spent hours on this, about to give up - livecd has working touchpad on my xps 15, but once installed, no dice
<ryannx> Touchscreen works, and clicking as well, but no movement
erictapen has quit [(Ping timeout: 248 seconds)]
<ryannx> it's picked up in xinput, but doesn't show up in the kde system settings panel
<goibhniu> ryannx: I wonder if you need to enable synaptics: services.xserver.synaptics.enable = true;
* goibhniu knows there are a few people here with XPS 15 notebooks
<ryannx> Tried both that and libinput
<LnL> didn't gchristensen make a guide
<LnL> or is that another model?
<gchristensen> I have the 9560, what do you have ryannx?
<ryannx> 9350
<ryannx> With touchscreen
<gchristensen> I don't know what is different but maybe http://grahamc.com/blog/nixos-on-dell-9560 would be useful
<ryannx> Yeah, I saw the guide, a quick read through made setup seem not too difficult
<ryannx> And it was fine on the live env...
cinimod has joined #nixos
<gchristensen> I'm sorry it isn't working right :/ we could compare how the live env is built to how your env is built
<ryannx> Would the rebuild have installed a newer kernel
<ryannx> The only difference is kernel modules in the hardware config, but none of them stick out
<ryannx> other than possibly usbhid
<ryannx> I think kernel version (if different) is a more likely culprit
<gchristensen> ryannx: have you already vetted the differences between the live-env config and your config?
<ryannx> In configuration.nix, all the same options are set
<gchristensen> can you paste those options? it is quite likely (and misleadingly) a different set of options
<ryannx> Ok, will do
<xd1le> FRidh: thank you. how do I get the appropriate link to python?
ryannix2 has joined #nixos
<ryannix2> hmm, immediately pasting a link is not a great idea, hah
<gchristensen> lol :)
<ryannix2> Would noveau break the touchpad?
<ryannix2> Yeah, I don't get the not-detected scan enabling firmware, kind of counter intuitive?
<ixxie> I have a 9350 :)
justelex has joined #nixos
<gchristensen> ixxie, meet ryannix2. ryannix2, meet ixxie :)
<ryannix2> Awesome!
<ryannix2> Your touchpad working alright?
<FRidh> xd1le: the derivation is pkgs.python and the actual interpreter (/bin/python) is pkgs.python.interpreter
<xd1le> FRidh: and how do I put that in the source code
<xd1le> FRidh: ah so I should specify the patch contents inline
tvon_ has joined #nixos
<xd1le> and concatenate strings in the nix expression?
<ixxie> ryannix2: indeed it is
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03-small advanced to https://github.com/NixOS/nixpkgs/commit/3a3d021bf3 (from 2 hours ago, history: https://channels.nix.gsc.io/nixos-17.03-small)
nix-gsc-io`bot has quit [(Client Quit)]
<ryannix2> Any special tweaks? Kernel version?
<gchristensen> maybe share your configuration.nix :)
<gchristensen> ( ixxie ^)
<ixxie> ryannix2: the one thing I found annoying with this touchpad is that I found myself accidently pressing the center button when I really wanted to left one, so I mapped it to the left button
<ixxie> ryannix2: services.xserver.libinput.buttonMapping = "1 1 3 4 5 6 7 8 9";
athan has quit [(Quit: Lost terminal)]
<ixxie> ryannix2: otherwise, nothing special, although I do have hardware.enableAllFirmware = true;
<ixxie> which may or may not have solved something
<ixxie> I don't remember >.<
tvon has quit [(Ping timeout: 240 seconds)]
<ryannix2> But from what I understand, my hardware-configuration imports scan/not-detected, which enables hardware.enableAllFirmware
<gchristensen> no, that enables hardware.enableRedistributableFirmware
<goibhniu> ryannix2: you can verify with `nixos-option hardware.enableAllFirmware`
athan has joined #nixos
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03 advanced to https://github.com/NixOS/nixpkgs/commit/5eb78b6997 (from 18 hours ago, history: https://channels.nix.gsc.io/nixos-17.03)
nix-gsc-io`bot has quit [(Client Quit)]
<ixxie> ryannix2: one thing I noticed since a few months, is udev is hanging for a few seconds on boot, and this is associated with a weird systemd error on nixos-rebuild
nslqqq has quit [(Ping timeout: 240 seconds)]
<ixxie> ryannix2: I have been meaning to see if explicitly activating synaptics would help
anelson has quit [(Ping timeout: 246 seconds)]
<xd1le> FRidh: I have to leave now, but I will check the logs later :)
xd1le has quit [()]
<ixxie> but I am contenting with some issue with google chrome refusing to build atm, so I have rolled back and rebuilding at this point would leave me without my configured browser >.<
<gchristensen> ixxie: let's focus on getting their trackpad working, then dive in to slight annoyances :P
<ryannix2> hrm, goibhniu, seems like enableAllFirmware is not enabled after all...
<ryannix2> Let me try switching
<ixxie> this is my configuration
<ixxie> not that it would help much, I just told you all the 9350 specific stuff
<ixxie> gchristensen: ah yes :P
<clever> ryannix2: does configuration.nix refer to hardware-configuration.nix
<ryannix2> thanks ixxie
<ryannix2> clever: yup, in the imports
<clever> ryannix2: nix-instantiate '<nixpkgs/nixos>' -A system -v 2>&1 | gist -p -
<gchristensen> ryannix2: a much more cross-platform one, for the (majority of) users which don't have `gist`: | curl -F 'f:1=<-' ix.io
<clever> though if its a nixos problem, nix-env -iA nixos.gist
rpifan has quit [(Ping timeout: 246 seconds)]
tvon has joined #nixos
<copumpkin> if I want my NixOS NTP to get set from dhcp
<copumpkin> how can I do that?
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<clever> copumpkin: i think this hook gets ran when you receive a lease, and it may have access to that data: https://github.com/NixOS/nixpkgs/blob/release-17.03/nixos/modules/services/networking/dhcpcd.nix#L140-L148
tvon_ has quit [(Ping timeout: 248 seconds)]
<copumpkin> not sure why
<clever> thats just to restart them
<clever> ntp can easily get hung, and just gives up retrying
<clever> and when the network comes back up, dhcp has to kick it in the ass
<ixxie> gchristensen: would it make any sense for us to compare our hardware-configuration.nix?
snikkers has quit [(Remote host closed the connection)]
ryannix2 has quit [(Ping timeout: 260 seconds)]
<copumpkin> yeah I know
<clever> $ dhcpcd -U enp3s0
<clever> domain_name_servers='192.168.2.1 8.8.8.8 8.8.4.4'
<ryannx> clever / gchristensen: http://ix.io/yQy
<copumpkin> yeah :) still not sure how to learn the advertised NTP parameters from there
<clever> copumpkin: you can also query the dhcp lease like this
<clever> copumpkin: and you could put a pre-start on ntp, to query and self-configure
<ryannx> Pretty cool cli fu there
iyzsong has quit [(Ping timeout: 246 seconds)]
nslqqq has joined #nixos
peacememories has joined #nixos
<copumpkin> clever: makes sense I think
<copumpkin> still a bit awkward
<copumpkin> wtf, I created a ticket for this
<copumpkin> but github lost it
<Dezgeg> maybe timesyncd can do it?
erictapen has joined #nixos
<copumpkin> the internets seem to think it can
cfricke has joined #nixos
<copumpkin> but not our timesyncd module
<clever> copumpkin: and its not on https://github.com/issues ?
<domenkozar> I finally understand why noone has implemented route53 in nixops correctly
<copumpkin> no it appeared
<domenkozar> this thing is magic
<copumpkin> domenkozar: it has a fugly API?
<gchristensen> nixops is?
<gchristensen> or r53?
<gchristensen> or both :)
<copumpkin> the r53 API is amazingly painful to use
<domenkozar> yes
<copumpkin> like, impressively bad
<domenkozar> yes
<domenkozar> it's one of the worst apis I've seen
<copumpkin> :D
<domenkozar> it feels like digesting something internal that's not supposed to leak out
<domenkozar> with most confusing terminology
<domenkozar> "document"
<gchristensen> I mean the thing is it has to boil down to a reasonable DNS state change
<domenkozar> I mean how overloaded can you be
<domenkozar> everything is stringly typed
<gchristensen> so yes their API adds a bit of pain, but DNS state changes are pain all on their own
<clever> i usually manage the zone file directly, and then rebuild-switch
<gchristensen> it is hard to put better types on top of DNS when people have legitimate claims to be doing insane shit
<clever> but i havent messed with latency or geolocation based routing
<clever> can bind even do those?
<ikwildrpepper> domenkozar: yeah, r53 is mindblowing
ThatDocsLady has quit [(Quit: Arma-geddin-outta-here!)]
<domenkozar> I'll implement it
<domenkozar> but don't expect me to age
<copumpkin> \o/
<ikwildrpepper> all hail domenkozar!
<copumpkin> !M domenkozar
<gchristensen> to age?
<[0__0]> You're doing good work, domenkozar!
<copumpkin> big M is more hardcore
justelex has quit [(Read error: Connection reset by peer)]
<ikwildrpepper> will probably cost domenkozar a year or 3 of his life
justelex has joined #nixos
<gchristensen> oh I get it :)
<gchristensen> <3 domenkozar
Fare has joined #nixos
nixer has quit [(Ping timeout: 260 seconds)]
<gchristensen> fighting the good fight against eris
<domenkozar> clever: you need client support
<clever> geolocation based routing could be done entirely within bind, just define what subnets get what subset of the results, but yeah, that could be messy without a subnet to location db
<clever> latency based routing sounds more tricky
<domenkozar> you're right :)
ebzzry has quit [(Ping timeout: 260 seconds)]
<clever> domenkozar: i also had an idea a while back on how to manage round-robin via nixops, rather then try to update the A records within the RR when an EIP changes
<clever> domenkozar: you make the RR a list of aliases, pointing to subdomains with A records
<domenkozar> that's what I'll implement
<clever> then the EIP will always update 1 subdomain A
<clever> and the RR is a single entity, that only changes when the list of targets changes, but not what IP they have
mkoenig has quit [(Remote host closed the connection)]
Sonarpulse has joined #nixos
<clever> now you can easily update 1 ip, without having to know the old IP your trying to overwrite
<copumpkin> or stuff an ELB in the path ;)
mkoenig has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] P-E-Meunier opened pull request #27875: Gwyddion: init at 2.48 (master...gwyddion) https://git.io/v7uN2
NixOS_GitHub has left #nixos []
<clever> copumpkin: ELB has a thruput limit and can be maxed out, and it takes time to spin up more ELB's
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] P-E-Meunier closed pull request #27875: Gwyddion: init at 2.48 (master...gwyddion) https://git.io/v7uN2
NixOS_GitHub has left #nixos []
<copumpkin> you can warm them up
<copumpkin> you don't need to do much beyond that (if you mean spin up more back-end nodes)
<clever> i was thinking in terms of using ELB to filterer a ddos
<copumpkin> oh, probably not that :)
jgertm has joined #nixos
tmaekawa has joined #nixos
Filystyn has joined #nixos
<gchristensen> you can have support crank it up
<gchristensen> (if you're seriously interested in DDoS mitigation in AWS, they have a whitepaper on it)
ixxie has quit [(Ping timeout: 276 seconds)]
charlycoste has quit [(Quit: Leaving.)]
<clever> yeah, aws shield, came out in december
cpennington has quit [(Ping timeout: 260 seconds)]
<gchristensen> your wallet might prefer it if you are not able to mitigate it of course
<gchristensen> (ie: you just go down)
<clever> yeah, depends a lot on how many 9's you want
earldouglas has quit [(Quit: leaving)]
<copumpkin> 0 9s
<domenkozar> it's 3k per month
<clever> 9 9's is insane, lol
<clever> 31.5 milisec of downtime per year!!!
<gchristensen> IIRC google shoots for 4
<grantwu> Depends on what for.
<gchristensen> doesn't everything
<grantwu> I meant, google's internal availability targets differ
<clever> even my power company gets between 2 and 3 9's
<grantwu> Depending on the service
<gchristensen> grantwu: of course it does, my "doesn't everything" was in agreement :)
<clever> if i wanted to host something better then 2 9's, id need a beefy UPS or generator
peacememories has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
earldouglas has joined #nixos
ixxie has joined #nixos
MoreTea has quit [(Ping timeout: 260 seconds)]
vinymeuh has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] joachifm opened pull request #27876: libsodium: 1.0.12 -> 1.0.13 (master...libsodium-1_0_13) https://git.io/v7uh1
NixOS_GitHub has left #nixos []
<seequ> 9 9's? Erlang :P
<gchristensen> I worked for a wordpress hosting company once and someone wanted to hire us to be their host, but they demanding 9 9's
<grantwu> give them 9 5s
<gchristensen> 95.99999999
<copumpkin> 0.999999999
<copumpkin> %
<copumpkin> ;)
<seequ> Sell it as 9 9s, provide 4 9s, they wouldn't even notice
<gchristensen> their 9-monitor isn't even going to be up for 9-9s
<maurer> I'd guess if they were demanding 9 9s, their point would be that 9 9s would never happen, and they'd set up a monitoring service so that if they ever caught you down, they didn't have to pay
__Sander__ has quit [(Quit: Konversation terminated!)]
<clever> seequ: i could measure a difference between 4 and 5 9's
<clever> but past 5, things get tricky
<seequ> clever: Was bit of a joke, but yeah, 5 9s is already super good
<maurer> they don't actually need to validate 9 9s, it just means that if they ever catch you down they'll claim you didn't hold up your end of the deal and not pay
<gchristensen> ^
<seequ> The problem there is that they'd have to show that the problem was on your end
<gchristensen> that isn't how it works for someone expecting 9 9s
<seequ> Which on these timeframes is hard
cpennington has joined #nixos
<clever> past 7 9's, its hard to tell an outage apart from just pure latency
cfricke has quit [(Ping timeout: 240 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] jgeerds pushed 1 new commit to master: https://git.io/v7ujS
<NixOS_GitHub> nixpkgs/master 0854c85 Jascha Geerds: gnome3: Remove myself from maintainer list
NixOS_GitHub has left #nixos []
<gchristensen> ^ that is very bad
<gchristensen> no active gnome maintainers are left
<seequ> D:
<clever> i jumped ship when gnome turned into windows 10, lol
<gchristensen> you were never listed as a gnome maintainer IIRC
<clever> i had been using gnome-panel since 2004, and was always graphing the cpu/memory usage
<clever> but when they updated, i ditched gnome and went all xfce
<clever> and i havent gone back
<gchristensen> that is fine
digitus has joined #nixos
<gchristensen> but many users like gnome and we have nobody committed to supporting it
<gchristensen> we're in a very similar and perilous situation with kde
<gchristensen> this should be scary
ambro718 has joined #nixos
<seequ> Hmh, I guess only powerusers care to maintain them and they are less likely to use them
<gchristensen> something to chew on: how do we reward, encourage, and support long-term maintainership and the people who take that on
<gchristensen> how do we avoid burning out people like lethalman and jgeerds and ttuegal
goibhniu has quit [(Ping timeout: 255 seconds)]
<michaelpj_> surely packaging these things is pretty gnarly for any OS - but someone must do it for debian etc. tbh, I'm kind of amazed by that too
<gchristensen> debian is helped by many packagers on debian are the developers on the project
<gchristensen> redhat is helped by having $$$$$$$$$ to pay people to deal with it
jgertm has quit [(Ping timeout: 246 seconds)]
<domenkozar> good, everyone is on i3 :D
<gchristensen> :/
<seequ> I switched to i3 a week back. It's wonderful.
<gchristensen> gnome/kde maintainership is far more than just the DE/DM
zeus_ has joined #nixos
<gnuhurd> the Emacs X Window Manager is superior to i3
<gnuhurd> i3 is a hack
<gchristensen> I feel this is much more important than people are treating it
<seequ> gchristensen: I understand that it is very important, but I didn't have anything useful to say regarding it.
<GlennS> It seems to me like the skills needed to maintain things on nixpkgs are quite a rare subset
<ryannx> gchristensen / clever: touchpad works in Weston :P
<ryannx> so something's screwy in x or kde
<GlennS> Nix itself is quite difficult to get into, Nixpkgs has its own set of tools and conventions, and most of the packages seem to involve knowing the C++ / make / M4 / automake / autotools toolchain
nixer has joined #nixos
<GlennS> oh and on top of all that you also need to know how to write non-trash shell scripts
<seequ> An updated documentation that took conventions to account would help
jgertm has joined #nixos
<fpletz> but it's the same with debian or other distros… own set of tools, convenstions, and to package software you need to know the build systems :)
<fpletz> most of the bigger ones have better docmention and a bigger community to offset this, though
<adisbladis> Taking on something like kde would be a very daunting task even with all the right skills... That thing is huge
nschoe has quit [(Quit: Program. Terminated.)]
<gchristensen> I wonder if several people are interested in collective maintainership, but b/c there are so few people, they're not interested in adding their name
<gchristensen> but maybe if the job was smaller more people would do it
<aszlig> ixxie: yep, they regularily clear the old tarballs/binary from their site
<Fare> is there a way to programmatically update a package only the version of which has changed?
<Fare> (given fairly standardly templated source code)
<gchristensen> some packages have support for that
<gchristensen> but I don't know if it is standardized
<Fare> and, to start with, is there a good way to extract the "wrong" checksum (or the "right" checksum) after updating the source?
<Fare> gchristensen, what packages do that?
<gchristensen> firefox-bin for example
<adisbladis> All of the kde packages and qt too
Sonarpulse has quit [(Ping timeout: 246 seconds)]
nix-gsc-io`bot has joined #nixos
<nix-gsc-io`bot> Channel nixos-17.03 advanced to https://github.com/NixOS/nixpkgs/commit/d95660168d (from 6 hours ago, history: https://channels.nix.gsc.io/nixos-17.03)
nix-gsc-io`bot has quit [(Client Quit)]
<gchristensen> and emacs packages
justelex has quit [(Quit: Konversation terminated!)]
justelex_ has joined #nixos
<Fare> gchristensen, where are the scripts to update them?
tmaekawa has quit [(Ping timeout: 260 seconds)]
babic has quit [(Ping timeout: 260 seconds)]
<gchristensen> Fare: I'm not sure
<clever> something i have thought of, is to always include the commands you ran to generate in the commit message, along with any inputs needed to ensure its 100% reproducible
<clever> both so people can reproduce the changes and confirm its not been tampered with, and so anybody can generate the next version
anelson has joined #nixos
<gchristensen> good idea
<copumpkin> 👍
<FRidh> for quite some package sets there are update scripts
HurricaneHarry has joined #nixos
<clever> FRidh: there are also horid messes like the xorg packages, which have been heavily modified after the last auto-update
<clever> i tried running the update script, and it just broke everything
<gchristensen> a solution is to run the updater enough to prevent that sort of thing, even if there are no changes
<ryannx> Heh, pretty surprised that wayland with kde is kind of usable
<clever> gchristensen: a secondary issue, is that the auto-generated thing pulled in deprecated packages
<clever> gchristensen: foo got merged into bar, and is now just --enable foo
<clever> but nixpkgs isnt aware of that, and keeps building the out-dated foo, and the new bar without --enable-foo
<clever> that is the exact cause of my horid fps in xterm
<clever> turning gpu accel off made it faster
ison111 has joined #nixos
ison111 has left #nixos []
jgertm has quit [(Ping timeout: 260 seconds)]
<mpcsh> hey - anyone here use compton? the package installs fine but when I actually run the binary it doesn't do anything :/
<clever> mpcsh: if you run "strace -ff -o logfile compton" it should produce a bunch of logs, can you run "gist -p logfiles*" to upload them all?
Filystyn has quit [(Read error: Connection reset by peer)]
<mpcsh> clever: I'm not sure what to make of all that
Filystyn has joined #nixos
Filystyn has quit [(Changing host)]
Filystyn has joined #nixos
ambro718 has quit [(Ping timeout: 260 seconds)]
<clever> at line 760, i can see it connecting to X
<clever> it appears to connect and "run"
<mpcsh> clever: and below are a bunch of EAGAIN's, is it missing a file?
<adisbladis> mpcsh: EAGAIN is normal behaviour in non-blocking io
ryannx has quit [(Quit: Page closed)]
<adisbladis> It basically mean I have no data for you now, poll me later
<nixer> Is there some way to avoid the double build here: https://gist.github.com/kskyten/d53bfd0ce1e9851a7187d09578d4c6e5 ? What does the postFixup do?
digitus has quit [(Quit: digitus)]
ixxie has quit [(Quit: Lost terminal)]
cpennington has quit [(Ping timeout: 246 seconds)]
<clever> nixer: that just copied the propagatedNativeBuildInputs to the propagatedUserEnv, which i avoid using at all costs
Arcaelyx has joined #nixos
<nixer> clever: the postFixup you mean?
<clever> yeah
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] lo1tuma opened pull request #27877: dockerTools: fix image json and image manifest (master...fix-dockertools) https://git.io/v7zYb
NixOS_GitHub has left #nixos []
<nixer> Ok, I'll get rid of it then. The expression sets the load path correctly and seems to be building, but there must be a better way of doing this.
<clever> nixer: why is line 44 refering to the self derivation?
Mic92 has quit [(Quit: WeeChat 1.9)]
<nixer> I need to add $out/src to the load path and I couldn't figure out any other way of doing it.
cpennington has joined #nixos
<clever> nixer: copy the src to $out/src before you build
<clever> like preConfigure
zraexy has joined #nixos
<nixer> clever: Do you mean copy in the inner mkDerivation? I still need the refer to the $out location somehow, right?
jgertm has joined #nixos
<clever> ditch one derivation entirely
<clever> and copy at the start of one, then use it later
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] joachifm pushed 1 new commit to master: https://git.io/v7zGE
<NixOS_GitHub> nixpkgs/master 4751fca Joachim Fasting: tor: 0.3.0.9 -> 0.3.0.10...
NixOS_GitHub has left #nixos []
kirchner has quit [(Quit: leaving)]
rigelk has joined #nixos
tvon has quit [(Read error: Connection reset by peer)]
tvon has joined #nixos
Mic92 has joined #nixos
<copumpkin> isn't there a packages.json somewhere on a channel?
<copumpkin> that spits out a full list of packages and associated versions
justelex_ has quit [(Read error: Connection reset by peer)]
justelex_ has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] joachifm closed pull request #27862: restic: 0.7.0 -> 0.7.1 (master...upgrade-restic) https://git.io/v7EFf
NixOS_GitHub has left #nixos []
stanibanani has joined #nixos
<copumpkin> oh! I thought it was one level down under channels :)
<copumpkin> but yes, thanks!
<copumpkin> is there a versioned equivalent of that?
<seequ> Wait, does that contain all channels?
<copumpkin> and/or what generates it?
<nixer> clever: I still don't quite understand. To my understanding the $out file is determined by all the inputs to the derivation. I need to refer to this location when I set the environment variable. Refering to this inside a single derivation is impossible as it would be self-referential.
<seequ> nixer: $out is the path your derivation should output to
<clever> and once the derivation has started building, $out is known
<seequ> But does not exist.
<clever> its the derivations job to create it
<clever> and nix doesnt care when in the derivation you make it
Sonarpulse has joined #nixos
<clever> basicaly, all nix does is run your builder, with given args, and sets the $out variable
<clever> everything after that is within nixpkgs and the stdenv, and can do things in pretty much any order, as long as $out is valid at the end
cinimod has quit [(Ping timeout: 240 seconds)]
<nixer> So I extract to $out and set the load path to $out/src?
<ToxicFrog> This reminds me, I need to write derivations for fpcvalkyrie and doomrl
<ToxicFrog> Which are written in pascal and have no makefiles
<nixer> the extracted source has a src subfolder, which should be added to the path
<copumpkin> <3
<copumpkin> thanks FRidh
tvon has quit [(Quit: System is sleeping...)]
erictapen has quit [(Ping timeout: 260 seconds)]
tvon has joined #nixos
justelex_ has quit [(Quit: Konversation terminated!)]
justelex_ has joined #nixos
Ivanych has joined #nixos
<clever> nixer: does the source need to be available after compile time?
Infinisil has joined #nixos
<nixer> yes
<clever> then just mkdir $out, and copy the source there before the build
<clever> and tell the build to look there when it needs to read things
wigust has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] Ericson2314 opened pull request #27879: cc-wrapper: Pass shellcheck and other cleanups (staging...cc-wrapper-shellcheck) https://git.io/v7zWa
NixOS_GitHub has left #nixos []
ElGoreLoco has joined #nixos
<nixer> clever: Thanks, I don't know how I came up with something that complicated
dejanr has joined #nixos
takle_ has quit [(Remote host closed the connection)]
erictapen has joined #nixos
<Infinisil> Hey clever do you have this fancy diagnosing script available somewhere?
<clever> Infinisil: which one?
Filystyn has quit [(Quit: Konversation terminated!)]
<clever> ah
rpifan has joined #nixos
vinymeuh has quit [(Quit: Textual IRC Client: www.textualapp.com)]
<Infinisil> Ahh thanks
alx741 has joined #nixos
<Infinisil> I just realized that grahamc 's script is actually what I needed, I have some weird nix problems
<gchristensen> oh neat
<Infinisil> gchristensen: :)
vinymeuh has joined #nixos
nh2 has quit [(Ping timeout: 240 seconds)]
dejanr has quit [()]
<clever> Infinisil: and what is the weird problem?
ambro718 has joined #nixos
<Infinisil> clever: Look at the errors
dejanr has joined #nixos
<clever> Infinisil: sudo nix-channel --list
<Infinisil> Maybe I just don't get how channels and search paths should work
<Infinisil> I removed the root channel because I thought that might be the problem, I'll add it again, hold on
<clever> the error says that root's "nixos" channel is missing
erictapen has quit [(Ping timeout: 248 seconds)]
dejanr has quit [(Client Quit)]
erictapen has joined #nixos
<Infinisil> Why isn't this command part of the script anyways, gchristensen ? Maybe you wanna add that
<Infinisil> Still the same errors
dejanr has joined #nixos
<clever> Infinisil: what did you change?
<Infinisil> Added the nixos-unstable channel with the label "nixos" to root
<clever> did you also nix-channel --update?
Arcaelyx has quit [(Quit: My MacBook has gone to sleep. ZZZzzz…)]
<clever> --add doesnt take effect until --update
<Infinisil> Ah right
<Infinisil> Ah it worked now
<Infinisil> Damn, I thought I did that yesterday like 10 times
<Infinisil> What command could be used to check that?
<clever> ls -lh /nix/var/nix/profiles/per-user/root/channels
<clever> there should be one directory per channel
<Infinisil> Removing the channel and updating makes the commands fail again, even though this link exists
<clever> what is inside that link?
dejanr has quit [()]
<clever> can you paste the full output of the shell, commands you ran, and how the files changed?
<Infinisil> Yup, hold on
dejanr has joined #nixos
vinymeuh has quit [(Quit: Mutter: www.mutterirc.com)]
arximboldi has quit [(Ping timeout: 260 seconds)]
nixer has quit [(Quit: Page closed)]
nh2 has joined #nixos
erictapen has quit [(Remote host closed the connection)]
erictapen has joined #nixos
Fare has quit [(Ping timeout: 240 seconds)]
<Infinisil> Output of ls -lh ... is at the end of each part
<clever> you need an extra / at the end of channels
<Infinisil> Are you serious
<clever> -l causes it to shwo the channels link itself, rather then its contents
<clever> yes, ls is wonky
<Infinisil> If that's it
<clever> ah, i forgot the / in my example above as well
<Infinisil> Ah
<clever> ls -lh /nix/var/nix/profiles/per-user/root/channels/
<clever> there should be another symlink, called nixos
<Infinisil> Yeah, hold on
<Infinisil> Wait no
<clever> Infinisil: also, gist -u <url> foo.txt
<clever> that will update a gist, and allow easy diff'ing
<Infinisil> Oh thanks
<Infinisil> Okay it works, and as you said there isn't a nixos link in /channels/
<clever> and thats why it cant find nixos/nixpkgs
<Infinisil> Yeah, got it now
<clever> generally, i try to put all channels on root, and not run nix-channel as a user
<Infinisil> clever: Right, then you don't need to worry about multiple channels
<Infinisil> What is the recommended channel anyways? nixpkgs-unstable or nixos-unstable?
<Infinisil> I'd think the former, because with nix-env I don't really care much about nixos
<clever> you must never run nixos on a nixpkgs channel
<clever> about 3 or 4 months ago, there was a wave of people breaking grub.conf because they did that
<clever> which left the system unable to boot, and all rollback options unable to boot
<seequ> I was luckier than that, gladly.
<seequ> Accidentally tried nixpkgs-unstable
<Infinisil> clever: I'm using my local checkout for nixos-rebuild, I just use the channel for nix-env
<clever> ah
<clever> then its less major
<clever> but you will want to always checkout a revision that is on the nixos channel, or you can run into the same issue
<Infinisil> What issue is there with nix-env?
<clever> nix-env is much less likely to break the entire system
<clever> even if you mess up nix-env, it can still boot, and you can fix it
<Infinisil> Right
<Infinisil> clever: Sooo, does a users (not root) channel even do anything? It doesn't seem to be in $NIX_PATH
tvon has quit [(Quit: Peace out, y'all!)]
<Infinisil> Maybe this is done using ~/.nix-defexpr, but I don't know how
<Infinisil> and why the hell is it nixpkgs.<foo> on non-nixos, but nixos.<foo> on nixos
Ivanych has quit [(Ping timeout: 258 seconds)]
<gchristensen> Infinisil: `nixpkgs` vs `nixos` is the name of the channel
<clever> Infinisil: when you do nix-env -iA nixos.foo, it will first search your users channels for a channel called "nixos"
<copumpkin> we should probably just unify those
<clever> then if its not found, it checks root for a channel by that name
<copumpkin> it's just confusing to everyone
<gchristensen> I think there are benefits and downsides
katyucha has quit [(Quit: leaving)]
<clever> copumpkin: a more confusing thing, look at the args that --add needs, now look at the output of --list
<gchristensen> for example I'd love stable nixos systems to also have an unstable channel
<LnL> nix-env should still use <nixpkgs> by default IMHO
<copumpkin> just call it pkgs in both places, and pkgs-unstable for that unstable
kiloreux has quit [(Ping timeout: 255 seconds)]
ElGoreLoco has quit [(Ping timeout: 248 seconds)]
takle has joined #nixos
<Infinisil> What's the benefit of having different default names for channels on nixos vs non-nixos?
<clever> nixpkgs-unstable lacks testing to ensure it cant brick nixos systems
<clever> and also has darwin cache support
<clever> nixos-unstable lacks darwin builds
vinymeuh has joined #nixos
<Infinisil> But why can't the default nixos channel be named nixpkgs?
<clever> other then that, i think its mostly about doing "nix-env -iA nixos.foo" when your not on nixos being "weird"
<clever> also, in the old days, nixos and nixpkgs where seperate repo's on github
<clever> i think you had to add both
<Infinisil> Hmm
Neo-- has quit [(Ping timeout: 246 seconds)]
<Infinisil> Another question: nix-env -iA nixos.<foo> uses the attr path nixos.<foo>, but where is this "nixos" defined? Yes it's the channel, but where does this nix expression come from?
<gchristensen> the string comes from the NIX_PATH
<clever> nix-env -iA nixos.foo ignores the path entirely
<gchristensen> orly?
<clever> it goes directly to the .dev-expr dir
<clever> def
* gchristensen sighs, hard
<clever> yeah
<clever> nix-env can obey the search path, but at no point tries to actually use it
<Infinisil> Ohh..
<gchristensen> "nix is easy to use"
<clever> nix-env -f '<nixpkgs>' -A hello
<clever> this forces it to use the search path
<seequ> ._.
<gchristensen> clever: if we solve all the world's problems we'd be out of a job and nothing would be fun anymore. this must be why nix's UX is to hard :P
<clever> and if your config.nix happens to use the search path, it will work
vinymeuh has quit [(Quit: Mutter: www.mutterirc.com)]
<clever> lol
<sphalerite> Is the binary cache having issues just now? My downloads from it are very slow, while I can download from static.rust-lang.org just fine
<gchristensen> I need a bot that sends this link
<sphalerite> Haha
<gchristensen> sphalerite: can you run this? https://gist.github.com/grahamc/df1bb806eb3552650d03eef7036a72ba
<Infinisil> clever: "just happens to use the search path", how does that happen?
mudri has quit [(Ping timeout: 246 seconds)]
<Infinisil> Ahh, byy doing import <nixpkgs>
<clever> Infinisil: if you put import <unstable> into the config.nix
<clever> yeah
<clever> so nix-env will obey the search path, but by default, nothing in nix-env or nixpkgs will actualy make it use it
kiloreux has joined #nixos
<Infinisil> clever: Soo.., setting $NIX_PATH doesn't even do anything for nix-env generally.. I *need* to use channels for that..
<clever> Infinisil: i think newElemsTmp is an output from this function, of what you want to install
<clever> or switch to nix-env -f '<nixpkgs>'
<clever> to tell it to obey the path
<Infinisil> While nix is generally really nice, this part with channels and NIX_PATH and whatever is quite bad..
<gchristensen> clever: how does nix 1.12 handle this stuff? is it better?
<gchristensen> I should really try nix 1.12 first hand ...
<clever> havent looked into it much yet
<clever> ive only played with the nix copy command
<Infinisil> Well I'm using nix 1.12..
<clever> which can manipulate stores not yet at the right mount point
<Infinisil> umm the unstable version at least
<clever> for example, i can just tell it, copy the closure of nix from /nix/store to /mnt/nix/store
<clever> Infinisil: there it is, i believe this is the -iA nixos.hello path: https://github.com/NixOS/nix/blob/master/src/nix-env/nix-env.cc#L417-L426
takle has quit [(Remote host closed the connection)]
<clever> globals.instSource.nixExprPath = getDefNixExprPath();
Neo-- has joined #nixos
<clever> return getHome() + "/.nix-defexpr";
<clever> Infinisil: aha!!
<clever> if you give it a directory containing foo/default.nix and bar/default.nix, it turns it into { foo = import ./foo; bar = import ./bar; }
<Infinisil> clever: Ohhhhh
<clever> thats what i think this does
vinymeuh has joined #nixos
<clever> or rather, it merges channels/* and channels_root/* into a single set
<clever> Infinisil: and line 100 has more code
<Infinisil> clever: Huh? how can it merge channels and channels_root which might contain totally different things?
<clever> Infinisil: line 142, it seems to be able to recursively call itself
<clever> any directory lacking a default.nix is recursed into
<clever> until it finds children containing default.nix's
<clever> the names of those children are then made available to nix-env
<sphalerite> gchristensen: http://ix.io/yRa
vinymeuh has quit [(Client Quit)]
<clever> [clever@amd-nixos:~]$ cat .nix-defexpr/test/foo/default.nix
<clever> import /home/clever/apps/nixpkgs
<clever> [clever@amd-nixos:~]$ nix-env --dry-run -iA foo.hello
<clever> installing ‘hello-2.10’
<Infinisil> Ahhh
<clever> Infinisil: and with this, you can create your own custom set of channels (the set is called test), which contains 1 channel (called foo)
<clever> and that default.nix must return a set like nixpkgs (i imported a random clone of master)
<clever> so channels, channels_root, and test, get merged into a single set
<Infinisil> I don't get the merging part yet
<clever> printError(format("warning: name collision in input Nix expressions, skipping '%1%'") % path2);
<clever> i dont think there is any formaly defined priority
<Infinisil> Ohh..
<clever> so they will just randomly overwrite eachother
<clever> and warn you
<Infinisil> Oh actually
<clever> i think the only priority, is what order readdir() returns the contents of .nix-defexpr
<Infinisil> warning: name collision in input Nix expressions, skipping ‘/home/infinisil/.nix-defexpr/channels_root/nixos’
<clever> you have a nixos channel on both your user and root
<Infinisil> When doing nix-env -iA nixos.hello
<clever> so it doesnt know which one to use
<Infinisil> Ah so I should just remove the non-root channel
<clever> and you would have to nix-channel --update twice (as you and root) to ensure both are updated
<clever> yeah
<Infinisil> Yay, one more thing to worry about :)
<clever> but now that we know how this works, you can just make a dummy default.nix like i did above
<clever> and call it nixos
<clever> then remove all channels!
gnuhurd has quit [(Ping timeout: 260 seconds)]
<Infinisil> I don't know about this, I feel like this is going to be more confusing than anything long term
<clever> oh yeah, and you would want to also override NIX_PATH
ertes-w has quit [(Ping timeout: 276 seconds)]
gnuhurd has joined #nixos
<clever> that searches in roots channel profile, which wouldnt be covered
<clever> [root@amd-nixos:~]# nix-env --profile /nix/var/nix/profiles/per-user/root/channels --list-generations
vinymeuh has joined #nixos
<clever> [root@amd-nixos:~]# nix-env --profile /nix/var/nix/profiles/per-user/root/channels -q
<clever> Infinisil: try running these 2 commands, do you see how they work a bit more?
nh2 has quit [(Ping timeout: 240 seconds)]
justelex_ has quit [(Ping timeout: 246 seconds)]
<Infinisil> Yeah, that's nice
<Infinisil> That's hella confusing though
<clever> nix-channel and nixos-rebuild are just wrappers around nix-env
<clever> that manage a different profile
<Infinisil> Oh nice
Fare has joined #nixos
justelex_ has joined #nixos
<clever> the 1st of the 2 above commands list every generation you have made from nix-channel --update
<clever> and lets you delete generations (--delete-generations)
<clever> and the -q variant, lists all channels in the current generation
<Infinisil> One more question: In ~/.nix-defexpr/channels_root/nixos there is a symlink `nixpkgs -> .`. I assume I can't do `nix-env -iA nixos.nixpkgs.hello` because it doesn't recurse anymore after finding the first default.nix?
<clever> correct
<clever> that symlink is for NIX_PATH reasons
<clever> <nixos> resolves to the root of a nix PACKAGES checkout
<clever> not the nixos subdir
arximboldi has joined #nixos
<clever> so i often say <nixos/nixpkgs> to make it clear i mean nixpkgs
<clever> even though its identical (via that symlink)
<Infinisil> Oh is that because originally nixos and nixpkgs were separate?
<clever> thats likely related
<clever> gotta love legacy :P
<Infinisil> Indeed..
<clever> one sec
<Infinisil> Alright if I ever forget about all this I'll just read this irc log
<clever> while that computes, i'll link other stuff
yochai[m] has joined #nixos
mudri has joined #nixos
<clever> Infinisil: for each channel nix-channel is managing, it will just concat another nix expression onto this string
arximboldi has quit [(Client Quit)]
<clever> Infinisil: and then line 140 will merge that mess together, and call <nix/unpack-channel.nix>
stanibanani has left #nixos []
<clever> which creates the build of the channel profile
vinymeuh has quit [(Quit: Mutter: www.mutterirc.com)]
<clever> Infinisil: there it is, the very first commit in nixpkgs: https://github.com/NixOS/nixpkgs/tree/2766a4b44ee6eafae03a042801270c7f6b8ed32a
<clever> look at that aterm-2.0.nix file!
<Infinisil> Damn
stanibanani1 has joined #nixos
<Infinisil> We need versioned syntax highlighting, because github doesn't play nicely with this
<clever> lol
<Infinisil> clever: Thanks for clearing up this situation, would have never figured this out myself
rpifan has quit [(Ping timeout: 268 seconds)]
joepie91 has quit [(Read error: Connection reset by peer)]
joepie91___ has joined #nixos
joepie91___ has quit [(Changing host)]
joepie91___ has joined #nixos
stanibanani1 has left #nixos []
joepie91___ has quit [(Client Quit)]
joepie91___ has joined #nixos
joepie91___ has quit [(Changing host)]
joepie91___ has joined #nixos
joepie91___ is now known as joepie91
<Infinisil> $
<Infinisil> don't mind that
<clever> %
frankpf has joined #nixos
takle has joined #nixos
catch22 has joined #nixos
https_GK1wmSU has joined #nixos
zeus_ has quit [(Read error: Connection reset by peer)]
<copumpkin> niksnut: is there a magic incantation I can use to ask for a nix-store closure of a store path but get the meta attributes out of it?
https_GK1wmSU has left #nixos []
<copumpkin> or do that cleanly somehow in the nix language
zeus_ has joined #nixos
<copumpkin> consider license validation, etc.
<copumpkin> feels like data is going the wrong way from store path to meta, and I don't see how to do it cleanly from pure nix language
<copumpkin> at least not accurately
<copumpkin> I could recursively walk buildInputs but that's not really very accurate
<clever> yeah, it will miss a lot
nh2 has joined #nixos
<Dezgeg> at least all of meta is nix language level only, not in /nix/store
<copumpkin> yeah
<copumpkin> and that's a good thing in many cases
<Infinisil> Yup
<copumpkin> but I'm still left with no good way to extract transitive license information
<copumpkin> or "tell me all the metadata for these packages I use"
<copumpkin> almost feels like we need another builtin for that
<Infinisil> copumpkin: Maybe it's possible to create your custom mkDerivation that passes through meta
<Infinisil> In a recursive way
<Infinisil> And then override the original one with that
tg has quit [(Read error: Connection reset by peer)]
<copumpkin> I guess I could make a dummy one that only passes through meta somehow, but doesn't actually do much building
<copumpkin> while still forcing the same dependency structure but ignoring it in the build
vinymeuh has joined #nixos
<clever> copumpkin: but if i do ${strace}/bin/strace in a string
<clever> you have absolutely no way to access strace's meta
<copumpkin> well...
<copumpkin> I sort of do
<Infinisil> Oh right..
<copumpkin> say I ignore the buildCommand you normally get in mkDerivaiton, but stash the contents of it away somewhere I can access
<copumpkin> I can scan it for nix store paths
<copumpkin> all of which will also be the result of these fake mkDerivation calls
<copumpkin> and which will contain some sort of structured meta value I can extract
<copumpkin> it feels obscene
ison111 has joined #nixos
<clever> copumpkin: it might be simpler to just run nix-store -qR $(nix-instantiate ...), and then iterate over nixpkgs to map each .drv to an attribute
<copumpkin> but what if they're unnamed or only exist in a closure I can't reach?
<gchristensen> copumpkin: I feel obscene having read it
<copumpkin> I fairly often do things like `let x = mkDerivation { ... }; in mkDerivation {... x ...}`
<clever> copumpkin: yeah, then you need to fix the iteration loop after you track it down
<clever> but you can at least code it to print unknown things
<copumpkin> I suppose
<Infinisil> copumpkin: How about changing callPackage and recurse into the function arguments?
<clever> Infinisil: and now we have the pythonPackages.callPackage thing i mentioned yesterday
<clever> you passed all of pythonPackages to a package, that only wanted 3 attributes
<clever> which licenses does it use?
<Infinisil> clever: Yeah that's a problem
<Infinisil> You could check the type of each argument
gnuhurd has quit [(Ping timeout: 260 seconds)]
<clever> this is why i was in favor of using pythonPackages.callPackage, and not passing pythonPackages around
<clever> so its obvious from the args, what your using
<Infinisil> Ohh right
gnuhurd has joined #nixos
vinymeuh has quit [(Quit: Mutter: www.mutterirc.com)]
voipmonk has joined #nixos
silver_hook has quit [(Ping timeout: 260 seconds)]
<Infinisil> clever: Ohhhhhh, does { stdenv lib pythonPackages@{ wxPython <etc> } }: work?
<Infinisil> actually I don't think it does
<clever> i dont think thats valid syntax
<Infinisil> It should be
<Infinisil> It isn't but it should be valid, that's pattern matching
hamishmack has quit [(Quit: hamishmack)]
<Infinisil> Ohhh, this would be pretty nice: https://github.com/NixOS/nix/issues/896#issuecomment-217190412
<Infinisil> Recursive progress reporting would be so nice
joehh has joined #nixos
erictapen has quit [(Remote host closed the connection)]
erictapen has joined #nixos
<gchristensen> one thing about that chriswarbo post is they truly are deserving the name "hacks"
cpennington has quit [(Remote host closed the connection)]
<Infinisil> gchristensen: Agreed
erictapen has quit [(Ping timeout: 240 seconds)]
<LnL> pretty sure the null hash stuff doesn't work anymore
<grahamc> Yeah I left a comment to that effect on the lobste.rs thread
joehh has quit [(Ping timeout: 255 seconds)]
<LnL> not sure why you'd do that kind of stuff inside a build
FRidh has quit [(Quit: Konversation terminated!)]
<Infinisil> May I ask what editor y'all use? Out of curiosity?
voipmonk has left #nixos ["Textual IRC Client: www.textualapp.com"]
vinymeuh has joined #nixos
<Infinisil> clever: You're using this config to develop stuff?
<clever> yeah
<clever> i use that vim 90% of the time
arximboldi has joined #nixos
<mpcsh> hey all, I'm using chromium, does anyone else have trouble with it not actually setting itself as the default browser?
<mpcsh> every time I launch it, I click "make default browser", and it never does anything
eschnett has quit [(Quit: eschnett)]
<LnL> oh wow, that's your full config?
<Infinisil> LnL: I have the suspical that's it
<clever> LnL: the only thing missing is a one-time command to install wakatime via vundle, and patching a /usr/bin/python in ~/.vim
<Infinisil> suspicion*
vinymeuh has quit [(Client Quit)]
<Infinisil> clever: Wait, no syntax highlighting??
<clever> thats on by default
<Infinisil> clever: No syntax highlighting for nix?
<clever> thats on by default
<Infinisil> Ohh, I bet vim_configurable does this stuff
<clever> probably
<gchristensen> I use emacsWithPackages for mine
<clever> that works in a similar way
<Infinisil> gchristensen: What packages?
<clever> main reason i'm on vim is because thats the first editor ##linux said to use when i asked how to edit something back in 2005
<clever> and now its hard to relearn all the keybinds
simukis has quit [(Ping timeout: 260 seconds)]
<Infinisil> clever: I'm also very used to the commands, but I've been wanting to switch to emacs with evil-mode (to keep vim bindings)
taktoa has joined #nixos
<grahamc> Infinisil I can share later if you ping me in 1hr
<Infinisil> But I haven't gotten into emacs lisp just yet, and it's pretty hard to do anything without it
<Infinisil> grahamc: Aight
earldouglas has quit [(Quit: leaving)]
<Infinisil> LnL: What do you use?
<LnL> I wrote vim-nix so have a guess :p
<Infinisil> Ohhh right lol
<Infinisil> Thanks for doing that by the way! Using it a ton every single day :D
<Infinisil> Leader bound to ' ', nice
<LnL> oh that's why my listchars are missing on nixos
<LnL> xD
<clever> i have list on so i can see stray tabs in things
<clever> and oh god, there everywhere! :P
<LnL> yeah same, and trailing whitespace
<clever> yep
<Infinisil> clever: I'll add that to mine actually, really useful
<LnL> but I hide the other stuff
<Infinisil> My vim config is a mess :(
<LnL> you should see my old config
<Infinisil> Every couple months I think "Oh let's do some vim config" and then I google "vim config" and just put in stuff that seems nice to have. I then realize that I don't even know how to use it but don't remove it from the config either.
<clever> same
<LnL> yeah, the backup/undo stuff is one of the few things I've kept around
<clever> i let zfs handle that
<LnL> having undo across vim sessions is pretty nice
<clever> i try to just not close vim until i dont need the undo
<Infinisil> LnL: How's that work? What part of your config does that?
<clever> screen and more shells
<Infinisil> clever: Same..
<clever> i have over 20 shells open in at least 2 screen sessions
<LnL> I think
frankpf has quit [(Ping timeout: 240 seconds)]
<Infinisil> LnL: Ahh so that saves like the changes you've done to every file persistently?
<LnL> yeah you get %path%to%file.txt stuff in there that preserves the undo history
<Infinisil> Damn nice, gonna steal that
<clever> same, lol
<Infinisil> Okay important question: how do I resize a split window in vim?
<LnL> and the rest is just to keep stuff like swapfiles out of my project
<clever> i use :tabe, tabp and tabn to get tabs
<clever> i have no idea how to split things on purpose, lol
<Infinisil> clever: Same..
<Infinisil> Probably 90% of vim users only understand 10% of the stuff it can do
tokudan has quit [(Quit: Leaving)]
hamishmack has joined #nixos
<clever> Infinisil: i have been accused of using vim like notepad, lol
<gchristensen> oh clever
<Infinisil> gchristensen: Thx
<gchristensen> you're welcome
<gchristensen> my work one is a bit more fleshed out but also harder to sanitize for release
<copumpkin> I need to take a shower after reading some of those nix hacks
<copumpkin> that "Inheriting Function Arguments" one
<gchristensen> yeah
<gchristensen> naaasty
<gchristensen> good, though, having hackers do hacky things
<Infinisil> gchristensen: How much of an emacs pro are you?
<clever> gchristensen: with sandboxing off and manually setting NIX_REMOTE, i have used nix from inside other nix builds before
<gchristensen> Infinisil: I've read the help tutorial, use notmuch.el, and struggle with magit
<clever> gchristensen: i have also used fusermount to mount a fuse fs from inside a build!!
<Infinisil> gchristensen: Heh :)
<Infinisil> clever: Is this even legal??
<clever> Infinisil: with sandboxes off, you can access the setuid wrapper in /run
<clever> and it just works
<clever> but nix-daemon doesnt know how to clean it up, and the "rm -rf" breaks at mount points, cant delete the dir
<gchristensen> clever: evil
<Infinisil> clever: I feel like this is stupid and doesn't work, but: what about using a hard-link instead of bind mount?
<gchristensen> if anyone wants a lobste.rs invite I'd be happy to oblige btw
<clever> Infinisil: it has to be a mount point, because i'm running a fuse program in the nix build, and testing that it does the right thing
<Infinisil> Ah
<copumpkin> fuse inside a nix build? o.O
<clever> yes
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nix] puffnfresh opened pull request #1499: Include missing <cstdlib> for abort() (master...bug/arm-fixes) https://git.io/v7zHR
NixOS_GitHub has left #nixos []
<Infinisil> gchristensen: I haven't heard of lobste.rs before, is it nice?
<gchristensen> I like it better than hackernews
<gchristensen> but what does that mean :0
<Infinisil> gchristensen: I'd love to try it out, can you invite me?
<Infinisil> Just read a bit in the About page, looks nice
<gchristensen> Infinisil: you only need an invite to comment etc., but I can invite you. what is your email?
hiratara has quit [(Ping timeout: 246 seconds)]
<Infinisil> gchristensen: Yeah, infinisil@icloud.com
<Infinisil> gchristensen: And to upvote
<Infinisil> and submit of course
<gchristensen> alright don't do anything that would reflect poorly on me
<Infinisil> The invitation tree banning thing is pretty sweet
<Infinisil> gchristensen: Heh, of course not ;)
ison111 has quit [(Ping timeout: 260 seconds)]
<gchristensen> " Invitations are unlimited, but persons you invite will be associated with your account in the user tree and you may be responsible for them if they cause problems. Please use your discretion when inviting persons you don't personally know." yeah
drakonis has joined #nixos
hiratara has joined #nixos
<Infinisil> And: " If spammers are invited to the site and banned, the user that invited them may also be banned, going up the chain of invitations as needed."
<LnL> interesting, didn't know it was invite only
<clever> Infinisil: how far up the chain? lol
<clever> Infinisil: and what about everybody else they invited?
<Infinisil> clever: Allll the way, that's why nobody gets banned
<Infinisil> clever: Good question
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] NeQuissimus closed pull request #27781: torbrowser: 7.0.2 -> 7.0.3 (master...tor_7_0_3) https://git.io/v7lAQ
NixOS_GitHub has left #nixos []
<Infinisil> clever: You can read the source heh https://github.com/jcs/lobsters
<gchristensen> if I invite Infinisil and they invite a bunch of spammers Infinisil would be banned and I probably wouldn't be, since I participate in discussion and have invited other good people
<gchristensen> if I invite 2 spammers maybe I'd get banned then
<Infinisil> I wonder if that's automated
<gchristensen> I doubt it
<kiloreux> How can I use nix-env instead of nix-build ?
vinymeuh has joined #nixos
<kiloreux> To keep a persistent package ?
<Infinisil> kiloreux: nix-env -f . -i
<kiloreux> Thank you.
<Infinisil> :)
<copumpkin> -iA corresponds to nix-build -A
<copumpkin> assuming you want it in your current profile
<LnL> you can also nix-env -i ./result if you built something before
<copumpkin> `nix-env -i $(nix-build --no-out-link -A attr)`
* copumpkin runs
<clever> lol
<LnL> yeah or using the store path directly
Sonarpulse has quit [(Ping timeout: 260 seconds)]
<kiloreux> Okay you people rock <3 .
<copumpkin> removing something from nix-env makes me sadder
drakonis has quit [(Read error: Connection reset by peer)]
<LnL> nix-env -r :p
q6AA4FD has quit [(Ping timeout: 240 seconds)]
<Ralith> nix-env has a -r?
vinymeuh has quit [(Quit: Mutter: www.mutterirc.com)]
<LnL> nix-env [--remove-all | -r] args...
<Ralith> must be new
<Ralith> oh, no, there it is
<Ralith> searching manpages sucks >:/
erictapen has joined #nixos
erictapen has quit [(Remote host closed the connection)]
erictapen has joined #nixos
erictapen has quit [(Remote host closed the connection)]
erictapen has joined #nixos
erictapen has quit [(Remote host closed the connection)]
<Ralith> looks like that doesn't have very much to do with purely removing stuff, though
c0ffee152 has joined #nixos
erictapen has joined #nixos
eacameron has quit [(Remote host closed the connection)]
<Ralith> removing *specific* stuff, at least
dbmikus has quit [(Quit: WeeChat 1.9)]
<LnL> was kind of a joke
<LnL> but you can use it for kind of declarative user profiles
<LnL> since nix-env installs everything in an attrset
<clever> use config.nix to create a buildEnv called mystuff, nix-env -irA nixos.mystuff
<LnL> you don't even need the buildEnv
<clever> oh yeah, it can install things in a set
<LnL> allowing partial updates with a regular -iA
<clever> yeah, that sounds better
<LnL> so you get both with the same approach
https_GK1wmSU has joined #nixos
https_GK1wmSU has left #nixos []
q6AA4FD has joined #nixos
<clever> i do remember seeing nix-env do this before
<clever> somebody i was helping in here tried to do nix-env -i
<clever> and nix tried to install nixpkgs, all of it
wigust has quit [(Ping timeout: 240 seconds)]
ambro718 has quit [(Ping timeout: 260 seconds)]
<clever> and he didnt tell me what command he ran, only that it was complaining about xyz being broken
<Infinisil> gchristensen: Daaamn, I just wondered before what the user tree would look like.. Had no idea you could view it just like that :O
<joepie91> lassulus: krav_: I will also be at SHA2017 :)
ison111 has joined #nixos
wigust has joined #nixos
<gchristensen> clever: agda probably
<gchristensen> WOW
<gchristensen> ". Red Hat will not be moving Btrfs to a fully supported feature and it will be removed in a future major release of Red Hat Enterprise Linux."
<clever> :O
<joepie91> yep, it appears dead in the water
<Infinisil> Yeah saw that too, not sure what to think of btrfs
<Infinisil> They also just lack people that develop it further
ebzzry has joined #nixos
<Infinisil> Same with bcachefs I think
<Dezgeg> that is just for red hat's own enterprise legacy kernel
<Infinisil> Dezgeg: Yeah, but in general btrfs doesn't seem to be on the path of adoption
earldouglas has joined #nixos
eacameron has joined #nixos
rydnr has quit [(Ping timeout: 260 seconds)]
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] mimadrid opened pull request #27881: Update homepages and urls attributes: http -> https (master...fix/http-https) https://git.io/v7zFY
NixOS_GitHub has left #nixos []
justelex_ has quit [(Ping timeout: 258 seconds)]
eacameron has quit [(Ping timeout: 240 seconds)]
catch22__ has joined #nixos
hiratara has quit [(Quit: ZNC - http://znc.in)]
<Dezgeg> sure
frankpf has joined #nixos
tg has joined #nixos
rpifan has joined #nixos
eacamero_ has joined #nixos
catch22 has quit [(Ping timeout: 240 seconds)]
revtintin has joined #nixos
hiratara has joined #nixos
eacamero_ has quit [(Ping timeout: 240 seconds)]
eschnett has joined #nixos
m0rphism has quit [(Ping timeout: 240 seconds)]
justelex_ has joined #nixos
nh2 has quit [(Quit: Leaving.)]
erictapen has quit [(Remote host closed the connection)]
erictapen has joined #nixos
rigelk has quit [(Quit: leaving)]
<kiloreux> We have this path where we put all of our .so files and it's screwing the way nix works in our production always. (Not having standard LD_LIBRARY_PATH).
<kiloreux> Is there anyway to handle this ?
<clever> commit to nix and make sure everything uses rpath correctly
<clever> and is not in LD_LIBRARY_PATH
<kiloreux> So we have to commit to using nix in our production system :( ?
<clever> or wrap every nix program with something that clears LD_LIBRARY_PATH
<clever> or wrap everything not-nix with a shell script that sets LD_LIBRARY_PATH
<clever> or rebuild everything, and patch the nix ld.so, to ignore LD_LIBRARY_PATH
<kiloreux> will try them ALL. Thank you clever.
takle has quit [(Remote host closed the connection)]
indi_ has joined #nixos
<Infinisil> kiloreux: Why not commit?
abbafei[m] has joined #nixos
<kiloreux> It's a large production system and moving all of our packages and dependencies to using nix. Will break an incredible amount of things for our customers. We really love nix and are trying to adopt it slowly into our production system.
<kiloreux> Without breaking anything.
<clever> kiloreux: patching ld.so seems like one of the simplest, though it might break some nix packages
<Infinisil> kiloreux: I don't have much experience with larger systems (0 that is), but why would stuff break for customers?
<kiloreux> clever, how would I do that ?
<clever> kiloreux: you would need to put a packageOverride (or just edit glibc in nixpkgs) to supply a .patch file to modify that
<clever> then you can just rename the variable to whatever you want
<kiloreux> Infinisil, it's mostly about our tests not being to cover all the cases that our customers run the system in. The fear of customers hitting some edge cases and having shit break for them is quite scary.
<kiloreux> clever, that's lovely <3 Thank you.
<clever> kiloreux: so the only problem will be when packages in nix rely on LD_LIBRARY_PATH rather then rpath
<clever> finding those bugs may be "fun"
<joepie91> meh
<joepie91> seems the opensuse install on my laptop has gone EOL
<joepie91> since I last used it
<joepie91> I suppose now's as good a time to switch to NixOS on my laptop as any...
<Infinisil> joepie91: \o/
<kiloreux> clever, do they usually rely on it a lot ?
<kiloreux> a git grep i could found quite a few mentions of LD_LIBRARY_PATH
<clever> kiloreux: i think pam may use it some
<clever> it depends heavily on which packages your actually using from nix
<kiloreux> so how does rpath works compared to LD_LIBRARY_PATH exactly ?
ison111 has quit [(Quit: WeeChat 1.7.1)]
<clever> kiloreux: rpath is a field inside the ELF file, that does the same basic job
<clever> but LD_LIBRARY_PATH has a higher priority then rpath
<clever> so every binary in nixos has its own rpath, saying where it should find libs
<kiloreux> Ohhh I see so when running a binary LD_LIBRARY is consulted first and before rpath
<clever> yeah
<kiloreux> thus the existing of it could screw how packages are managed if it has similar names :D
<kiloreux> great <3
<Infinisil> joepie91: Are you running NixOS on your main machine already?
markus1199 has joined #nixos
<joepie91> Infinisil: yep
<joepie91> so *ideally* this is just going to be another system profile in my nixrc repo
<joepie91> :P
<Infinisil> I'm having a bit of a mess with these configs right now, do you have a nice setup for multiple machines? joepie91
<joepie91> Infinisil: I would not call it 'nice' yet, needs some more cahnges
<joepie91> Infinisil: but by the end of tomorrow I'll probably have a vaguely organized repo to show
<Infinisil> I guess I should do it like clever, by making and importing files for everything and building a tree like this
<Infinisil> joepie91: Nice :D
markus1189 has quit [(Ping timeout: 258 seconds)]
<joepie91> meh, slow laptop drive is slow...
<joepie91> 30MB/sec avg :|
<joepie91> on a sequential read
<clever> joepie91, Infinisil https://github.com/cleverca22/nixos-configs
<clever> i might have had passwords in the old git repo, so ive begun manualy copying things to a new one, and publishing that
<Infinisil> "might" have had lol
<Infinisil> How are you managing passwords now?
<clever> i now keep them all in passwords.nix, which is imported as needed
<joepie91> fucking hell these drive speeds are all over the place
<joepie91> anywhere between 20 and 40MB/sec
<joepie91> for a single file
<joepie91> I /really/ need to get a better HDD
<clever> but rather then audit the entire git history before i publish, i'm just publishing the safe files one-by-one
<Infinisil> clever: Whew, that doesn't seem very safe
<Infinisil> joepie91: Yes you do
<clever> Infinisil: have a look at the files in the github i just linked
<Infinisil> Ah lol, didn't see that
<Infinisil> I'm keeping all my passwords in pass
<clever> the only one in the new passwords.nix is a pam hash
<clever> so its still moderately safe
<Infinisil> clever: What makes this only moderately safe?
<clever> given enough time, you can probably crack it
nh2 has joined #nixos
<Infinisil> If it's a bad enough one
<clever> yeah
<clever> then its just rng
<Infinisil> I always think how cool it would be for such a 1 in 10000000000000000 change thing to just happen
<clever> the netbook i added is also a fairly small SSD
<Infinisil> s/change//
<clever> 4gig total, 3.5gig for /
<clever> the closure for the current nixos, is 499mb
<Infinisil> Huh?? 4GB? That's half my RAM!
<clever> so i can fit ~7 generations on the drive, if i delete everything else
<clever> yeah
<clever> my main desktop has 16gig of ram
<clever> my gpu has 2gig, lol
<clever> it almost has more then the netbook
<Infinisil> lol
<Infinisil> Well I guess if you don't install a crapton of stuff and don't need GHC then it works
eacameron has joined #nixos
<clever> i had to disable xorg and fully GC, before i could even do the last nixos-rebuild
<taktoa> anyone here know the hydra internals (or perl) very well? I'm trying to write a servant-client API for hydra, but it seems that the endpoints documented in doc/manual/api.xml aren't the only ones available (e.g.: PUT /project/foobar)
<taktoa> I realized this after reading tests/api-test.pl
http_GK1wmSU has joined #nixos
<taktoa> (I'm working on Fully Declarative Hydra™)
http_GK1wmSU has left #nixos []
<joepie91> aha! a quick browse through my abandoned-hardware shelf has yielded a new-ish 80GB drive
<clever> taktoa: i'm having trouble finding the source for that
<joepie91> as well as a very old 8GB one...
<clever> ah, its under src/lib/hydra.pm
<joepie91> apparently the 80GB one is a fast drive, cc Infinisil
<taktoa> clever: yeah I saw that
<joepie91> if a little old :)
lpsmith has quit [(Ping timeout: 255 seconds)]
<taktoa> clever: I'm not really searching for relevant files, I'm more looking for someone who really knows/wrote the hydra source to tell me the set of relevant files with high confidence
<taktoa> like unless I read every file I can't be sure that code I haven't read doesn't add more endpoints
<taktoa> because I don't know the semantics of perl well enough
<clever> ah
<Infinisil> joepie91: heh
ertes has joined #nixos
<clever> taktoa: at a glance, i think its just a grep for (Chained|PathPart|Path)
<Infinisil> 4GB was also once a big disk :)
<taktoa> clever: ah, that's helpful. I'll go with that for now
<clever> Infinisil: i still have that 40mb drive, that is twice as thick as a normal desktop drives
<joepie91> also found a 4GB memory module that I *think* is compatible with my laptop
<clever> joepie91: 1gig of ram in the netbook
<joepie91> my laptop currently has 4GB total
<joepie91> 2x2
<joepie91> not enough really
<joepie91> wonder if replacing the HDD and RAM will affect my battery life...
nh2 has quit [(Ping timeout: 255 seconds)]
nh2 has joined #nixos
earldouglas has quit [(Ping timeout: 240 seconds)]
zeus_ has quit [(Read error: Connection reset by peer)]
<Infinisil> clever: Do you have hardware-configuration.nix under git?
zeus_ has joined #nixos
<clever> Infinisil: nope, i either delete it or leave it under the control of nixos-generate-config
mudri has quit [(Ping timeout: 246 seconds)]
<clever> Infinisil: the github i linked earlier works without a hardware-configuration
<Infinisil> Yeah I'll probably do the same now
joehh has joined #nixos
detran has quit [(Ping timeout: 248 seconds)]
Rotaerk has joined #nixos
eacameron has quit [(Remote host closed the connection)]
justelex_ has quit [(Ping timeout: 240 seconds)]
http_GK1wmSU has joined #nixos
http_GK1wmSU has left #nixos []
eacamero_ has joined #nixos
NixOS_GitHub has joined #nixos
<NixOS_GitHub> [nixpkgs] abbradar pushed 1 new commit to master: https://git.io/v7zjH
<NixOS_GitHub> nixpkgs/master f64fb1c Nikolay Amiantov: mupdf: remove third-party libjpeg
NixOS_GitHub has left #nixos []