<iqubic>
This is really not working in the way I want it to. I have LightDM configured, and I should be able to switch between EXWM and Fluxbox, but it isn't working.
<iqubic>
When I select EXWM as the WM, LightDM still boots into fluxbox anyways.
ixxie has quit [Ping timeout: 240 seconds]
o1lo01ol1o has joined #nixos
moet has joined #nixos
moet has quit [Client Quit]
o1lo01ol1o has quit [Ping timeout: 246 seconds]
lopsided98 has joined #nixos
cript0nauta has quit [Remote host closed the connection]
<kini>
iqubic: looking around in the nixpkgs repo, I guess maybe you want the nixos option `services.xserver.displayManager.session`?
<iqubic>
Yeah. I tried that. It didn't work.
<iqubic>
I was able to successfully add EXWM and FluxBox to the list of sessions I could ask LightDM to launch, but no matter what option I chose from that list, Fluxbox got launched.
excelsiora has quit [Quit: thanks for the help, people!!!]
<tobiasBora>
however, when I run nixos-rebuild, I've an error "error: The option `swapDevices.[definition 1-entry 1].encrypted.enabled' defined in myfile.nix does exist."
<chrismatheson>
ok, so adding swift to nix should solve my problem you think ? :)
<cab404[m]>
no, I am just giving you random directions, don't listen to me
TakeWill has joined #nixos
<TakeWill>
hello, I have a question about installation with nix-env
<{^_^}>
[nixpkgs] @adrian-gierakowski opened pull request #93758 → writers.writePython2 and writePython3: use "bare" python if no deps are needed → https://git.io/JJ4IO
<cab404[m]>
don't ask to ask, just ask
<chrismatheson>
cab404: lol 🙂 well Iappreciate your random instructions regardless !
<TakeWill>
after git with nix-env -i git, the prompt doesn't show anything. And after a while, it shows that git is installed
<TakeWill>
is there anyway I can make nix-env to show progress?
feffe[m] has joined #nixos
<chrismatheson>
unix commands usually have a -v for verbose output ?
<TakeWill>
nice. Thank you
<tobiasBora>
Actually just realized that I forgot to write the "not" in the error message, of course it's "error: The option `swapDevices.[definition 1-entry 1].encrypted.enabled' defined in myfile.nix does not exist."
o1lo01ol1o has quit [Remote host closed the connection]
<tobiasBora>
TakeWill: you may prefer to install with "nix-env -iA nixpkgs.git" (or if you are on nixos, use nixos.git), it's much quicker
alp has quit [Ping timeout: 256 seconds]
<tobiasBora>
(and in my case I do see progress when the files need to be downloaded. Maybe in your case git was already downloaded, and most of the time is spent to just see what you mean by git? If yes, then nix-env -iA can help
<AlonzoC>
Does anyone know where can I find information on the parameters for haskell derivations? looking for information on how to add system dependencies to a package e.g. X11 libraries.
<cab404[m]>
<AlonzoC "Does anyone know where can I fin"> why not just add them to buildInputs?
<tobiasBora>
TakeWill: it's how I understand it yes. But I'm still a beginner, so someone may have a better explanation. Note also the -A that is important!
<tobiasBora>
and I solved my problem, stupide "enabled" instead of "enable"
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage2nix.yaml: update list of broken builds to avoid evaluation errors »: https://git.io/JJ4Lk
knupfer has joined #nixos
<AlonzoC>
<cab404 using `nixpkgs.pkgs.haskell.packages."ghc865".callPackage drv { }`
<chrismatheson>
cab404: so swift isn't compatible with Darwin_x64. Id sorta assume it was sad to install the linux version using the unsupported flag, but thought id ask if you knew of a definite reason that would not work ?
<chrismatheson>
* cab404: so swift isn't compatible with 86_64-darwin. Id sorta assume it was sad to install the linux version using the unsupported flag, but thought id ask if you knew of a definite reason that would not work ?
dingenskirchen has quit [Remote host closed the connection]
dingenskirchen has joined #nixos
alp_ has joined #nixos
<cab404[m]>
dunno — fails with clang I guess?
<noonien>
does anyone know any examples i can look at, of multi-component projects built using nix?
<noonien>
preferably simpler than nixos
<cab404[m]>
<noonien "hello folks!"> hai!
<freezeboy>
noonien you mean something with modules ?
alp has quit [Ping timeout: 256 seconds]
<noonien>
hmm, sure, but not neccessarely. i have a project with multiple binaries, libraries, each is a nix derivation, and i'm looking for a way to wrap them together
<freezeboy>
a flake ?
<noonien>
the problem i'm having is that i'm not really fond of passing derivations through nixpkgs overlays
<{^_^}>
[nixpkgs] @evenbrenden opened pull request #93764 → nixos/displayManager: add XDG_SESSION_ID to systemd user environment → https://git.io/JJ4m9
Jackneill has quit [Ping timeout: 265 seconds]
<freezeboy>
why ?
<noonien>
well, i would like to be able to separate nixpkgs dependencies, from project dependencies.
orivej has quit [Quit: No Ping reply in 180 seconds.]
<noonien>
i'm also not terribly fond of how options are passed to nixpkgs derivations (in the same set as the dependencies)
<freezeboy>
I am not sure to understand, but maybe you can build a custom channel ?
<typetetris>
In the nixos module tests, how can I wait for a oneshot service to be run? `machine.wait_for_unit("<something>")` complains `<something>` is inactive. (`RemainAfterExit = true` is set for `<something>`).
<chrismatheson>
cab404: sorry to bug, but you seem like your pretty knowledgable here. so if CoreFoundation.h is available in my nix store, but im getting errors from go. Does that mean the problem is that its not a dependency of the go pkg ?
<itshaydendev>
I have an i3-8100 CPU with UHD Graphics 630 in my work machine running NixOS, but I can't get my third monitor working. Is there an Intel-specific driver for UHD Graphics?
<cab404[m]>
<chrismatheson "cab404: sorry to bug, but you se"> You need to add it into your current environment. It won't show up if you have it system wide
<joehh1_>
hello, is there a way to move an nixops machine (ec2) from one deployment to another without a rebuild?
<chrismatheson>
@cab
<chrismatheson>
* cab404: I never got swift to install system wide. "pilers/swift/default.nix:319 is not supported on ‘x86_64-darwin’, refusing to evaluate"
<LnL>
our swift build currently doesn't work on macos
<chrismatheson>
* cab404: I never got swift to install system wide. "pilers/swift/default.nix:319 is not supported on ‘x86_64-darwin’, refusing to evaluate"
<chrismatheson>
you sail "it fails with clang I expect" was that asking if I has tried installing the package where clang is used as the compiler over (id guess) a default gcc or something ?
ddellacosta has joined #nixos
<chrismatheson>
ahhhhh
<chrismatheson>
thanks LnL
<chrismatheson>
is there an older version ? seems log the go package is dependant on some CoreFoundation stuff being available in the nix store
fling has quit [Ping timeout: 240 seconds]
<{^_^}>
[nixos-weekly] @domenkozar merged pull request #129 → 2020/07: add redox now in nixpkgs → https://git.io/JJlr4
<{^_^}>
[nixos-weekly] @domenkozar pushed 2 commits to master: https://git.io/JJ4nR
<LnL>
no, but CoreFoundation doesn't need swift
<chrismatheson>
hmmmmm
<chrismatheson>
is there another reason my go pkg would not be able to access CoreFoundation.h from the default OSX install sorta thing ?
Rurd2di has quit [Read error: Connection reset by peer]
Rurd2di has joined #nixos
<chrismatheson>
OHHH is this to do with Catalina & the read-only FS requiring nix-store to be somewhere else ??
<LnL>
no and not sure, depends on the context
<chrismatheson>
if you have a couple of minutes and done mind helping a relative nix newbie id be very appreciative :)
<{^_^}>
[nixpkgs] @maralorn pushed 2 commits to haskell-updates: https://git.io/JJ4cv
<LnL>
since go generally doesn't link against system libraries it's less of a problem there, but for anything that uses cgo you'll want to use a shell
<chrismatheson>
awesome, thanks for your help! 😀
<chrismatheson>
so ... I wouldn't mind sorting out a "portable" dev environment anyway, pretty soon my dev work will end up split across 3 machines ...
<chrismatheson>
can I define an "env" with everything I want oh-my-zsh, emacs, go etc etc as a derivation, then on any particular machine "just" `nix-shell -p my-env` sort of thing ?
<{^_^}>
[nixpkgs] @philandstuff opened pull request #93769 → yubikey-agent: fix on darwin → https://git.io/JJ4cC
<{^_^}>
[nix] @edolstra opened pull request #3857 → Convert manual to Markdown → https://git.io/JJ4cR
fendor has joined #nixos
zebrag has joined #nixos
fendor_ has quit [Ping timeout: 264 seconds]
ManiacOfMadness has joined #nixos
nikita` has quit [Quit: leaving]
fendor has quit [Read error: Connection reset by peer]
<andi->
ahh but here shell is not from mkShell ;-)
<Mic92>
Maybe I should put this in the wiki, just not sure where.
<andi->
I am running into that mkShell issue so often we might want to add an `allowBuilding` flag or something
<Mic92>
Well, in that case you are at stdenv.mkDerivation again
<Mic92>
Maybe we should just have a builder for these type of prebuild nix-shell instead.
<andi->
yeah but you shouldn't have to know what to do just because you want to pre-build the shell expression
<andi->
With Nix we very often require the user to know the inner working of the supposedly higher-level utility functions to actually make use of them.
<fresheyeball>
I am building a docker container using dockerTools
<fresheyeball>
and it works great if I build it locally
romildo has joined #nixos
<fresheyeball>
but when building in CI which is docker in docker
<fresheyeball>
it builds but doesn't contain the artifacts
<lewo>
fresheyeball: hm, this is surprising because dockerTools doesn't use Docker to build the image, so your docker in docker setup should not have any impact
<fresheyeball>
lewo: well I am not entirely sure how it builds the image
<fresheyeball>
but I had to put in a hack saying we had KVM in the nix.conf to get it to build there
<fresheyeball>
I am wondering if this is KVM vs whatever docker uses
<gchristensen>
what do you want out of a topath function?
<clever>
you dont really want to use /. you want to always start with something relative like ./.
<pie_>
clever: almost alyways
erasmas has quit [Quit: leaving]
<Fare>
gchristensen, how hard / easy is it to modify dockerTools.buildLayeredImage to group more than one package per layer?
<Fare>
So we can reduce the skew?
<gchristensen>
Fare: as far as I know, there is no principled way to do it, and so it doesn't
nature has quit [Ping timeout: 244 seconds]
<gchristensen>
what do you mean by skew?
<Fare>
And/or to give more control to the user over some base layer? "Here are the 'base' packages from outside my project, vs here are the packages I'm working on"
<gchristensen>
maybe you could create a base image with buildImage and then use it as a parent for a buildLayeredImage
<gchristensen>
(not sure if buildLayeredImage supports that)
<Fare>
gchristensen, instead of 98 layers with 1 package each then one layer with 79 packages, I'd like 80 layers with 2 packages each then 18 layers with one package each
<pie_>
oh you know what
leotaku has joined #nixos
<pie_>
maybe the problem is that im reading from a text file which has the text file trailing newline
<gchristensen>
that makes it much less likely for any given layer to be a cache hit, especially with a popularity contest to pick priorities
<Fare>
except of course configurable with a parameter or two, as in "group common packages by at least 2x" and "reserve at least 20 packages for one-package-per-layer"
<Fare>
the graph changes slowly compared to my commits on my main projects.
<pie_>
someone did a doxygen
<gchristensen>
Fare: given an arbitrary closure, I'm not sure it is possible to tell
<pie_>
clever: gchristensen: hexa-: ok the actual issue was reading a path from a file with a trailing newline...
<Fare>
I would say "any project there by name might be in a 'privileged' list, anything else gets grouped by N'
<gchristensen>
Fare: maybe it could accept a list of derivations where the exactly listed derivations are used as hints for isolated layers
<Fare>
and then two parameters as suggested above are used
alp_ has quit [Ping timeout: 260 seconds]
<gchristensen>
by name seems rough, but still I would be inclined to have [list of layers 1 store path each] + [1 layer per exactly listed derivations] + [bulk layer of all the remaining store paths] + [ configuration layer ]
<clever>
gchristensen: a list of lists maybe?
<Fare>
whenever I rebuild my code and didn't change the dependency graph, the popularity contest is unchanged, and therefore the lower layers are still shared.
<clever>
gchristensen: outer list is layers, inner lists are derivations
wnklmnn has quit [Ping timeout: 240 seconds]
<gchristensen>
Fare: would that work for you?
<clever>
Fare: i have seen problems where there are to many layers and it tends to make a 1gig layer at the end
<Fare>
gchristensen, looks good to me
<gchristensen>
I don't think branching out in to configurable paths per layer is a good idea, though
<Fare>
at least, it looks like it's a definite improvement and workable with.
<simpson>
What happens if a dependency is accidentally omitted? Should that dependency show up on the first layer which needs it?
<gchristensen>
simpson: it is impossible to omit a dependency, and would be subject to the popularity contest
<clever>
i'm thinking anything you didnt name, just goes into its own layer(s) as before
whald has quit [Remote host closed the connection]
leotaku has quit [Ping timeout: 246 seconds]
<Fare>
gchristensen, I don't understand your first category vs the second. "[list of layers 1 store path each]"
leotaku has joined #nixos
<gchristensen>
right now the output is [list of layers 1 store path each] + [bulk layer of all the remaining store paths] + configuration-layer
<clever>
gchristensen: ah, that would explain the problems ive been seeing
kreyren has quit [Remote host closed the connection]
<clever>
its not able to group things together, until it runs out of layers
<clever>
and the grouping always happens at the last layer
kreyren has joined #nixos
<gchristensen>
this change would add a section of layers for exactly a list of provided paths, so you could say buildLayeredImage { priorityPaths = [ myapp ]; } and then myapp's store path would be now be guaranteed to be in its own layer: [list of layers 1 store path each] + [ myapp ] + [1 layer per exactly listed derivations] + [bulk layer of all the remaining store paths] + [ configuration layer ]
<clever>
ive found things simpler, to juse use the non-layered function, and chain it
<clever>
usually with 3 manual layers, common unixy tools, the app itself, a shell sript to launch the app
<gchristensen>
clever: that is definitely workable, though I want to work hard to avoid any unneeded paths
<gchristensen>
Fare: does that make sense?
maier has joined #nixos
o1lo01ol1o has joined #nixos
wnklmnn has joined #nixos
fresheyeball has quit [Ping timeout: 265 seconds]
fendor has quit [Remote host closed the connection]
<Fare>
gchristensen, yes, except the order. Don't I always want my app LAST? And so for exactly listed derivations, as high as makes sense?
turlando has joined #nixos
<gchristensen>
no, the order is not relevant and has no meaning
<Fare>
bulk layers at the bottom ... hopefully constant because my dependency graph seldom changes at which point it's OK to regenerate
philr_ has quit [Ping timeout: 258 seconds]
<Fare>
ok
<Fare>
if the order is not relevant, then fine
<gchristensen>
with Docker-built layers the order is relevant and has meaning because each layer modifies the prior layer in additive and subtractive ways
<Fare>
(I thought docker layers were ordered... but maybe in this case the order doesn't matter because you contribute disjoint paths anyway)
<gchristensen>
but with buildLayeredImage, each layer is purely additive and so the order is not significant
<Fare>
ok
<gchristensen>
yeah, disjoint! exactly
<Fare>
still, I'd like the "big bulk" to be the bottom of the graph (most transitively popular?), not the top of it.
<gchristensen>
no you don't, because you're almost guaranteed that the bulk layer will never be a cache hit
<clever>
what about spreading the bulk evenly?
<Fare>
again, in my model, it's guaranteed they are, because the dependency graph hasn't changed, only my commits to various projects near the top of the graph
<gchristensen>
ah
<clever>
my problem, is that the last layer is almost always larger then every other layer combined
<clever>
so my savings are <50% of the total image
pmy has quit [Ping timeout: 256 seconds]
<gchristensen>
it might be interesting to model that and simulate what that looks like with a variety of types of software
<gchristensen>
that does make sense
<Fare>
and when the dependency graph DOES change, once in a rare while, it's OK to regenerate an image—actually, that's a good time to update the upstream nixpkgs, too.
<clever>
yeah, since its a pure function and doesnt depend on deltas, you can easily generate it for any given package, at the current ver
<clever>
though you may want some dummy config to delta, and see how much the layers changed
pmy has joined #nixos
fendor has joined #nixos
<gchristensen>
of course everything goes badly if you have something with a very large graph of small paths
leotaku has quit [Ping timeout: 244 seconds]
<gchristensen>
to do a *really* good job, the thing that does this layerification would do well with a knowledge of history
<clever>
yeah, and that can be tricky
<clever>
maybe something like PGO, where you give it a blob from past analasis?
<gchristensen>
woofta yeah I guess so :P
<gchristensen>
or maybe somebody with a better grasp of graph theory could optimise this better
<clever>
so you could build 3 or 4 images, run X on all 4, then get a tuned config blob
<clever>
another anoyance, that pure nix kinda forces on you (but recursive nix solves), is that you have to re-compres the layers each time you build
leotaku has joined #nixos
<gchristensen>
yeah
<gchristensen>
recursive nix is gonna be sweet!
stigo has quit [Quit: stigo]
stigo has joined #nixos
<Fare>
recursive nix?
turlando has quit [Ping timeout: 256 seconds]
<Fare>
what is "recursive nix"?
<gchristensen>
it lets a derivation evaluate Nix inside the build and run a nix-build inside the nix-build
<clever>
Fare: running nix-build inside a nix build
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « haskell-dhall: jailbreak for ghc-8.10.x to accept the latest repline library »: https://git.io/JJ4wK
dermetfan has quit [Ping timeout: 272 seconds]
Nerdmaxx has joined #nixos
kuznero has joined #nixos
<kuznero>
Hi All! Is there any chance to automate merge of version bumps for certain apps? I'm having vscode, vscodium in mind.
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « haskell-dhall: use latest version for ghc-8.10.x so that we can build with the latest repline library »: https://git.io/JJ4wN
<gchristensen>
mostly servers and other infrastructure
<energizer>
i mean how much
<gchristensen>
not sure monthly, but also there is a signifant amount of donated services which the foundation saves money to pay for in case of a rainy day where we needed to pay for it ourselves
<gchristensen>
for example thee hardware from Packet is easily 20k/mo, and the cache is costly in terms of storage and bandwidth
<qyliss>
energizer: I think a single dedicated person could get through about 150 PRs a month, based on past attempts to bring the PR number down myself
<gchristensen>
and burn out in roughly 6 months :)
<qyliss>
well, maybe not if it was a full time job?
<qyliss>
or at least not more than other jobs, idk
<energizer>
qyliss: it would be interesting to see some more numbers like that
alp_ has joined #nixos
ingenieroariel has joined #nixos
ingenieroariel is now known as Guest73573
<energizer>
i dont even know how fast prs are generated
<qyliss>
github pulse should tell you that
Guest73573 has quit [Client Quit]
leotaku has quit [Ping timeout: 260 seconds]
ingenier1ariel has joined #nixos
orivej has quit [Ping timeout: 256 seconds]
<energizer>
1,685 Pull requests merged by 392 people in the last month
<MichaelRaskin>
qyliss: It has some interesting burnout-generating qualities that are not universal…
orivej has joined #nixos
Thra11 has joined #nixos
<MichaelRaskin>
I mean, to reach those numbers one needs to make quite a few calls completely out of the area of personal confidence in what is even going on.
<qyliss>
I think it depends
<energizer>
but wait, doesnt' that mean the number of open PRs is decreasing at a rate of 1k/mo? that doesnt sound right, must be misinterpreting
<qyliss>
like, it would go a long way to focus only on the updates / trivial new packages
<ashkitten>
energizer: that's number of active prs, split into ones that were merged in the past month and ones that just had activity
<energizer>
ashkitten: ah that makes more sense
<qyliss>
that's a very misleading sentence
<qyliss>
(the github one)
<gchristensen>
energizer: about 2.5 PRs/hour
<energizer>
gchristensen: where is that coming from?
<MichaelRaskin>
qyliss: even for updates there are quite a few catches…
<MichaelRaskin>
I think my last burnout was on 50 in a single day while punting on another 200 in the process
<qyliss>
and I did that by looking through loads of them, and as soon as there was anything that made me feel like this wasn't immediately suitable for merging I just moved on
<{^_^}>
Reventlov: Just ask your question. It's the best way to know if anybody can help. Or look at other ways of getting in touch with the Nix community here: https://nixos.wiki/wiki/Get_In_Touch
<MichaelRaskin>
qyliss: also, URL should stay the same, either there is ${version} expansion, or needs human review
<energizer>
so about 6700->6400 in the last 90 days
<Reventlov>
And this is the error: https://0x0.st/iwJl.txt (it's about some collision between two components of django)
<MichaelRaskin>
qyliss: and I guess you assume no-downgrades?
<energizer>
gchristensen: erm ya idk how to write queries here :)
<Reventlov>
I'm not really understanding why there would be a collision, as I'm not installing duplicated stuff (I guess)
<Reventlov>
( collision between `/nix/store/chfk7c9dj0mnsq39rgq27fvq3ns8sj4y-python3.8-Django-2.2.14/lib/python3.8/site-packages/django/contrib/gis/geos/libgeos.py' and `/nix/store/9b87lniy4imks9qdm5gw8gb7hjlwmr6v-python3.8-Django-2.2.14/lib/python3.8/site-packages/django/contrib/gis/geos/libgeos.py' )
<{^_^}>
#64451 (by pasqui23, 1 year ago, open): django.gis: cannot use GDAL in python project
<energizer>
gchristensen: your latest link is somewhat worrisome
<gchristensen>
why?
<MichaelRaskin>
And how you make sure that there is no revert-resubmit (with, obviously, two submitters and the reverter being three people not knowing each other)?
<energizer>
gchristensen: number of open PRs growing at 1k/year
<gchristensen>
absolutely not
<LnL>
compare that with the amount of merged prs
<energizer>
what does sum(github_prs{repo="NixOS/nixpkgs", state="open"}) mean?
<davidak[m]>
<jtojnar "davidak that should work"> what?
nij has joined #nixos
<gchristensen>
well .... maybe it does ... but also, it hasn't panned out that we're actually growing like that, long term
<nij>
I managed to install nixos in virtualbox on my laptop! Now it's taking up a lot of space, but I just want to play with it, and find my minimal working config. I should do it again, and give it less resources.
<energizer>
how can you tell gchristensen?
<nij>
Would 25GB be enough for it? 8GB for root and 17GB for home
<gchristensen>
energizer: because I've been very actively part of the project for over 4 years :)
<MichaelRaskin>
qyliss: I can produce a lot of catches
<cole-h>
gchristensen: Only 4?
<gchristensen>
can confirm, MichaelRaskin is Catches as a Service
<energizer>
gchristensen: 180 days ago there were 1709 and now there are 2240, (2240-1709)*2 = 1062 per 360 days
<infinisil>
nij: Nix uses /nix for everything
<cransom>
nij: if you are just testing, there's no call really to make separate root and home
<infinisil>
This too ^
<MichaelRaskin>
Sometimes Catches as a Public Service Announcement, too
<gchristensen>
cole-h: my day one: 2016-01-15 19:56:56 --> gchristensen (~gchristen@unaffiliated/grahamc) has joined #nixos is when I first got tricked to installing this thing in vbox
<Fare>
MichaelRaskin, hi
<cole-h>
Wow, I thought you were a member for much longer, with all the knowledge (and responsibilities) you have.
<MichaelRaskin>
qyliss: I guess if we have merge automation, the first step would be allow non-committer-maintainers merge things submitted by other people with merged PRs and touching only one their package
<MichaelRaskin>
Fare: hi!
<gchristensen>
cole-h: for the most part people get responsibilities as they do the work :P (see also your ofborg responsibilities)
<cole-h>
Heh
orivej has quit [Ping timeout: 264 seconds]
orivej has joined #nixos
<timokau[m]>
gchristensen: Wow, somehow I assumed you were around for way longer than me
<simpson>
Could we perhaps allow only packages which have corresponding NixOS tests to be automatically merged?
<cole-h>
simpson: I don't think that's a good metric, because not all NixOS tests are created equal (e.g. a PR may break some niche feature that is untested)
<Fare>
sorry, I was playing Robot Odyssey with my 8 yo.
context has joined #nixos
<MichaelRaskin>
Fare: definitely a respectable activity!
<gchristensen>
nice
<context>
I installed nix and nix-darwin, and now im already in a state that I cannot do anything. no matter what i try doing i get permission errors related to .lock files, i cannot uninstall nix-darwin cause permission errors, and if i use sudo i get something about nixpkgs not found
<nij>
infinisil: Wooo! Oh! I see! In this case, how large should I give it?
<simpson>
cole-h: What might a maintainer do though, for such a package which *isn't* covered in tests? I have no problem with certain packages being must-not-break, like glibc, but I'm wondering exactly what a human maintainer would do better here.
<nij>
cransom: So I can run everything in root :D?
<context>
I am new to nix but... it shouldn't be this easy to totally F'up a package manager should it?
<timokau[m]>
context: Its probably safe to just `sudo rm` those lock files
<infinisil>
nij: If you don't install crazy things, 10GB should probably be enough imo
<infinisil>
Maybe 15
<timokau[m]>
context: (note the probably; don't sue me ;))
<LnL>
context: sounds like you ran nix with root, the default installation is for a single user only so everything is (or should be) owned by your local user
<context>
those lock files dont exist
<cransom>
nij: yeah. all of my production is a single partition.
<context>
@LnL yeah, i ran something as root cause i kept getting warnings about a root profile not existing, i just wanted the warnings to disappear
<context>
so the warning disappeared, but now i cant do anything
<LnL>
it's probably /nix/store itself that's owned by root now
<context>
@LnL is there any easy "undo" or .. "nuke the entire site from orbit" option ?
<LnL>
chown $USER /nix/store
nature has quit [Quit: WeeChat 2.9]
<context>
that seems to be working. thanks
<nij>
infinisil: so good to know :D
<nij>
cransom: That's super neat...
<LnL>
context: it's possible there are some more paths, if you get permissions errors when running gc you'll have to run that again with -R
<LnL>
but depending on how much stuff you have installed that might take a while
orivej has quit [Ping timeout: 256 seconds]
orivej has joined #nixos
<context>
yeah. no worries. it might just be that profiles directory, nothing was done i dont think
proofofkeags has quit [Remote host closed the connection]
<Fare>
MichaelRaskin, so what should or shouldn't go in passthru ?
proofofkeags has joined #nixos
malik has quit [Quit: malik]
<Ankhers>
Does anyone have experience dynamically deploying their nix configurations? i.e., I have a few servers that users can run software on, but I want to limit what software they can run. So I build a web interface that exposes certain services. User A decides they want to run postgres, so they go into the web interface and click a button to deploy postgres. So they postgres somehow get deployed for that user.
<energizer>
Ankhers: might look at nixery
<MichaelRaskin>
Fare: Extra direct derivation arguments end up added to the shell environment inside the build
<MichaelRaskin>
If this is desirable, of course these should be direct arguments.
<MichaelRaskin>
Note that un-quoting inside strings happens earlier and does not care if things eventually get passed to the derivation
orivej has quit [Ping timeout: 256 seconds]
o1lo01ol1o has joined #nixos
proofofkeags has quit [Ping timeout: 240 seconds]
orivej has joined #nixos
<MichaelRaskin>
Fare: I think dashed variable names — that do not get passed in environment because passing such things is a bit of undefined behaviour — have no reason to be passed directly and not just added for future reference of rev-deps via passthru
<Ankhers>
energizer: Thanks!
kaliumxyz has quit [Remote host closed the connection]
<MichaelRaskin>
It is also OK not to pass things neither directly nor via passthru if you only need them for unquoting. (Not the case with the specific variables starting our discussion)
<lovesegfault>
How can I get NixOS to import a pool on boot, but not mount or unlock it?
owl has quit [Quit: owl]
szicari has joined #nixos
<Fare>
is there a naming convention (say, dashes, or some other character) that also identifies a variable as "not to be included", or is using passthru the Right Way™ to do it?
owl has joined #nixos
AMD1212 has quit [Ping timeout: 246 seconds]
<Fare>
I admit I'd have to look at the variables and see which are or aren't included in the build recipe anyway, so it doesn't matter if they are *also* in the environment.
syberant has quit [Remote host closed the connection]
primeos has quit [Quit: WeeChat 2.8]
<MichaelRaskin>
For not included you just not pass it directly. I do not think there is a reliable naming convention. Dashes do this in a weird way — you ask to pass it, but passing is too flaky to try
<energizer>
i have filesystems."/data".encrypted.enable=true but when i tried to boot landed me in emergency mode. where can i find the logs of what caused the failure?
knupfer has joined #nixos
<MichaelRaskin>
Fare: are you even using any of them via shell environment?
primeos has joined #nixos
nij has left #nixos [#nixos]
<energizer>
qyliss: at the current growth rate of +1k PRs/year, the 150 PR/month rate you mentioned for a single person would be sustainable. but a full time staffer would be expensive, well beyond the current "annual budget" of 16keuro that opencollective shows
justanotheruser has quit [Ping timeout: 260 seconds]
<Fare>
MichaelRaskin, I'm not actually using *anything* via shell environment ... I expand everything in ${} expansion
knupfer has quit [Quit: knupfer]
knupfer1 has joined #nixos
<MichaelRaskin>
Then you do not need to pass anything as direct derivation arguments; you can pass whjat is needed by rev-deps via passthru, and skip the rest
<Fare>
MichaelRaskin, I need packages to expose metadata for use by other packages that use them, such as whether they have a version file and if so at what path.
<energizer>
in compatible units, current growth rate is about 83PRs/mo, which is by supposition doable by a 50%-time staffer with a bit more automation. idk what the salary for nix people is these days
<Fare>
ok, I'll work on that at some point this weekend.
<{^_^}>
[nixos-homepage] @garbas pushed 118 commits to integrate-new-search: https://git.io/JJ4im
<{^_^}>
[nixos-homepage] @garbas pushed to integrate-new-search « Revert "added install and clean targets update flake.nix" »: https://git.io/JJ4iY
<noonien>
clever: thanks again! :D
szicari has quit [Ping timeout: 260 seconds]
<noonien>
is there a tool to help vendor sources for dependencies?
szicari has joined #nixos
proofofkeags has joined #nixos
<energizer>
noonien: niv
<noonien>
hmm, i don't think niv does dependencies
<noonien>
niv does vendoring* sorry
<energizer>
what do you want this tool to do?
<noonien>
hmm, i'm not really sure it can be done, with how nix works. i want a select list, or all derivations that are used as sources to be vendored in my project
<noonien>
vendored as in downloaded in my project folder, so they can be used as a primary source
<noonien>
so, instead of downloading a github repo, the derivation of the source should already be in my project folder, and it should be used from there
<clever>
noonien: just put a default.nix in the project, and run nix-build on it
<noonien>
this can probably be done by having a list of NARs, that are imported into the nix store prior to the build
<clever>
cab404[m]: need more context, what derivation caused it?
<cole-h>
gchristensen: What if you do `(_: super: { dhcpcd = super.hello; })` ?
<gchristensen>
cole-h: no luck. it doesn't seem to have any effect: nixpkgs.overlays = [ (self: super: { dhcpcd = builtins.trace "wtf" self.hello; }) ];
yourfate has quit [Quit: Sayōnara, ihr Trottel.]
<clever>
gchristensen: any containers at play? or nixpkgs.pkgs ?
zaeph has joined #nixos
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<cab404[m]>
<clever "cab404: need more context, what "> a random git pull, it's not something I want to solve, it's a strange random error I for which don't know a cause)
<cab404[m]>
<gchristensen "cole-h: no luck. it doesn't seem"> Are you sure you are actually using dhcpcd?
<gchristensen>
cab404[m]: even if I override `systemd` to be something else it doesn't have an effect
<gchristensen>
clever: interesting question, I'm not doing that anywhere
<clever>
cab404[m]: nix always disables the network while building things, so you cant clone things like that
<clever>
gchristensen: are you able to reproduce the issue with a minimal set of nix files you can publish?
<cab404[m]>
Try adding it to system packages, for a sanity check
<clever>
gchristensen: it will impurely load the config.nix and overlays from $HOME
yourfate has joined #nixos
<cab404[m]>
wow
<gchristensen>
nice.
<clever>
adisbladis: where is your purity now? :D
<cole-h>
Weird. I have overlays working just fine on my system (at least in that I can add my overlayed package `passrs` to my `environment.systemPackages`)
Nerdmaxx has joined #nixos
<clever>
cole-h: the problem is specific to that version of nixops i believe
<cole-h>
clever: I'm running from master
<gchristensen>
master as of when?
<cole-h>
62875f5e0a054e396e5a8fe7c95545a628408fd1
<cole-h>
Is what I have it pinned to with niv
<gchristensen>
humm
<ashkitten>
is there any way to have nix load overlays & such from the nixos-config even if it's not present on the host system? (like, generate it as part of the system)
<ashkitten>
it's frustrating using nixus to deploy but then nix impurely looks for overlays in mutable directories
Nerdmaxx has quit [Remote host closed the connection]
Nerdmaxx has quit [Remote host closed the connection]
<cole-h>
gchristensen: Pushed, but there shouldn't be much that would change the behavior.
Nerdmaxx has joined #nixos
<cole-h>
gchristensen: Maybe the difference is that I rely on ~/.config/nixpkgs/overlays/default.nix, whereas you're directly modifying nixpkgs.overlays?
<clever>
ashkitten: lines 10-14 will setup $NIX_PATH to look for overlays in /run/current-system/overlays, and line 17 will then put the overlays there
<ashkitten>
ah
<excelsiora>
I want to start a new elm project on my nixos server. I want to use entr to watch the Main.elm file and build it. Should I do it inside of a nix-shell or should I have a makefile build it with nix? I want the build moved to the server www directory...
<clever>
ashkitten: i think that has priority over the ones in $HOME
<clever>
ashkitten: though if the $HOME overlays are missing, it doesnt amtter as much
<ashkitten>
i wish i didn't have to write files like that manually, especially since my nixpkgs config and overlays aren't in their own place
<ashkitten>
i suppose i can separate them out, but...
Nerdmaxx has quit [Remote host closed the connection]
Nerdmaxx has joined #nixos
<ashkitten>
if only there was a way to write nix expression to a file
<clever>
ashkitten: line 5-6
<clever>
that write an expression to a file, and then 11 points NIX_PATH to it
<ashkitten>
yes, clearly, but i meant somenhing like `builtins.toNix config.nixpkgs`
Nerdmaxx has quit [Remote host closed the connection]
<clever>
cant easily do that, because the nix parser mutates the syntax a lot
<ashkitten>
would be really nice though
Nerdmaxx has joined #nixos
<clever>
<nixpkgs> magically turns into __findFile __nixPath "nixpkgs" i believe
<ashkitten>
i mean, as long as it parses, right?
<clever>
and `1 * 2` turns into `__mul 1 2`
<clever>
functions dont even remain intact
<clever>
they turn into pointers to c++ functions
<clever>
no real way to undo that
<ashkitten>
so it can't be parsed?
<clever>
it cant be un-parsed
Nerdmaxx has quit [Remote host closed the connection]
<ashkitten>
sigh
Nerdmaxx has joined #nixos
D_ has quit [Remote host closed the connection]
<ashkitten>
would be easy in a lisp...
<ashkitten>
wait, someone's already done that
<ashkitten>
lol, guix
<clever>
yeah, thats a lisp based expression language, ontop of the existing nix-daemon and drv files
<ashkitten>
finally a reason i'd want to use it
<clever>
in the end, it still evals down to a .drv file, and nix-daemon builds it as normal
D_ has joined #nixos
zebrag has quit [Quit: Konversation terminated!]
<ashkitten>
buut i won't use guix anyways because no nonfree software
pmy has quit [Ping timeout: 244 seconds]
<ashkitten>
kinda necessary
o1lo01ol1o has quit [Remote host closed the connection]
<qyliss>
nonfree software for guix is available
<qyliss>
just not in the main repos or on official infrastructure
<ashkitten>
i see
<lovesegfault>
qyliss: do they have a unified guix-nonfree repo>
proofofkeags has quit [Remote host closed the connection]
proofofkeags has joined #nixos
cript0nauta has joined #nixos
mbrgm_ has joined #nixos
o1lo01ol1o has quit [Ping timeout: 240 seconds]
mbrgm has quit [Ping timeout: 244 seconds]
mbrgm_ is now known as mbrgm
xelxebar_ has quit [Quit: ZNC 1.7.2+deb3 - https://znc.in]
xelxebar has joined #nixos
proofofkeags has quit [Ping timeout: 260 seconds]
proofofkeags has joined #nixos
maier has joined #nixos
dsiypl4 has quit [Ping timeout: 260 seconds]
orivej has quit [Ping timeout: 240 seconds]
proofofkeags has quit [Remote host closed the connection]
orivej has joined #nixos
proofofkeags has joined #nixos
praduca has joined #nixos
<praduca>
hi everybody!
maier has quit [Ping timeout: 246 seconds]
<praduca>
someone have installed both gnome3 and plasma? i'm trying to install plasma but it give an error
<praduca>
error: The option `programs.ssh.askPassword' has conflicting definitions, in `/nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/services/x11/desktop-managers/plasma5.nix' and `/nix/var/nix/profiles/per-user/root/channels/nixos/nixos/modules/programs/seahorse.nix'.
<praduca>
apparently each distro has a distinct default
proofofkeags has quit [Ping timeout: 240 seconds]
<clever>
praduca: you can use mkForce to force your own choice onto that option
vk3wtf has quit [Quit: WeeChat 2.7.1]
vk3wtf has joined #nixos
selfsymmetric-mu has joined #nixos
<selfsymmetric-mu>
Does anyone use Cachix to just speed up their personal configuration between machines?
<infinisil>
selfsymmetric-mu: speed up how?
<selfsymmetric-mu>
Oh interesting. Maybe I have the wrong idea of what Cachix is…
pamplemousse has quit [Quit: leaving]
<selfsymmetric-mu>
Let's see…cache.nixos.org supposedly caches builds of nixpkgs binaries. If that's the case then why does my nixos-rebuild still appear to be building things?
<infinisil>
selfsymmetric-mu: There's infinitely many derivations, cache.nixos.org only has a subset of those
<selfsymmetric-mu>
And so…let's say I take the subset that I built on my machine. I pull the same configuration and build it on my laptop.
shibboleth has quit [Quit: shibboleth]
<infinisil>
Specifically it doesn't have those derivations cached that are either different for everybody, or which are so fast to build it doesn't make sense to cache them