<Henson>
this is a dumb question, but how do I convert an integer to a string. I've tried something like foo = 12; string = "hi ${foo} there" but it complains about coercing an integer to a string
<infinisil>
bokov: Is there a problem with using that url directly?
sellout-1 has joined #nixos
sellout- has quit [Ping timeout: 240 seconds]
<bokov>
ok, I see now. the problem is somewhere else. it downloads correctly, but then I get: `unpacking source archive /nix/store/kfpyy25xwb8jq2w2s0gf6ijikyr38dpr-unison-linux64.tar.gzunpacker appears to have produced no directories` . If I unpack this file manually there's indeed no directories, but just one file. how can I make this to be accepted as
<thefloweringash>
what's the story for writing out of tree buildGoModule based packages? buildGo111Module and buildGo112Module require different modSha256 values. nixos-19.03 only has buildGo111Module and nixos-unstable only has buildGo112Module. Do I have to use { buildGo111Module ? null, buildGo112Module ? null }: ... and check which one was actually provided?
rsoeldner has quit [Ping timeout: 246 seconds]
rsoeldner has joined #nixos
<infinisil>
thefloweringash: That's a very good question, and I don't know a good answer to it
<infinisil>
I haven't ever thought about the sha256 being different for different versions
<infinisil>
And if you use buildGoModule, you can't even control the version really
<thefloweringash>
it also seems like it's going to surprise anyone who tries to change `buildGoModule =` from 111 to 112
fling has joined #nixos
ilyagotfryd has quit [Ping timeout: 265 seconds]
drakonis has quit [Quit: WeeChat 2.6]
gxt has quit [Remote host closed the connection]
johanot_ has joined #nixos
johanot_ has quit [Client Quit]
rsoeldner has quit [Ping timeout: 246 seconds]
johanot has quit []
lovesegfault has joined #nixos
<thefloweringash>
oh, the PR that did that bumped all the hashes on the in-tree packages (#58103)
<lovesegfault>
Does the concept of a developer and/or maintainer exist in the NixOS project? Akin to Gentoo developers or Arch's Trusted Users, etc?
<dminuoso>
Mmm, Im running `programs.ssh.startAgent = true;` but it doesnt appear to be picked up. Every time I use ssh, I dont get any askpasswd screen - I have to manually re-add identities. Is this by design?
<infinisil>
The thing described there would prohibit things like buildGoModule
<infinisil>
thefloweringash: Hm although, why do the hashes of buildGoModule change really? Shouldn't it only download the dependencies without compiling?
gila has joined #nixos
<thefloweringash>
the diff shows each package has two new files: list.lock and $version.lock
<infinisil>
lovesegfault: Yeah there are people who can commit to nixpkgs (committers/nixpkgs members), those that can maintain packages (see the recent rfcs#39), and anybody can submit PRs and become a contributor
<infinisil>
dminuoso: Did you export your ssh key to ~/.gnupg/sshcontrol?
<infinisil>
I believe that's necessary
<lovesegfault>
infinisil: I see, but there isn't a clear/structured NixOS dev. hierarchy then?
<lovesegfault>
Other than commit access devs -> non-access devs -> passerby contributors
<simpson>
lovesegfault: Such a hierarchy doesn't cleanly separate, since most of nixpkgs requires other parts of nixpkgs.
<lovesegfault>
simpson: I'm not sure I understand what you mean
<simpson>
We don't award special powers to those willing to touch glibc or gcc, AFAICT; we just have high expectations for the Nix expressions themselves.
<simpson>
lovesegfault: You mentioned Gentoo and Arch. In those communities, it's possible for package maintainers to be extremely isolated and also to provide dependencies to other packages, creating a sort of power differential, and thus a hierarchy of responsibilities.
<simpson>
But in nixpkgs, just keep stuff working. The package sets we build in CI reflect community usage patterns rather than some meritocratic ideal.
<lovesegfault>
simpson: Yes, like in Gentoo the people maintaining the core packages have their actions ripple through all people maintaining everything else
<lovesegfault>
But what if a pkg breaks? Who do I go complain to?
<simpson>
lovesegfault: Sure. But in nixpkgs, the *packages* have changes in their literal code, and those changes ripple through other packages. The people are incidental.
<infinisil>
lovesegfault: simpson: Well I guess there is edolstra as the unofficial head since he's the creator of Nix, and then there's a couple "head devs" if you will that are part of the NixOS organization
<simpson>
Find out what changed, and you'll know how it broke.
<lovesegfault>
(FWIW I'm asking this out of pure curiosity, I have no horse in this race and I'm not here to prove any sort of point)
<lovesegfault>
(Disclosure: I maintain stuff for Gentoo)
<simpson>
infinisil: Sure. Lucky 10000: Power and responsibility are formally dual. By having different repositories with different committers and release responsibilities, a power differental between Nix and nixpkgs naturally forms.
<lovesegfault>
simpson: Okay, but if I'm an user the last thing I want is to spend my day going over some Nix expression to find out why something I had working broke, no?
<lovesegfault>
Like, I don't think it's a good policy to tell users to fix their own problems or go home :P
<simpson>
lovesegfault: No worries. I used to be a Gentoo contributor. I am hoping to get across a bit of a point about Nix itself. Nix's way of treating packages is (transitionally, imperfectly) fundamentally different than in other systems, and those technical differences are reflected in how people (can) interact with it.
<simpson>
lovesegfault: Like, *why* did it break? With Nix, generally breakage is a result of user action.
<lovesegfault>
simpson: E.g. a GCC bump broke it
<simpson>
And those actions are reversible. nixpkgs can be pinned, and in fact can be manipulated directly via git. NixOS generations can be rolled back.
<lovesegfault>
Or a revdep library had it's version bumped including ABI changes but the bump didn't bump the soname
<simpson>
lovesegfault: Then rewind to before the GCC bump. That is a thing that you can do. You can also use git to revert just the GCC bump and keep other changes, although it's not guaranteed that that'll build (Nix isn't commutative).
<simpson>
There's no revdep-rebuild. No need for it. Nix simply doesn't let those situations arise.
<lovesegfault>
How does Hydra (that's the build automation thing, correct?) handle package settings?
<lovesegfault>
Like, for n USE flags there are 2^n possible different pkg "configuration states"
<lovesegfault>
I know they're not called USE flags in Nix, they're like settings on the formula that you override
<lovesegfault>
(I remember seeing a PR a long time ago for global USE flags in Nix)
<lovesegfault>
(Disclosure: We use Nix at work and I work with a handful of people from Tweag I/O thus the Nix curiosity)
<infinisil>
lovesegfault: nixpkgs doesn't build multiple configs of packages, it only builds the default
<lovesegfault>
infinisil: Ah, I see, that avoids the problem :)
<infinisil>
Well it builds all the packages in the top-level attribute set
<simpson>
Most USE flags aren't desired at all, or are intrinsic. Nix specializes on the build triple, more or less, and that's enough for what most folks want.
<infinisil>
So this means you can define `hello_with_feature` and `hello_without_feature` in the top-level set to have multiple configs
<simpson>
Most speed-focused packages are moving to runtime CPU detection, blessedly, and that takes out the need for -march=native rebuilds.
<lovesegfault>
infinisil: That makes me turn my nose for some reason :P
<simpson>
There *will* be times when you'll want to tell a package to be built slightly differently, but they're rare.
endformationage has quit [Ping timeout: 240 seconds]
<jluttine>
in a string like: ''foo ${${pkgs.bar}}'', how do i escape the outer $ so that nix won't evaluate it? i tried ''foo \${${pkgs.bar}}'' getting unexpected DOLLAR_CURLY error.. i want the resulting string to be ''foo ${/nix/store/....-bar-...}''
<simpson>
The desired use cases are few. There might be `package` and `package_static`, or `package_3_95`, or `package_full`, or `package_barebones`.
<lovesegfault>
simpson, infinisil does this tie in to why I sometimes see _wrapped pkgs?
<lovesegfault>
like, wtf is neovim_wrapped?
<simpson>
lovesegfault: Wrappers usually have to do with funky linking conventions that only correctly execute when the planets and environment variables align.
<simpson>
For neovim, I'd guess either the Lua or the Python support requires a runtime wrapper.
<jluttine>
lovesegfault infinisil: thanks!
<infinisil>
lovesegfault: simpson: For neovim and a lot of other wrappers, they let you configure some additional things on top of the original package
<infinisil>
Meaning that changing the wrapper configuration won't have to rebuild the non-wrapped derivation
<lovesegfault>
infinisil: Can you give me an example of one such thing? (not necessarily on neovim)
<simpson>
infinisil: Ah, that's interesting. Good point.
<lovesegfault>
infinisil: Oh oh oh
<lovesegfault>
I think I get it!
<lovesegfault>
neovim_wrapped is neovim + its configurable dependencies & it's config file defined at configuration-eval time?
<jluttine>
does systemd service have the username in the environment or somehow that i could access it in ExecStart? i tried $USER but apparently that's not defined in that context
<lovesegfault>
jluttine: %U?
<lovesegfault>
Something like that
<infinisil>
lovesegfault: There's only pkgs.neovim or pkgs.neovim-unwrapped :)
<infinisil>
But yeah, pkgs.neovim is what you described as neovim_wrapped
<lovesegfault>
infinisil: Got it :)
<lovesegfault>
v. neat
<infinisil>
jluttine: ExecStart isn't interpreted by a shell, so environment variables can't be read like that. You can use systemd.services.*.script to have some command executed in a shell
<jluttine>
lovesegfault: yeah, thanks, %u did it!
graf_blutwurst has joined #nixos
<jluttine>
infinisil: ok, thanks
<lovesegfault>
jluttine: :)
<infinisil>
lovesegfault: jluttine: Ah neat, didn't know about %u :o
<simpson>
lovesegfault: The one final feature of Portage we'll map to Nix is eselect. Nix lets us simply parameterize whatever expressions we like, so e.g. selecting a Python version is a matter of rebuilding the entire Python package set upon a particular Python interpreter.
<dminuoso>
manveru: Well let forces you to supply the bindings first, and *then* mention the definition.
<dminuoso>
manveru: where flips that around.
<manveru>
dminuoso: yes, but i never understood why people like that :P
<dminuoso>
manveru: Because you get to focus on the definition of something first, without going through supplementary bindings.
<manveru>
dminuoso: and you'd need some `in ... where` construct, because you can't rely on indentation
<simpson>
manveru: In Haskell, where-bindings have automatic scoping over themselves and the main definition, making recursion a little easier.
<lovesegfault>
infinisil: I had seen that before, but I didn't understand its use; a lot of the pkgs there are already on nixpkgs?
m0rphism has joined #nixos
<simpson>
dminuoso: ^^^ Because of `rec` in Nix, this might not be the best fit for where-bindings.
<manveru>
simpson: ah, i never noticed that :)
<manveru>
i'm still a haskell noob
<infinisil>
lovesegfault: Probably, but nixpkgs is very slow with updates and likely not as focused on wayland as colemickens
gxt has joined #nixos
<infinisil>
But yeah maybe nixpkgs works just fine
<infinisil>
If I were to try out wayland, I'd use colemickens' repo anyways
<lovesegfault>
infinisil: I mean, one can just use the unstable channel, right?
<simpson>
manveru: No worries. Haskell's got an interesting design compared to many other MLs, in that there's a deliberate choice to have *pairs* of equivalent functionality. Both let- *and* where-bindings.
<infinisil>
lovesegfault: Unstable channel just means whatever updates were committed to nixpkgs arrive in it without a long delay
<graf_blutwurst>
Good morning. I was wondering if someone could tell me how I can target a specific minor version of the kernel? the current 4.19.75 leads to a kernel panic on my system. Right now I'm way ahead on 5.3.1 but that's not quite working right.
<simpson>
We might say that Nix is in the "expression" style of ML. let-bindings, case analysis, calling methods to delegate functionality.
<infinisil>
lovesegfault: But that doesnt' mean the updates committed upstream get committed to nixpkgs
<infinisil>
So packages can lag behind updates a lot
<lovesegfault>
infinisil: Wait, now you confused me :P
<lovesegfault>
I thought unstable was 'cut' from git master?
<lovesegfault>
At some high frequency
<infinisil>
lovesegfault: Upstream releases new version -> Somebody notices the new version and makes a PR to nixpkgs (master) -> PR gets merged -> hydra builds everything until everything builds -> new channel gets released
<infinisil>
Yeah that's right
gxt has quit [Client Quit]
<lovesegfault>
:O
<lovesegfault>
But there's like 50k pkgs!
<infinisil>
But the whole process there can take quite some time, which is why unstable doesn't mean packages are up to date
<lovesegfault>
Stuff must break all the time
<infinisil>
lovesegfault: Ah yeah correction, it's only a small subset needed for the channel to advance, lemme see..
<graf_blutwurst>
lovesegfault: That's how I currently set my kernel as per https://nixos.wiki/wiki/Linux_kernel problem is that I can't seem to list the available kernel packages. They all get listed as "marked as broken"
<{^_^}>
#69213 (by yorickvP, 1 week ago, open): regressions due to patchelf: 0.9 -> 0.10
<dminuoso>
simpson: Im not sure I understand. Having `rec` does not immediately seem like a reason not to have where.
<lovesegfault>
infinisil: Oh, damn, that's pretty bad :P
<infinisil>
I feel a bit bad for booxter, who I think I originally motivated to do the 0.10 upgrade, and they worked hard on it, only for the PR to be ignored for months, then finally merged, and a week later reverted again
wfranzini has joined #nixos
<infinisil>
:(
<lovesegfault>
infinisil: Yes, that must be incredibly frustrating
<simpson>
dminuoso: In the ML tradition, it usually is. I happened to be reading an SPJ presentation where he talks about this, and after he mentioned it I found myself unable to name any other MLs besides Haskell with both types of bindings.
<eyJhb>
I don't know if that includes PRs, but in general there is SO MUCH to do...
<infinisil>
eyJhb: Unfortunately only issues :(
<eyJhb>
I do however wish, I could get dream killer powers, for my duplicate / not needed PRs anymore, so I could start closing them :D
<eyJhb>
Damn.. There should be something for PRs as well, as there is a TON of them...
<lovesegfault>
I'll be honest, I feel less motivated to contribute to NixOS than to Gentoo; just because with Gentoo I feel like my contributions amount to some longterm "personal gain" of becoming a dev and getting ownership of the packages I care about
<infinisil>
eyJhb: I did use random numbers to select random PRs before :P
<lovesegfault>
The ad-hoc maintainership model of NixOS feels weird to me
<eyJhb>
lovesegfault: you become a maintainer of the package?
<dminuoso>
simpson: Well granted, it's redundant if you wanted where in order to declare recursive bindings. I just like the order of `where` in that you get to focus on the meaning of a binding before mindstepping through potentially dozens of bindings.
<eyJhb>
infinisil: seems like a good idea! At some point there should be a policy for stale issues/PRs, because I am 100% sure, we can close a good amount of them
<lovesegfault>
eyJhb: Sure, but that doesn't mean I commit access, right?
<infinisil>
eyJhb: Well.. rfcs#51
<eyJhb>
It does not, and that is still a good thing that it doens't. As everything should be reviewed :)
<dminuoso>
simpson: nix to some degree promotes making bindings too global in order to order your bindings the way you want.
<ivan>
maintainers having full ownership of their packages doesn't make that much sense when you're running a massive software integration project which is what a linux distribution really is
<eyJhb>
infinisil: that is true! And we have some rfcs#53 , that might help as well
<infinisil>
lovesegfault: You can still have a maintainership of nixpkgs packages by listing yourself as a maintainer for it, the bot will then ping you for PRs that touch it and you can review them
<eyJhb>
ivan: yeah, but you don't have push access to any repos on the master branch, etc. or nixpkgs in general
<dminuoso>
I mean in the current state of affairs, doing something like `{ foo = let ... in someShortdef; bar = let ... in anotherShortDef; }` is rather tedious (when you have to abuse attrsets as modules in particular)
<dminuoso>
And I think I missed some semicolons there. :-)
<eyJhb>
Also, if you are a maintainer you do become a member of NixOS, and you have extra access to the bot for your own packages :D
<simpson>
lovesegfault: That's a feature, not a bug. nixpkgs is far more important to its many many users than to any one maintainer's vanity.
<infinisil>
dminuoso: simpson: manveru: Btw we'd have #nix-lang for discussions on the language itself :)
<dminuoso>
infinisil: Ahh! Great to know. Cheers/.
cinimod` has quit [Ping timeout: 276 seconds]
<eyJhb>
Can't decide if I should make a little web app, for my PRs that might be worth looking at thingy
ris has quit [Ping timeout: 240 seconds]
<lovesegfault>
simpson: See, you say that, and as a user I like it but as a maintainer I hate it :P
<lovesegfault>
It's very conflicting
Heirlung has quit [Quit: ZNC 1.6.5+deb1+deb9u2 - http://znc.in]
<eyJhb>
Well, most people want to contribute because the actively use NixOS, and want to make it better/see faults or packages that they need and want added
Heirlung has joined #nixos
tek has joined #nixos
Jackneill has joined #nixos
<simpson>
lovesegfault: Good.
ng0_ has quit [Quit: Alexa, when is the end of world?]
ng0 has joined #nixos
RIOTIM[m] has joined #nixos
<gyroninja>
I think the problem with postgresql not starting up was due to not having system.stateVersion defined
[Leary] has joined #nixos
<gyroninja>
It seems like every nixops example online seems to leave it out so I thought you didn't need it
Lears has quit [Read error: No route to host]
<infinisil>
gyroninja: nixops stores stateVersion in the deployment state, which then gets included for the build, so you shouldn't need it
<alexoundos[m]>
Hello. How can I check that the attribute is a list? This attempt fails with syntax check `if drv.url ? [0]`. Probably it's because list element is not an attribute.
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<infinisil>
alexoundos[m]: lib.isList drv.url
zupo has joined #nixos
Guest7377 has quit [Quit: WeeChat 2.4]
thc202 has joined #nixos
<alexoundos[m]>
<infinisil "alexoundos: lib.isList drv.url"> Thank you! How could I find this by myself? Google on "nix lib" doesn't point to anything useful.
gila has quit [Quit: My Mac Pro has gone to sleep. ZZZzzz…]
fenedor has joined #nixos
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
aszlig has quit [Quit: Kerneling down for reboot NOW.]
philr has joined #nixos
aszlig has joined #nixos
<kandinski>
If any NixOS/Spacemacs person can help, I'll appreciate it: JavaScript framework layers for Spacemacs suggest you on stall npm modules and command line tools globally: `npm install -g tern`. What is the correct way of doing this under NixOS? I have different nix-shells for different languages/projects, and run Spacemacs under my user's profile.
dermetfan has joined #nixos
FRidh has quit [Ping timeout: 246 seconds]
FRidh has joined #nixos
o1lo01ol1o has joined #nixos
o1lo01ol1o has quit [Remote host closed the connection]
o1lo01ol1o has joined #nixos
ubert has joined #nixos
kvda has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<dermetfan>
gyroninja: I'd give hail a try, works fine for me
FRidh has quit [Ping timeout: 240 seconds]
o1lo01ol1o has quit [Ping timeout: 245 seconds]
domogled has quit [Quit: domogled]
graf_blutwurst has quit [Remote host closed the connection]
<teto>
is generators.toINI not supposed to work with submodules ? If I pass a plain attrset, it works, if I pass the same with submodules, generators.toINI complains about "The option ... does not exist."
<eyJhb>
gchristensen arahael - it is the difference between MariaDB and MySQL apparantly.. So MySQL can do the query in 0.18s, MariaDB 12.86s
o1lo01ol1o has quit [Remote host closed the connection]
o1lo01ol1o has joined #nixos
<divansan`>
Hi All. A lot of nix apps are working for me. But chromium,vivaldi and google-chrome all have corrupt looking icons like so http://paste.debian.net/1103347/
<Taneb>
Is there an accepted way of secrets in configuration.nix?
<inkbottle>
I was trying the method, not necessarily good, of putting my .bashrc directly in my configuration.nix through environment.interactiveShellInit; This bashrc was containing shell functions, with variables; the build ended with error *undefined variable*.
veske has quit [Ping timeout: 265 seconds]
<inkbottle>
What is the mechanism "behind" those variables in configuration.nix?
<inkbottle>
Is it possible to have my functions in configuration.nix nevertheless?
<evanjs>
Any thoughts on where to check first with random sleeps? Getting "normal" messages like "System is rebooting" but I'm not sure what is triggering it...
<teto>
timokau[m]: good job on sage !
<hyperfekt>
is this the p01ar, from twitter?
<evanjs>
Wait... gdm autoSuspend is enabled on my desktops.... though I have things like Plex running on one of them, but I'm not sure what "autoSuspend" entails
<p01ar>
it sure fuckin is
<p01ar>
the one and only
<p01ar>
IIIITS THE BIG SHOOW
<p01ar>
teto wtf are yall doing sage for ew disgusting
<hyperfekt>
welcome! c:
<p01ar>
hyperfekt ty ^^
<p01ar>
thought id work more on the meson port today
<p01ar>
get it building/running tests
<p01ar>
but for some reson on my laptop i get cannot find libeditline.so.1 but i dont get that on my other pc
<p01ar>
:||||
<worldofpeace>
evanjs: I believe when gdm locks it has an non user configuratable autosuspend feature to comply with EU power regulations
NinjaTrappeur has joined #nixos
<timokau[m]>
Thanks teto, much appreciated :)
<hyperfekt>
meson port? as in packaging or as in meson2nix?
<worldofpeace>
so for example, users have ssh access enabled on their machine and they step away. can't login it's suspended
<{^_^}>
[nixpkgs] @vcunat pushed 28 commits to release-19.09: https://git.io/JenYb
<p01ar>
kyperfekt porting the nix package manager from autotools to meson
<evanjs>
worldofpeace: I was sort of happy to see it but got nervous when I noticed it wasn't configurable... Guess I can rest assured it's not, at least for now
jboy has joined #nixos
das_j has quit [Remote host closed the connection]
<worldofpeace>
evanjs: yeah, we've taken special measure to have a nice workaround in nixos
das_j has joined #nixos
dermetfan has joined #nixos
pie_ has quit [Ping timeout: 245 seconds]
fusion809 has quit [Remote host closed the connection]
Jenz has joined #nixos
<Jenz>
Hmm; I'm wondering whether or not I should move over to NixOS
<gchristensen>
what is on your mind?
<Jenz>
Frankly I dunno, there's just something about nixos pulls my attention, but I barely know anything about it, so it's a wholly immature problem
l33333 has quit [Ping timeout: 240 seconds]
<gchristensen>
fair enough! you could try it in a VM?
<Jenz>
Yeah that'd be smart
<inkbottle>
environment.interactiveShellInit = '' f (){ a=$1; echo ${a}; } '' => error: undefined variable 'a'; but OK with echo $\{a\}
<gchristensen>
inkbottle: ${...} is Nix interpolating a variable
<inkbottle>
OK, tx
<gchristensen>
,escape''
<{^_^}>
'' two single quotes: ''' bash curly bois: ''${} newline: ''\n tab: ''\t any character x: ''\x ''
<hyper_ch2>
gchristensen: I tried with two notebooks: lenovo and hp.... usb-c to usb tocking station and from there dp to the monitor
<hyper_ch2>
gchristensen: if I run windows, it all works just fine, when I switch to linux, I do get power supply, ethernet, usb devices and also hdmi from the docking station
<hyper_ch2>
but the DP just won't work
<gchristensen>
is the docking station secretly thunderbolt
l33333 has joined #nixos
<hyper_ch2>
gchristensen: from what I read the lenovo notebook does not have thunderbolt
<hyper_ch2>
so I assume the docking station isn't using thunderbolt either
<evanjs>
Uhhh any reason `nix-env -f <path-to-nixpkgs> -iA gitkraken` is trying to install rust as well? Just trying to test a gitkraken bump on my nixpkgs fork on master...
<hyper_ch2>
srhb: that's what I tried - and failed ;)
<srhb>
Then plug everything into the laptop directly.
<srhb>
Down the path of displaylink lies only sorrow.
spacekookie has quit [Quit: **agressive swooshing**]
<evanjs>
`nix-env -f . -iA gitkraken -b` prevents anything from being built...
<{^_^}>
[nixpkgs] @shahrukh330 opened pull request #70055 → pythonPacakges.qds_sdk: init at 1.12.0 → https://git.io/Jen3W
spacekookie has joined #nixos
selfsymmetric-mu has quit [Remote host closed the connection]
<gchristensen>
evanjs: what makes you think it is trying to install rust? it may just need to fetch rust for gitgraken
<Ariakenom>
also with the dock I tried the keyboard didnt work in bios. so meh
<evanjs>
Gitkraken has no dependencies on Rust :D
<gchristensen>
something gitkraken depends on might
<symphorien>
it may depend on gtk and librsvg so rust ?
<evanjs>
Ahhhhhhhhh
<evanjs>
I totally forgot about librsvg
<evanjs>
Yeah thanks
Khetzal has quit [Quit: \o/]
<gchristensen>
I assume you have to build librsvg? since librsvg probably shouldn't actually depend on rust after it is built
<gchristensen>
there is no option called `cfg`, so why are you trying to set a value on an option called `cfg`?
<boolman>
Hi, how can I pass arguments to the script called by nix-shell?
<hyperfekt>
Aaah, I see it now.
<gchristensen>
cool :)
<{^_^}>
[nixpkgs] @ttuegel merged pull request #70025 → More closure size improvements for NixOS 19.09 → https://git.io/JeZjc
<{^_^}>
[nixpkgs] @ttuegel pushed 5 commits to staging-19.09: https://git.io/Jensi
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/JensP
<boolman>
for example nix-shell -p python3Packages.requests --run /my/script.py <some input>
<hyperfekt>
It was defined earlier in the let and my mushbrain had somehow forgotten that you can only use that for getting config values, not for setting them.
Jenz has joined #nixos
<hyperfekt>
Thank you for bearing with me! c: gchristensen++
<srhb>
hyper_ch2: (And if you fix it, you will still be sad)
<hyper_ch2>
srhb: how so?
drakonis has joined #nixos
<srhb>
It's laggy and unstable even when fixed. :)
<HSteffenhagen>
hi, I'm sorry to be a bother but has anyone found a good way to work with a CMake/C++ combo with nix? On principle I'd expect it to work reasonably well, but a lot of packages seem to be broken (at least w.r.t. to cmake) in several ways, for example fmtlibs config is pointing at the wrong location for libraries, and SDL2 seems to be missing runtime
<HSteffenhagen>
I'm pretty new to nix but I'm pretty sure I'm looking at the one from nixpkgs-unstable. I'm actually not sure if it's still true for SDL2 (although that has a different problem of just not exporting its targets in the first place because it uses the ./configure build instead of cmake), but the last time I've check for that one was just 2 weeks ago
<logzet>
Is there a way to use FUSE inside a nixos-container?
drakonis has quit [Ping timeout: 252 seconds]
divansan` has quit [Ping timeout: 268 seconds]
drakonis has joined #nixos
<logzet>
I figured that I need to use something like allowedDevices = [ { modifier = "rw"; node = "/dev/fuse"; } ]; in the container configuration (it's declarative)
<ilyagotfryd>
What would I normally use to templetize a configuration for a module I am installing?
zacts has joined #nixos
<infinisil>
HSteffenhagen: Would probably be good to show the code that doesn't work along with the error. Usually cmake stuff should work pretty well
<{^_^}>
[nixpkgs] @jlesquembre opened pull request #70062 → kube3d: build as GoModule instead of GoPackage → https://git.io/JenZg
<HSteffenhagen>
There's not much code to show - basically, `find_package(fmt REQUIRED)` will fail because the default cmake exports look for exported libraries in directories relative to the config files, but fmts config files are in a `-dev` output and the libraries are in a non-dev output
<HSteffenhagen>
so it'll fail, complaining about missing files
<HSteffenhagen>
as for SDL2, the example I had isn't crashing anymore but because it's using the `./configure` script to configure instead of CMake it's not exporting the targets, i.e. the SDL2Config file will only have the `SDL2_LIBRARIES`, `SDL2_INCLUDE_DIR` etc variables but not the targets like `SDL2::SDL2` or `SDL2::SDL2main`
<HSteffenhagen>
but then again it'd probably be broken if it's doing the -dev/not -dev distinction. I don't believe cmakes export functions allow you to export to two separate locations
sauyon has joined #nixos
talqu has joined #nixos
talqu has quit [Remote host closed the connection]
<{^_^}>
[nixpkgs] @worldofpeace pushed to gnome-3.34 « libproxy: build with spidermonkey_60 »: https://git.io/JenZS
hyper_ch2 has quit [Remote host closed the connection]
<exarkun>
Can Nix help me build a manylinux wheel of a Python package for other Linux platforms and for macOS?
<exarkun>
(I'm sure Windows is too much to hope for.)
talqu has joined #nixos
talqu has quit [Remote host closed the connection]
apv has quit [Ping timeout: 260 seconds]
jmeredith has joined #nixos
<hyperfekt>
How can I check if a config value is set while defining another config value if they're in the same attribute set?
<{^_^}>
error: syntax error, unexpected '}', expecting ';', at (string):266:15
<emily>
hyperfekt: put `rec` in front of { too
bitmapper has joined #nixos
<gchristensen>
> { foo = "bar"; } ? foo
<emily>
so you can refer to other fields
<{^_^}>
true
<gchristensen>
> { foo = "bar"; } ? bar
<{^_^}>
false
azdle has quit [Remote host closed the connection]
<hyperfekt>
exarkun: Well, I get infinite recursion and I think it's because config.x.y = config.x ? z can't work because it relies on the value of config.x which is affected by this definition
<hyperfekt>
If I was defining the one value myself like in y'alls' examples, it wouldn't have the problem in the first place. But this is a config value.
<hyperfekt>
infinisil: This is my config: services.redshift = { enable = true; config.redshift = { dawn-time = "05:00-06:00"; dusk-time = "22:00-23:00"; }; };
<infinisil>
hyperfekt: "The option `location.latitude' is used but not defined."
orivej has quit [Ping timeout: 245 seconds]
<hyperfekt>
infinisil: Ah yes that's the other thing I gotta fix. You probably wanna comment out lines 102-105.
bitmapper has quit [Read error: No route to host]
<HSteffenhagen>
OK so at least the fmtlib one can be resolved by just using `overrideAttrs` to merge all the outputs. I'm guessing the same would be true for a lot of cmake projects that use the default export
<infinisil>
hyperfekt: Hm I'm afraid that's not possible like that
<infinisil>
hyperfekt: Reason is that Nix is strict in attribute names, meaning for it to know whether `config.x ? z`, it will try to evaluate all attribute names of `config.x`, but if whether `y` from `config.x.y` is included depends on `config.x` itself, that's the infinite recursion
ddellacosta has joined #nixos
civodul has quit [Quit: ERC (IRC client for Emacs 26.3)]
yumasi has joined #nixos
<infinisil>
hyperfekt: A decent solution to get around this is to add `nullOr` to the type, such that a value of null translates to no value being set in the config file
<infinisil>
hyperfekt: Then you can do `config.redshift.dawn-time = mkOptionDefault null` and use `config.redshift.dawn-time == null` instead of `config.redshift ? dawn-time`
nikola_i has quit [Ping timeout: 250 seconds]
<infinisil>
Using `nullOr` is always a good idea anyways because it allows users to unset values (even without #63553)
<gchristensen>
is it possible to get the date a store path was added to the Nix database?
<ilyagotfryd>
User management question. I am adding Redis to my qcow2 image and I need to configure "redis" group and user. Is there any good sample I could use for that or could you point me in the right direction to see examples?
<infinisil>
gchristensen: Something like this? sudo sqlite3 /nix/var/nix/db/db.sqlite -csv -noheader "select registrationTime from ValidPaths where path = '/nix/store/rr3y0c6zyk7kjjl8y19s4lsrhn4aiq1z-hello-2.10';"
<infinisil>
I wonder if the new nix command exposes this
<yumasi>
Hi! Is there anyone here using NixOS and nixops for kernel development ? I'd like to have a NixOS vm that uses a kernel I built myself from sources.
wfranzini has quit [Remote host closed the connection]
<ilyagotfryd>
infinisil: I am. I guess I need to look at what it stands up out of the gate. I am trying to port my Vagrant Redis configuration to that, so I am sure I am producing a number of overlaps.
<infinisil>
gchristensen: Neat, date -d @$(nix path-info --json /run/booted-system | jq '.[0].registrationTime') for conversion
<Taneb>
gchristensen: you can put a "todate" in the jq to get it in a more human-readable for
<Taneb>
m
<infinisil>
Ah!
<gchristensen>
nice!
<infinisil>
Although, the result differs between date and todate
dkibi has quit [Read error: Connection reset by peer]
dkibi has joined #nixos
gagbo has joined #nixos
doublex_ has quit [Ping timeout: 268 seconds]
<{^_^}>
[nixpkgs] @shyim opened pull request #70068 → phpPackages.pcov: init at 1.0.6 → https://git.io/JencP
AluisioASG has joined #nixos
sk8forether has joined #nixos
Ariakenom has quit [Quit: Leaving]
Ariakenom has joined #nixos
<edcragg>
hi, are there any rules of thumb on where to place configuration files - i.e. when to put in /etc/ vs. writing the file to the pakage's nix store?
Ariakenom has quit [Remote host closed the connection]
<simpson>
Use Nix for everything, right?
<simpson>
When would you *not* want to manage configuration with Nix?
<{^_^}>
[nixpkgs] @7c6f434c pushed to master « A band-aid workaround for 68384. The situation should not be possible, not clear whether there is a missed detail about … »: https://git.io/JencD
<Taneb>
simpson: it's not a great idea to put plain-text credentials in the nix store
iqubic has quit [Ping timeout: 240 seconds]
<HSteffenhagen>
another maybe silly question; How do I prepend something to `CMAKE_PREFIX_PATH` before `cmake` is run on my build? I did try to do something like `export CMAKE_PREFIX_PATH="myPath:${CMAKE_PREFIX_PATH}"` in a preConfigure script but that didn't seem to have any effect
Ariakenom has quit [Remote host closed the connection]
<ixxie>
this is probably a stupid idea but, would it be possible to create a nixos-based blockchain which would allow decentralized verification that a particular system runs a particular stack?
<Shell>
no.
<PyroLagus>
that sounds cursed
<ixxie>
cursed? xD
<PyroLagus>
also, what would the practical application be?
<mdash>
ixxie: it would not
<PyroLagus>
3
boxscape has joined #nixos
<Shell>
ixxie: you're looking for Intel's Trusted Execution Technology, jsyk. which is basically that a key embedded in the processor only known to Intel signs that a machine is running specific code.
xkapastel has quit [Quit: Connection closed for inactivity]
<Mic92>
ixxie: In my current research I am working with Intel SGX
<ixxie>
PyroLagus: usecase is in certifying certain software is run as-is instead of tampered; so for example, say you create software that monitors CO2 emissions on idustrial machinary, it wouldn't be gamed.
<Mic92>
It has some limitations one has to be aware of.
Church- is now known as legion
l33 has joined #nixos
<l33>
hi, what package do i need for gui network management in nix?
<Mic92>
l33: networking.networkmanager.enable in configuration.nix
<ixxie>
Shell, Mic92 - interesting this intel stuff
<Mic92>
and nm-applet in your user environment.
<Mic92>
ixxie: it only allows a single process atm. And the encrypted memory is limited to ~100 MB, more memory means "swapping" to non-encrypted, which is sort of slow.
<l33>
Failed assertions:
<l33>
(use '--show-trace' to show detailed location information)
<l33>
- You can not use networking.networkmanager with networking.wireless
<Notkea[m]>
should security updates be backported to the release-19.09 branch or are they already taken from master?
<Chiliparrot>
Hi there! I'm configuring a server (IMAP -> dovecot), and surprisingly, I couldn't find decent instructions how to deal with certificates :-(
ilyagotfryd has quit [Remote host closed the connection]
<Chiliparrot>
Any hints how to do that the right way?
l33_ has joined #nixos
ilyagotfryd has joined #nixos
l33 has quit [Remote host closed the connection]
<PyroLagus>
ixxie: ah
<l33_>
ok..
<PyroLagus>
in that case blockchain is really useless
<PyroLagus>
you need some kind of hardware module
<PyroLagus>
both intel and amd have their own versions afaik
<PyroLagus>
dunno about arm
<PyroLagus>
but the iphone also does some tamper protection afaik, and that uses arm
<samueldr>
Notkea[m]: yes they should; there is no automatisation to do so, so if you see something missing, please ping the relevant people
johnw has quit [Remote host closed the connection]
witchof0x20 has quit [Quit: WeeChat 2.4]
witchof0x20 has joined #nixos
<{^_^}>
[nix-pills] @tssm opened pull request #117 → Fix inherit URL in pill 7 → https://git.io/JenWW
sigmundv_ has joined #nixos
waleee-cl has quit [Quit: Connection closed for inactivity]
drakonis has joined #nixos
lovesegfault has joined #nixos
eraserhd has quit [Ping timeout: 240 seconds]
o1lo01ol1o has quit [Remote host closed the connection]
eraserhd has joined #nixos
<{^_^}>
[nixpkgs] @hedning pushed 198 commits to gnome-3.34: https://git.io/JenWX
dansho has quit [Ping timeout: 240 seconds]
o1lo01ol1o has joined #nixos
o1lo01ol1o has quit [Ping timeout: 265 seconds]
gxt has quit [Ping timeout: 260 seconds]
drakonis has quit [Ping timeout: 268 seconds]
ilyagotfryd has quit [Remote host closed the connection]
idf has quit [Ping timeout: 265 seconds]
<HSteffenhagen>
I've now also "solved" my SDL2 problem by just yoinking the .nix file from github and throwing away all the stuff I didn't need in there
ilyagotfryd has joined #nixos
<HSteffenhagen>
is that the "normal" way this is supposed to work?
o1lo01ol1o has quit [Remote host closed the connection]
o1lo01ol1o has joined #nixos
philr has quit [Ping timeout: 276 seconds]
o1lo01ol1o has quit [Remote host closed the connection]
dermetfan has joined #nixos
ris has joined #nixos
o1lo01ol1o has joined #nixos
<martyet-o>
Hi everyone! I didnt found any mention or NixCon this year at Brno. Tickets are almost sold, but if anyone from there will be interested, pm me. I will be happy to welcome any contributor at conference :-) See 2019.nixcon.org
<martyet-o>
and CfP is still open, so if you want share something in your talk, dont be late with signup :)
<drakonis>
ah, it looks so sleek
<drakonis>
nixcon's website that is
<martyet-o>
same layout as previous years :-)
<l33_>
yeah, thinking of comming along
<martyet-o>
there will be also stream, so if you really cant attend, you can join us online, but atmosphere is the best part on conferences, so dont think about it twice :)
ng0 has quit [Ping timeout: 260 seconds]
<l33_>
the only think i can contribute is that i'm a new user of 4 days
<drakonis>
thinking of the schedule here
<drakonis>
hmm, perhaps it is that i'm using global dark mode, everything looks great under dark mode
<infinisil>
Yeah I guess it's still a problem because to check whether an attribute name exists it needs to strictly evaluate all of them, not only the one you're asking for :/
<hyperfekt>
I'm really out of my depth here. I thought I understood the module system much better at this point, but I have no idea why this would still be occurring.
o1lo01ol1o has quit [Remote host closed the connection]
<infinisil>
> :p fix (cfg: { x = 10; y = if cfg ? x then 20 else null; })
<{^_^}>
{ x = 10; y = 20; }
<{^_^}>
[nixpkgs] @globin pushed commit from @r-ryantm to release-19.09 « roundcube: 1.3.9 -> 1.3.10 »: https://git.io/Jen8l
<infinisil>
hyperfekt: Now that you can set null to have values unset, you can do location-provider = if ... then lcfg.provider else null
<leo_>
Hey.
<hyperfekt>
infinisil: that's what i'm doing, mkIf vs normal if has the same result it turns out.
<hyperfekt>
mkIf is only responsible for pushdown
<infinisil>
In the current gist you're using mkIf though
<hyperfekt>
I still don't understand where the recursion is coming from, because we are depending on one value for the value of another, something which happens all the time in NixOS.
<leo_>
Do I have to reference store paths or use patchShebang etc if I want a `writeScriptBin` to be called by a systemd service?
<hyperfekt>
infinisil: True, I just changed it just to make sure that that's not where the problem lies.
<infinisil>
hyperfekt: In NixOS we usually do that with options, and option values always exist (though accessing the value might fail)
Havvy has quit [Read error: Connection reset by peer]
<leo_>
So every command in this script has to have a `${pkgs.something}/bin/something` prefix?
<infinisil>
So the list of attribute names is always the same and isn't dependent on anything
<{^_^}>
[nixpkgs] @matthewbauer pushed 2 commits to master: https://git.io/Jen8p
idf has joined #nixos
gxt has joined #nixos
o1lo01ol1o has joined #nixos
ilyagotfryd has quit [Ping timeout: 246 seconds]
o1lo01ol1o has quit [Remote host closed the connection]
Jackneill has quit [Remote host closed the connection]
Lears has joined #nixos
[Leary] has quit [Read error: No route to host]
<l33_>
hydra needs a better logo.
<HSteffenhagen>
and yet another stupid question: I'm trying to override my C++ compiler for a project (and recursively for its dependencies). I keep reading I'm supposed to be able to do that with an overlay, but if when I'm trying to do something like `withGCC9 = self: super: with super; { stdenv = overrideCC stdenv gcc9; };` I'm getting complaints I've
<infinisil>
hyperfekt: But this includes knowing whether `foo` is part of the attribute names too
<selfsymmetric-pa>
`pkgs.emacspeak` does not resolve, and neither does `pkgs.emacsPackagesNg.emacspeak`. Hrm.
<selfsymmetric-pa>
I've never seen this `emacs-mode` thing used directly. Not sure what that's about.
<infinisil>
hyperfekt: In order for it to know whether `foo` exists, it needs to look at the value of the definition of `foo` to see if `mkIf` or so was used, because if there was, `foo` might not be there
<selfsymmetric-pa>
And `emacspeak` is in `all-packages.nix`, so I'm not sure why `pkgs.emacspeak` doesn't resolve. Maybe it's special somehow? Or maybe it was removed?
<infinisil>
hyperfekt: So it needs to evaluate the *value* of `foo` to check for that, but in this case, the value needs to know whether `bar` exists
<infinisil>
And that's where the recursion is
<selfsymmetric-pa>
Oh hm. Maybe it was removed. I can't see any references on `master`. If that's the case I wonder what the rationale was...
<infinisil>
hyperfekt: The infinite recursion always happens as long as you evaluate the list of attribute names, which is needed with config.settings.bar too
<infinisil>
(which is like a shorthand for `if config.settings ? bar then config.settings.bar else throw "No such attribute"`)
<infinisil>
hyperfekt: And the module system doesn't know that we won't use mkIf's
<infinisil>
It still needs to check for that
o1lo01ol1o has quit [Remote host closed the connection]
fendor has joined #nixos
<infinisil>
hyperfekt: I have two solutions for that, both not really optimal though
<hyperfekt>
Oooh, now I get it. I was thinking in Nix' language semantics but the module system 'changes' them.
<infinisil>
Yeah
<hyperfekt>
Okay, so the NixOS module system can't calculate a config attribute's value without strictly looking at the attribute set's members' names.
<hyperfekt>
That's bad for RFC 42 :<
leo_ has quit [Ping timeout: 245 seconds]
<infinisil>
A bit yeah
<infinisil>
hyperfekt: The first workaround I'll suggest is to use mkOption's `apply` to modify the final option value
<infinisil>
That's actually one of the rare use cases where apply might be needed
leo_ has joined #nixos
<infinisil>
Well it's a hack, so it doesn't really qualify as a good usage of apply
<infinisil>
hyperfekt: But essentially in `apply` you can give a function that modifies the final result of all option definitions merged together, without it feeding back into the module system
mexisme has joined #nixos
<hyperfekt>
infinisil: I see. And that's where I would calculate any attribute that depends on another attribute.
<infinisil>
hyperfekt: In this case you could do `apply = value: { foo = value ? bar; } // value`
asymptotically has quit [Quit: Leaving]
<infinisil>
The disadvantage is that you can't have mkMerge and such in it though
<hyperfekt>
What's the second suggestion? This approach doesn't seem like something we want to expose generally.
<infinisil>
The second suggestion is even hackier imo
<infinisil>
I've seen this in #57123 originally, namely lazyAttrsOf, which doesn't really work with `mkIf`'s and such, but doesn't need to evaluate attribute values in turn
<hyperfekt>
Interesting. If I'm not wrong anyone can do what we're intending without apply or introducing a new type simply by taking the merged attribute set, and transforming it to a new one that actually gets used. It's like a manual apply but probably simpler to use for module writers. Still no mkIf etc but I can't think of a solution rn that allows that (or if one can even exist).
<hyperfekt>
Will you add this info to the manual (or the type documentation?) for RFC 42 so other people won't stumble upon the same issue?
<infinisil>
hyperfekt: Hm yeah that's possible but not optimal, because then only the module that does this modification can see the change
jboy has quit [Remote host closed the connection]
<infinisil>
hyperfekt: Yeah I'll make a note to add this info
jboy has joined #nixos
iqubic has joined #nixos
<hyperfekt>
infinisil: That's true, people will have to design the modules accordingly. But the alternative is telling every module user to put part of the what should be the module implementation into their config (by doing the depending calculation manually).
rsoeldner has joined #nixos
<infinisil>
hyperfekt: `apply` is specified in the module itself though?
<infinisil>
Oh you mean if users want to do such changes in their own config
<iqubic>
So I'm on Nixos and I'm having this issue where certain GUI programs, (mosty just Discord) are refusing to open URLs in at all. Like a month or so ago, I could click on a URL in Discord and it would be opened in Firefox. Now it seems that no URLs are being opened.
growpotkin has joined #nixos
<iqubic>
Anyone know how I, an i3 user, could fix this?
<hyperfekt>
infinisil: Ah you're right, I was too quick and thought it was part of the type. Nevermind that then.
<hyperfekt>
infinisil: Thanks for helping me get to the bottom of this and understand it! :D infinisil++
<{^_^}>
infinisil's karma got increased to 143
<infinisil>
:D
Confuseduck has joined #nixos
bgamari_ has quit [Ping timeout: 246 seconds]
<Confuseduck>
Not able to adjust brightness on my KDE plasma5 installation. Powerdevil, upower seem to be running. It used to work earlier, the slider in the battery panel, as well as the brightnes keys. The slider has stopped appearing in the applet completely. I'm pretty stumped.
bgamari has joined #nixos
<iqubic>
So I have no idea what to do here. I'm really really confused.
<hyperfekt>
infinisil: My thinking would be to output a warning if apply changes something so users can understand what is happening and why instead of magical effects outside the module system's rules of mkForce etc...
chrishill has joined #nixos
o1lo01ol1o has joined #nixos
<infinisil>
hyperfekt: You mean like a warning that gets output every time the user builds their system? Can't really do that because it's not silencable
<Ashy>
iqubic: tried swapping to sway? :p
<chrishill>
Hey, how's PHP development with Nix? It seems that there aren't a lot of PHP packages in nixpkgs. I basically have to figure out how to build this project:
<chrishill>
And I'm using NixOS right now. I'm wondering if I can set up this Laravel app on NixOS without too much work. So far I haven't been that successful. I am using PHP, composer, Node JS (for npm) and python. Those are the only Nix packages. I'm using a pure nix-shell inside the project's directory. I have to set up a database and stuff like that and I wonder if things will silently fail because I'm trying to do stateful
<chrishill>
things and the Nix filesystem won't let me do that... or something like that.
<iqubic>
Ashy: I don't think that's cause of my issue.
Havvy has quit [Ping timeout: 240 seconds]
knupfer has joined #nixos
HSteffenhagen has quit [Remote host closed the connection]
<iqubic>
xdg-open is doing the right thing from the command line.
<iqubic>
It's just the messaging app discord isn't using it at all.
<simpson>
Aha. You could go complain to them, then. I wouldn't hold my breath; Discord's a dumpster fire when it comes to community interaction. ISTR that their app uses Electron, so maybe there's a sneaky standard way to go below Discord's offering and tweak their client platform directly.
<simpson>
Also totally possible that one of your XDG environment variables is wrong. Getting that stuff right can be non-trivial.
Havvy has joined #nixos
<iqubic>
How do I chec what my XDG evironment variables?
<iqubic>
Also, yeah. Discord does use Electron.
fusion809 has joined #nixos
growpotkin has quit [Ping timeout: 240 seconds]
<simpson>
$(env | grep XDG) probably. I'm not sure what's actually wrong, though, so I don't know how to make it right.
<leo_>
How do I reference a script I created with writeScriptBin?
<ivan>
iqubic: strace the thing to see what it's trying to launch and intercept that with PATH
Jackneill has quit [Remote host closed the connection]
Ariakenom_ has quit [Quit: Leaving]
<michaelpj>
iqubic: your XDG_DATA_DIRS looks fine. I think there's a known issue where the GNOME library firefox uses doesn't actually follow the XDG spec, which is very annoying. If xdg-open does the right thing, then the problem is not with you, it's with the application
<infinisil>
iqubic: Did you try `xdg-settings set default-web-browser firefox.desktop`?
<simpson>
michaelpj: XDG interactions with Firefox are usually Just Working with my setup (which I'm not currently in front of), and we normally try to get this stuff working Out of The Box. So I suspect it's a local configuration issue rather than a problem in how we package the application.
<simpson>
Or, of course, a problem with non-free software~
<michaelpj>
simpson: I spent a while digging into this some time ago and I definitely found a case where firefox was ignoring one of the XDG files, I think it was maybe an `.defaults` file or something. I've forgotten the details now
<{^_^}>
#44866 (by michaelpj, 1 year ago, closed): plasma/xfce/enlightenment: improve detection of application mime types for apps that use GIO (firefox)
<alex``>
I try to load an unpacked extension and it crashes
<alex``>
always
<hyperfekt>
okay, last hurdle: how do i check whether an option is set?
iqubic` has quit [Ping timeout: 240 seconds]
<mdash>
hyperfekt: from where?
<hyperfekt>
mdash: from the config part of a module.
<{^_^}>
[nixpkgs] @kalbasit merged pull request #70062 → kube3d: build as GoModule instead of GoPackage → https://git.io/JenZg
<{^_^}>
[nixpkgs] @kalbasit pushed commit from @jlesquembre to master « kube3d: build as GoModule instead of GoPackage (#70062) »: https://git.io/Jen0a
<gchristensen>
whoa we rolled over 70,000!
ng0 has quit [Quit: Alexa, when is the end of world?]
<infinisil>
hyperfekt: Oh lol I'm blind sorry, for some reason I thought that PR was closed
<infinisil>
Didn't even scroll up from the comment
<infinisil>
Or down
<clever>
shyim: by default, the positive ttl is in the days
<hyperfekt>
It's gotten a lot leaner now that locale.nix is responsible for the manual location provider cause there's no common abstraction anymore. I've closed the relevant review comments, and left those open that are up to you.
<clever>
shyim: so if you didnt clear the cache, it wont recover for multiple days
<hyperfekt>
infinisil: I guess it can get very easy to lose sight of all the many PRs you're listed as maintainer for.
<clever>
shyim: 30 days, to be specific!
<infinisil>
hyperfekt: Hm I don't have time to review now, I'll leave it in my notifications for now
<hyperfekt>
infinisil: Absolutely, no hurry. It wouldn't make it into 19.09 anyhow.
<shyim>
ahh okay thanks :)
<infinisil>
hyperfekt: Some quick feedback here: I'd call the option `settings` instead of `config` (was chosen in the rfc), the list of possible types should probably include float and maybe bool too (can use types.oneOf for that), multi-line examples should use literalExample (see other modules for examples), extraOptions needs mkRemovedOptionModule
leo_ has quit [Ping timeout: 240 seconds]
<hyperfekt>
ah, good points. that's why i got you looking over this stuff
<infinisil>
:)
<gchristensen>
do we have any builds which take >24h to run?
* gchristensen
hopes not
<clever>
gchristensen: chromium is the closest i can think of
<gchristensen>
how long is that one?
<clever>
gchristensen: either 12 or 48 hours, cant remember exactly
<gchristensen>
because yesterday I setup most of the builders to be replaced every day
fendor has quit [Read error: Connection reset by peer]
kreisys has quit [Remote host closed the connection]
kreisys has joined #nixos
psyanticy has quit [Quit: Connection closed for inactivity]
pcarrier has quit [Quit: Connection closed for inactivity]
lovesegfault has quit [Ping timeout: 268 seconds]
<notgne2>
I don't mean to go all radical centrist in the SystemD debate, but I kinda like everything it's going for, I just don't like the "all or nothing" sort of ideology behind it, where you can't really pick and choose utility as easily, and very few components are externally re-usable
<notgne2>
in most contexts I'd love to have SystemD, but I don't like it for the times I wouldn't, which makes things very difficult
<red[m]1>
I loathe and detest systemd, nixos helped me ignore it
<notgne2>
people got mad recently about systemd-homed stuff, which actually sounds like a super good idea to me, I just wish it wasn't part of systemd
<red[m]1>
it's like kudzu, or the plague
<clever>
notgne2: they also ate udev whole
<clever>
notgne2: if you want udev in the initrd (ethernet if naming), you must put the entire systemd in the initrd, and the package is pretty hefty
<red[m]1>
binary logs are what turned me
<notgne2>
I just had to write a few hundred odd (would be less if I knew how Nix worked) lines to approximate SystemD services into a bash entrypoint for Docker lol
<simpson>
As relates to the channel, I often feel like systemd is a very weak part of NixOS; while it enables hotloading and live reloading of units, I know that other init systems can also do that and it's not always so prone to breakage.
<simpson>
But, at the same time, rewriting basically all of NixOS sounds daunting.
<notgne2>
and it's not even fully tested, so I bet I'll need to write more
<clever>
notgne2: ive been working on the reverse i think, i translate systemd service definitions (in nixos modules) into very simple scripts, that runit can then run
<red[m]1>
right
orivej has quit [Ping timeout: 240 seconds]
<clever>
notgne2: then i package it all up into a docker image, so i can just run any nixos service
<clever>
including multiple services at once
<red[m]1>
and anything we do for nixos we'd arguably have to support for other distros