<clever>
suzu: i did a search on github for beam-core-fix-ghc-8.6.x-build, within the nixpkgs repo
<suzu>
oh i guess a search for 'beam-core' in the repo will get this
<suzu>
ah
<suzu>
okay anbd uh why is it shitting itself
<clever>
suzu: it looks like beam-core upstream have applied the same patch to their source
<clever>
and that patch in nixpkgs is no longer required
<suzu>
hmm
<clever>
similar to how i overrode datadog in extra-statsd, you can do beam-core = pkgs.haskell.lib.overrideCabal super.beam-core (drv: { patches = []; });
<clever>
and then it will force it to have zero patches
<suzu>
ok, i'll do that
<clever>
but, beam-core then wont have any help from the binary cache
<clever>
though, if the build is failing, its not in the binary cache anyways
<suzu>
hmm
<suzu>
what if i change to the nixos 18.09 channel?
<suzu>
doesn't seem to have patches in that version of nixpkgs
<suzu>
though the nixpkgs i guess is older and it's not as new of a beam-core
<clever>
suzu: the datadog tests for example, want a datadog api key, and internet access, to perform a test
<suzu>
i see
<clever>
so the tests arent pure, and will fail under a nix sandbox
<clever>
other tests may be similarly poo
<clever>
r
<suzu>
i see
<suzu>
how is it possible for me to override a package that does not exist in the nixpkgs in this manner?
<clever>
can you pastebin your current nix file?
<suzu>
sure
<Lisanna>
Is there a high-level cluster filesystem module, or otherwise a template/example for quickly setting up a shared filesystem between multtiple machines running nixos?
<Lisanna>
Everything I've looked at so far looks really complicated to setup
<suzu>
ive added a nix-gitignore over that example you gave me, so as to not push in a lot of unnecessary files to nix
<clever>
suzu: ah, neat
<maximiliantagher>
I'm trying to pass "NIX_PREFETCH_GIT_LEAVE_DOT_GIT" to Hydra. I was able to accomplish this previously with a copied `postInstall` doing --set NIX_PREFETCH_GIT_LEAVE_DOT_GIT "1". Should I be able to accomplish the same thing using the `extraEnv` property on Hydra https://github.com/NixOS/hydra/blob/8b5948f4cf12424c04df67a6eb136c9846fb2cfd/hydra-module.nix#L155? i.e. extraEnv = { NIX_PREFETCH_GIT_LEAVE_DOT_GIT = "1
<maximiliantagher>
"; }; I tried that but it doesn't seem to work
<suzu>
but nix-gitignore is in 19.03 and not 18.09 so i have it added manually here in this manner
<clever>
suzu: and which package needs to have tests disabled?
<suzu>
bugsnag-haskell
<clever>
suzu: line 11 should be disabling it
<suzu>
that's right. it does
<suzu>
but i dont understand how
<suzu>
because it's not going to be a key in the packages attrset
<clever>
suzu: line 9-12 defines an overlay function, that modifies bugsnag-haskell
<suzu>
i guess that there is a function that is used to lookup a package, and if that fails, only then it falls back to hackage
<suzu>
and this overrides is wrapping that function and not a set?
<clever>
suzu: line 13, then calls haskellPackages.override, and passes it the overlay, and stores the new haskell packages in hspkgs
<suzu>
ok i see
<clever>
suzu: then line 15 uses hspkgs when calling cabal2nix, so it obeys that overlay
lord| has quit [Quit: WeeChat 2.4]
<suzu>
got it
yl has quit [Ping timeout: 240 seconds]
<suzu>
now i've got a new problem! where stripe-core doesn't build
<suzu>
Setup: Encountered missing dependencies:
<suzu>
aeson >=0.8 && <0.10 || >=0.11 && <1.3
<suzu>
perhaps i should move from 18.09 back to unstable
<suzu>
as i think this package was in unstable nixpkgs
<suzu>
oh hm maybe not. a search for stripe-core in the nixpkgs github doesnt hit anything
<maximiliantagher>
Total side note but how do you like bugsnag?
<suzu>
works fine and gets the job done maximiliantagher
<maximiliantagher>
Cool
jtojnar has quit [Quit: jtojnar]
<suzu>
some things i care about but are not fatal, so raise those as info. some things i care about and maybe need to investigate in logs, so those are warns
<suzu>
and some things will be critical failures and i want an email immediately
<maximiliantagher>
Some of my friends from an old company started it
<suzu>
oh cool
<suzu>
yeah it's boring software that does the job
<suzu>
:)
<suzu>
welp maybe its building
<suzu>
browsing through the haskell dev tree in nixpkgs in the meantime..
<slack1256>
How do you launch riot-web on nixos?
lord| has joined #nixos
<noonien>
,search i3
<suzu>
slack1256: try riot-1.0.1
<suzu>
(if that is your version)
<aanderse>
Izorkin: nice!
technoid- has quit [Remote host closed the connection]
<suzu>
if you're on nixos 18.09 then it is riot-0.17.6 i think
<WilliamHamilton[>
the problem is that the z3 library is missing, but I think that I am including it via the inherit
<WilliamHamilton[>
btw the corresponding default.nix file works great
<clever>
WilliamHamilton[: i'm not sure the .env attribute supports native libraries, you may need to adjust line 34 to do: (drv.env.overrideAttrs (drv: { buildInputs = drv.buildInputs ++ [ pkgs.z3 ]; }))
erictape1 has joined #nixos
<suzu>
clever: it builds and links!
<suzu>
but then it runs the tests, which i know are broken
<suzu>
and so it breaks
<WilliamHamilton[>
clever: still the same problem even with the new version
<suzu>
and wrapping that with a dontCheck didnt seem to work
<clever>
WilliamHamilton[: what about with just `cabal build`, ignore the new- commands?
<clever>
suzu: can you pastebin both the error and the nix file?
<suzu>
yep - one sec i think i may know the issue
<{^_^}>
[nixpkgs] @artemist opened pull request #56859 → opeanfs: Add support for Linux 5.0 to openafs_1_8 → https://git.io/fhxKn
erictapen has quit [Ping timeout: 255 seconds]
mfernandez has quit [Ping timeout: 252 seconds]
mfernandez has joined #nixos
<WilliamHamilton[>
clever: no but `cabal new-build` works, it's `cabal new-repl` that doesn't
<clever>
WilliamHamilton[: weird, what about `cabal repl` ?
<suzu>
got it to work clever
<suzu>
:D
<clever>
suzu: yay
nikivi has quit [Quit: ZNC is awesome]
<suzu>
now what i don't understand is why this works at all
<suzu>
this builds a set
<suzu>
{normal = ..., static = ...}
<suzu>
who cares? why does nix-build bother building anything?
<suzu>
that's not a derivation
nikivi has joined #nixos
<WilliamHamilton[>
clever: neither `cabal repl` works. Could this be because this package has a .hsc file?
<suzu>
now if i wanted to wrap this package i've made with some additional things to do in the install phase (like copy some conf files to the binroot or something) what would be the right idiom to use?
<{^_^}>
commercialhaskell/stack#467 (by mtolly, 3 years ago, closed): Dynamic libraries not linked in with `stack ghci`
<noonien>
how does one install an icon theme with no DE? i've got i3 running
<noonien>
or, is anyone running i3 on top of plasma?
<suzu>
supply this derivation as a buildInput to stdenv.mkDerivation?
<clever>
suzu: buildInputs would mostly be if you want to run it or link against it, at build time
<clever>
suzu: though if your baking its path into something, you can embed the result of $(which foo) at build time
<suzu>
i do want to run it. it'd be a derivation that sets up some configs and the nruns it
<suzu>
runtime configs
<clever>
then nativeBuildInputs may be best
<suzu>
ok
<suzu>
5/5
<suzu>
this is way less frustrating now that things build nicely
<WilliamHamilton[>
clever: well it is in NIX_LDFLAGS, but then to avoid this cc/ghci problem, can I just link it statically?
<clever>
WilliamHamilton[: it still needs the right LDFLAGS to find the static libs
jluttine has joined #nixos
<WilliamHamilton[>
clever: how could I force ghci to use the right LDFLAGS? Why doesn't it use it by default?
<clever>
WilliamHamilton[: not sure, definitely sounds like a bug, having a pkgconfig file in z3 might also help, not sure
jluttine has quit [Ping timeout: 255 seconds]
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages.nix: automatic Haskell package set update »: https://git.io/fhxKh
<Ashy>
so i want to play around with ffmpeg and libcaca but i can see ffmpeg-full seems to have the libcaca support commented out, how can i mess around with it in a nix-shell?
<Ashy>
this is something i don't really understand with nixos, if i want to customize something in nixpkgs but not rebuild my whole machine against my fork of nixpkgs, how do i do that?
ym555 has quit [Quit: leaving...]
<slack1256>
If you are on the correct commit at nixpkgs, you won't be rebuilding your whole machine on to a fork, just what changed.
<clever>
Ashy: to get that in a shell, nix-shell -p 'ffmpeg-full.overrideAttrs (drv: { configureFlags = drv.configureFlags ++ [ "--enable-libcaca" ]; })'
silver has quit [Read error: Connection reset by peer]
Acou_Bass has quit [Ping timeout: 250 seconds]
Acou_Bass has joined #nixos
softinio has quit [Quit: Connection closed for inactivity]
<{^_^}>
[nixpkgs] @danbst merged pull request #55918 → nixos/doc: Small updates about wireless configuration. → https://git.io/fh501
<{^_^}>
[nixpkgs] @danbst pushed commit from @matix2267 to master « nixos/doc: Small updates about wireless configuration. (#55918) »: https://git.io/fhx6w
maximiliantagher has quit [Remote host closed the connection]
emacsomancer has quit [Ping timeout: 250 seconds]
maximiliantagher has joined #nixos
<charukie1icz>
Are the NixOS AWS community AMI images recommended for use?
charukie1icz is now known as charukiewicz
maximiliantagher has quit [Ping timeout: 252 seconds]
<charukiewicz>
gchristensen: great, thanks! that helps. The AMI ids on the AWS community listing match the ones published there, so that's the info I was looking for. just a way to validate the authenticity of the ones I see in the AWS EC2 AMI list.
<clever>
CMCDragonkai: and thats the specific one used for AMI's
<clever>
nixos/maintainers/scripts/ec2/create-amis.sh is a bash script, that will nix-build amazon-image.nix, and upload the products to aws
<CMCDragonkai>
when i search that `ag 'make-disk-image.nix'`, I see things in nixos/maintainers/scriopts/ec2/amazon-image.nix` and also stuff in nixos/modules/virtualisation
<CMCDragonkai>
why are things spread between nixos/maintainer/scripts and nixos/modules/virtualisation?
<clever>
CMCDragonkai: mostly up to the person that wrote things
<clever>
due to xen breaking 9plan, i had to generate a full disk image (including a valid bootloader and MBR)
<{^_^}>
[nixpkgs] @MasseGuillaume opened pull request #56864 → kubernetes: set current-context and context name correctly → https://git.io/fhxi6
halfbit has joined #nixos
<CMCDragonkai>
clever: It's very strange to have all the NixOS virtualisation modules in nixos/modules/virtualisation that is then exported as NixOS configuration settings as `virtualisation.docker` or `virtualisation.libvirtd`. But there's also code in that same directory that is not exposed as configuration settings, but instead act as entrypoints for maintainer scripts that execute them for the purpose of building images. Even ISO
<CMCDragonkai>
building is also located somewhere else!
vk3wtf has joined #nixos
<clever>
CMCDragonkai: some of those are used like a replacement to configuration.nix, nix-build '<nixpkgs/nixos>' -I nixos-config=/foo/nixpkgs/nixos/modules/virtualisation/something.nix -A config.system.build.fooImage
<clever>
CMCDragonkai: its mostly a choice left to whoever wrote the code first and how its planned to be used
* clever
heads off to bed
<clever>
you could also PR things to move them around
<{^_^}>
[nixpkgs] @xeji pushed commit from @herrwiese to release-18.09 « gogs: 0.11.53 -> 0.11.86 (#56838) »: https://git.io/fhxDE
<Dandellion[m]>
I'm new to kubernetes, and the docs talk about something called "kubectl diff" but when installing kubectl on nix that command isn't available for whatever reason
simukis has joined #nixos
M-Gregoire has joined #nixos
<tilpner>
Compare the version numbers the docs are talking about, and the one you installed
<tA>
whats the shorthand for running a command in a nix-shell?
sigmundv has joined #nixos
<tilpner>
nix-shell -p hello --run hello
<tA>
thank you
<Dandellion[m]>
<freenode_til "Compare the version numbers the "> Ah yes it's two versions old thanks
JonReed has joined #nixos
<Myrl-saki>
tA: You might want to use `nix run nixpkgs.hello -c hello` tho
kjekac has quit [Quit: Lost terminal]
<Dandellion[m]>
How do i go about upgrading this though. I usually create an overlay, but this package is all split up and complicated
Olivier[m]1 has left #nixos ["Kicked by @appservice-irc:matrix.org : issued !quit command"]
sigmundv has quit [Remote host closed the connection]
<tA>
could someone look at the nix in here: git.lain.church/tA/rf and help me change my build process? at the moment it runs the haskell program after building, but id also like to call the fixup thing on the bash script and run it after the haskell programs been built, without it runnig
ilmu has joined #nixos
drakonis has quit [Quit: WeeChat 2.3]
<tA>
actually, i could add the fixup commands to the shell.nix, and then just run it in a shell
<tA>
that sounds better, nevermind
<tA>
thank you anyway :)
<ilmu>
hey is having a /mnt folder frowned upon in nixos? do you have some other place you like to mount filesystems?
<tA>
i usually have ~/usb and just mount to there for conveniance
<ilmu>
I'm on a laptop with two internal hard drives and I'm thinking where I want the storage disk to be permanently mounted
<ilmu>
that's why I'm curious about some new tradition or whatever
<immae>
if you want permanent mount, usually /mnt is not a good place for that (both in nixos and outside)
<ilmu>
yeah I figured
<immae>
But then, it’s up to you and your usage ;)
arjen-jonathan has joined #nixos
<immae>
(when I need to mount something quickly, I "always" use /mnt, because I know it’s there for that. But if your is permanently mounted then your usage is probably different :p )
<tA>
ive got two drives in this, ones mounted to / and another to /home and swap, with boot and encryption key partitions. its nice not really having to think about there being more than one drive
<tilpner>
hier(7) says that /mnt is for temporary mounts
<tilpner>
But then... you don't need to follow that
<ilmu>
so what would you guys recommend to someone unfamiliar with the 'right' way of doing things?
<tilpner>
I have my SSD as /, and the HDD as /data
<ilmu>
but yeah I realize it's totally arbitrary as it's my system
<ilmu>
yeah maybe that makes sense
<adamt>
There's no "right" way, but sometimes it might be really really annoying to mount things direcly under /, like /foo
<ilmu>
I can just make /data and put everything under that
<immae>
for instance
<Taneb>
It's frustrating when you want something very slightly less trivial than something in trivial-builders
garbas has quit [Ping timeout: 240 seconds]
<{^_^}>
[nixpkgs] @domenkozar merged pull request #55142 → thinkfan: add option for libatasmart support → https://git.io/fhSXi
<disasm>
tA: how would you have a non-nixos user on nixos? Or are you saying nix installed on another linux system? If the latter, nix won't even create /run/current-system/sw/bin. All wiring to set nix up happens in the users bash config.
<clefru>
Is somebody doing stuff with ethereum here, especially "truffle"? I am pulling my hair out over the need for this toolchain to download stuff "from the internet" on first runs
<tilpner>
Unless you can stop it from doing that, you probably want some kind of FHSUserEnv
<clefru>
tilpner: that wouldn't be writable either. truffle wants to drop stuff in node_modules, which isn't writable via node2nix
<Ankhers>
Is there something similar to nix-prefetch-url but for git that is installed by default?
<{^_^}>
[nixpkgs] @jokogr merged pull request #56832 → pugixml: Fix pkg-config file installation and use fetchFromGitHub [19.03] → https://git.io/fhxub
<{^_^}>
[nixpkgs] @jokogr pushed 3 commits to release-19.03: https://git.io/fhxH5
<tilpner>
Ankhers: I don't think so
<tilpner>
But since Nix makes installing things quite easy, you should really drop that requirement
<therealwaphire[m>
I should try upgrading to 4.20 and see
<tilpner>
(nix-prefetch-git)
<timor>
I recently opened a pull request (#56792), where the the relevant source code neither has a code owner on github, nor is there a maintainer listed in meta. Normally, I would cc the maintainer, but in this case, how do I find out who is responsible for reviewing the changes and committing them?
<etu>
timor: re version suffixes: Not needed in nix since nix depend on the derivation and not a version
<tilpner>
timor: Here I would ping ${"Mic" + "92"}
jasongrossman has quit [Ping timeout: 246 seconds]
<timor>
etu: It will not be picked up by something like nix-env -u though, if not called with --eq, or --leq, right? So semantically speaking, is a version with a bugfix "newer" than the one without it?
<Ankhers>
tilpner: I'm trying to make an erlang2nix tool. So I don't really know how to manage git dependencies without nix-prefetch-git, or some tool like it.
<tilpner>
Ankhers: Well, then just install nix-prefetch-git
<sphalerite>
timor: nix-env -u is generally awful :p
<sphalerite>
,imperative
<{^_^}>
nix-env has multiple drawbacks as an imperative package manager. nix-env -u will sometimes upgrade to the wrong thing; the outputs to install are very finicky to override; and packages that have been removed or are otherwise unavailable will remain in your profile without any warnings. Consider using a ,declarative setup instead.
Xal has quit [Ping timeout: 250 seconds]
Xal has joined #nixos
<gchristensen>
ij: I do, why do you ask?
<ij>
gchristensen: I'm curious. :)
<gchristensen>
last time I looked it was like 160tb
jasongrossman has joined #nixos
Makaveli7 has joined #nixos
<timor>
sphalerite: Given. Unfortunately, we have a lot of users here where it is infeasible to teach them about generating their declarative user environment vs. telling them to use nix-env as a "apt-get" alternative and run `nix-env -u` regularly. It would make sense in our case that bugfixes count as version increment. (e.g. Like Gentoo, who also version their own build scripts in that way.)
<therealwaphire[m>
a little help
<therealwaphire[m>
I installed the latest kernel with `nix-env -iA nixos-unstable.linux_4_20`
<tilpner>
No no no, that's not how you install a kernel
<sphalerite>
timor: there was a nice wrapper that provides a better imperative UI posted on the discourse recently I believe, that might be better
<therealwaphire[m>
how do I switch to it now? I'm lost on what to put in my `/etc/nixos/configuration.nix`
<tilpner>
You set boot.kernelPackages in your nixos-config
<clefru>
speaking of which... I want 5.0, but I have ZFS :/
maximiliantagher has quit [Ping timeout: 245 seconds]
<clefru>
oh nice, zfs-0.7.13 just got release with 5.0 compatibility
oida has quit [Remote host closed the connection]
<jasongrossman>
\o/
drakonis1 has quit [Ping timeout: 245 seconds]
oida has joined #nixos
drakonis1 has joined #nixos
<clefru>
I'll prepare a PR for zfs 0.7.12 -> 0.7.13
<gchristensen>
!! finally!
<clefru>
Mic92: Do you have any interest in maintaining github.com/Mic92/zfs? Because the zfs/default.nix points to your repo for a patch, which with new 0.7.13 fails to apply
<clefru>
Mic92: my default strategy would be to copy your patch to nixpkgs directly and fix it up.
<ben>
inside { } you only get to use "name = value;" pairs
<ben>
"import foo" is an expression, you need to do something with its value
<adamt>
therealwaphire[m: For the record, you might want to use a pastebin or something like https://gist.github.com/ instead of uploading screenshots of your code
<therealwaphire[m>
oh yeah, I'll do that instead
<Shouou>
I want to package runnable Python software and get it into Nixpkgs, but I'm stuck on it failing to nix-build because it can't reach pypi.org (no network access?). How do I get around this? Do I have to use pypi2nix or is there another solution?
cantstanya has quit [Remote host closed the connection]
<fendor>
is that nix-related or I am doing something wrong?
waleee has quit [Quit: WeeChat 2.4]
ottidmes has joined #nixos
Synthetica has joined #nixos
<Synthetica>
How do I use $out in subsituteAll?
infinee has joined #nixos
<__monty__>
fendor: Doesn't look very nix-y.
<__monty__>
Shouou: Problem with network access is it needs to be reproducible. That's why fetchFromGitHub requires a hash for example.
<__monty__>
Shouou: So unless there's a fetchFrom* you can use with PyPI you'll have to take a different approach.
kreisys has joined #nixos
Makaveli7 has quit [Quit: Leaving]
kai_w has joined #nixos
<Shouou>
__monty__, ah thanks! I see there's fetchPypi but then I assume pypi2nix probably automates that process so I don't have to write it all myself.
<fendor>
does someone has experience with running pintos in qemu in nixos? It seg faults for me
<sphalerite>
Synthetica: iirc, @out@
<fendor>
found it
<Synthetica>
sphalerite: That refers to the file I'm patching, not the output
<fendor>
nixOS packages are "too" new. output of `qemu --version` breaks consistency
<tilpner>
You can access older versions from older channels
<etu>
Synthetica: I think $out should just work there
<sphalerite>
Synthetica: huh..?
<sphalerite>
Synthetica: oh you mean substituteAll the nix function, not the shell function :|
<Synthetica>
Yeah
<etu>
oh
maximiliantagher has joined #nixos
infinee has quit [Quit: WeeChat 2.3]
<therealwaphire[m>
upgrading to 4.20 did it
<therealwaphire[m>
thanks guys
<therealwaphire[m>
seems there's no support for i965 in 4.19 yet
<kai_w>
Is it possible to use a directory other than `/build` as the temporary directory in the sandbox?
<sphalerit>
therealwaphire: that seems very odd, i965 is ancient
<clefru>
Time to test zfs 0.7.13 and linux 5.0 and switching from nixos-unstable to nixos-19.03. brb
<Synthetica>
clefru: That sounds like a "Hold my beer while I..."
<clefru>
Synthetica: I am aware of that. :D
<clefru>
luckily I have backups...
<tilpner>
When did you last test them? c.c
fendor has quit [Remote host closed the connection]
<joko>
clefru: hope you're testing this on a vm
maximiliantagher has quit [Ping timeout: 245 seconds]
zupo has joined #nixos
<clefru>
tilpner: never, of course. Who has time for that. Improvise all the way
<clever>
kai_w: why do you need to use a diff dir?
<clefru>
Oh that reminds me, my encryption keys for my backup are on my backup. not sure if that workss.
<tilpner>
...
<tilpner>
You don't have backups
fendor has joined #nixos
<joko>
Speaking of ZFS, I have started testing encryption and I was wondering if there is a way to share a password between a LUKS partition and a ZFS encrypted dataset
<kai_w>
clever: the 'isort' packages tests operate on files in $TMPDIR, but isort refuses by default to work on files whos paths contain `/build/`
<joko>
I mean during booting and mounting
<clever>
joko: would need some changes to stage-1.sh, one sec
<kai_w>
Since python packages are built in $WORKDIR/build/, so some tests fail
<clefru>
tilpner: I am aware of that, but thanks for your reminder :)
<clever>
kai_w: you could just change TMPDIR to /tmp/
<clever>
joko: that is the /init from inside the initrd
clefru has quit [Quit: Leaving]
<{^_^}>
[nixpkgs] @vcunat pushed to master « ipe: fix the src hash (modified upstream) »: https://git.io/fhx5t
<{^_^}>
[nixpkgs] @vcunat pushed to release-19.03 « ipe: fix the src hash (modified upstream) »: https://git.io/fhx5q
xkapastel has joined #nixos
<joko>
clever: many thanks, I think I could echo this on "zfs load-key -a" or sth like that
<clever>
joko: yep, just need to do it after luks, and ensure luks didnt clean it up
<joko>
And any idea how to maintain this? Disable the upstream module and maintain the file on my own?
<clever>
joko: the initrd is a fairly sensitive area, so you may break things when upstream changes stuff, so maybe just file a PR to nixpkgs
clefru has joined #nixos
<illegalprime>
hi! using the musl-gcc toolchain in a pkgsStatic.bash nix-shell on a simple hello-world.c file causes an error 'recompile with -fPIC', but the same binary in a pkgsStatic.hello nix-shell works OK.
<illegalprime>
what env vars could cause the same binary to behave that differently?
<tilpner>
Save both environment to files, then diff them. Look for anything that starts with NIX_
kreisys has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<joko>
clever: agreed
<clefru>
joko: spl/zfs-0.7.13 seems to work for me with linux-5.0
<joko>
clefru: kuhl! Is linux-5.0 considered to be an LTS version?
<etu>
joko: no, 4.19 is
<{^_^}>
[nixpkgs] @Synthetica9 opened pull request #56885 → vscode: patch vscode wrapper to use predetermined path → https://git.io/fhx5w
<clever>
suzu: heh, generic-builder, script-runner, and make-package-set where all open in tabs beside eachother, from the last time i demo'd how this works, lol
<suzu>
:D
<suzu>
i find the firefox history search to be supreme compared to chrome fyi
<clever>
i really need to get better at closing my tabs
<joko>
tokudan[m]: ok, thanks
<clever>
currently have 840 tabs open
<gchristensen>
good grief clever
<suzu>
which browser?
<clever>
chromium
mekeor has joined #nixos
<gchristensen>
I finish each day by closing as many tabs as I can :P
<suzu>
do you have vertical-style tabs?
<clever>
suzu: regular tabs
<suzu>
i recommend that you switch to firefox and use tree-style-tabs
<suzu>
not only can i open hundreds of tabs, i can read the titles on all of them and close entire trees of them
<suzu>
e.g. go on a wikipedia binge, open layers of child tabs, and click one x to nuke the whole thing
<clever>
suzu: vimium, shift+t to search all open tabs by title
<suzu>
however you'll never be able to go back to chrome afterwards
<{^_^}>
[nixpkgs] @dotlambda pushed 3 commits to staging-19.03: https://git.io/fhxdf
<adamt>
I used to have a nifty addon to count my tabs. Sadly, it didn't survive firefox v57(?). 600+ was pretty normal. :P
<suzu>
firefox's address bar already searches as you type
<{^_^}>
[nixpkgs] @kalbasit pushed commit from @stephengroat to master « terraform-providers.segment: init at 0.2.0 (#56865) »: https://git.io/fhxdk
<tokudan[m]>
i loved the firefox feature that allowed you to group your tabs... ctrl+shift+e popped up the groups and you could switch to another group. then they deprecated that feature because it was too well hidden and only reachable through that key combo...
<clever>
tokudan[m]: i had so many tabs open, that that UI was laggy
<suzu>
yeah i liked that feature too
<suzu>
there's a few extensions that bring similar functionality back
<tokudan[m]>
clever: it was still nice to sort different projects
<illegalprime>
so the difference between pkgsStatic.bash & pkgsStatic.hello was NIX_HARDENING_ENABLE, which had -pie set in bash. I had no idea gcc's built in nix followed NIX_ env vars, but I guess that makes sense
<{^_^}>
[nixpkgs] @kalbasit pushed commit from @wkral to master « vagrant: re-add nowarn patch (#56863) »: https://git.io/fhxdY
<clever>
illegalprime: thats cc-wrapper, a bash script that enforces various things
<joko>
tokudan[m]: you can do something similar with container tabs and the multi-account containers addon, I think
<tokudan[m]>
joko: probably
<suzu>
clever: the cabal-install in this pinned nixpkgs is a bit older than i'd like
<suzu>
do you think it would be safe to use a newer version of only cabal-install, and how would i do so?
<suzu>
fetch another 'pkgs' from github that's newer, and access the .cabal-install from it?
<clever>
suzu: using a newer cabal can sometimes cause weird problems, where it may work in nix-shell and fail in nix-build
<suzu>
i would only be using the newer cabal in nix-shell
<clever>
suzu: but if you use a new cabal field in the cabal file, it will keep working in nix-shell, but then later fail in nix-build with the old cabal
<suzu>
ah yes that is a danger
<suzu>
so i can either move the whole project forward to a newer nixpkgs, install a new cabal bin for the shell at my own risk, or workaround having a slightly older cabal
<suzu>
are those my only options?
<clever>
suzu: yep
<suzu>
kk
<clever>
suzu: thats also why i use cabal-install from the same nixpkgs, rather then just nix-env -i it, like others do
<suzu>
makes sense
<suzu>
keep all the vers of things in lockstep together
<clever>
that is also what breaks QT
<clever>
QT propagated the libs into ~/.nix-profile if you nix-env things
<clever>
and if things get out of sync, all qt apps break hard
<clever>
Uma_: add boot.debug1devices to the kernel cmdline, and it will give you a shell in the initrd
<clever>
then you can manually run fsck
<CrazedProgrammer>
hi all, is there a function in nixpkgs that allows me to create a package with a single file? I want to create a package with only $out/share/xsessions/sway-session.desktop and i was wondering if there was a simple function for that
<Uma_>
Oooh nice, thanks
<ToxicFrog>
Uma_: it runs it with "fsck -a" which should automatically repair problems; is the problem that / is already mounted when it tries to fsck or something?
<Uma_>
No, it's not already mounted, but for some reason it doesn't repair it automatically
<kreisys>
domenkozar: there's an issue with the travis nix support on darwin because recent versions of nix changed the default installer behaviour so that it doesn't install in multi-user mode and the travis support expects that. I tried to report it as described in the travis docs but the github issue template says not to use it and use the discourse forum instead. I'm not sure that any of the travis nix support maintainers are
<kreisys>
following that forum though...
<Uma_>
I'll try rebooting and setting boot.debug1devices
<Uma_>
brb
Uma_ has quit [Remote host closed the connection]
<suzu>
clever: why are these boot packages removed?
alex``` has quit [Quit: WeeChat 2.4]
<clever>
suzu: the ghc package has all of those boot packages baked into the same derivation
<adamt>
kreisys: And since Travis was recently bought by Idera (?), and a bunch of people laid off, it's probably not going to get fixed.
<clever>
suzu: so the versions cant be changed, and adding the same package via the inputs will only give dups
<clever>
suzu: so that overlay causes haskellPackages.base to be null, and effectively do nothing
Uma_ has joined #nixos
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<Uma_>
clever: that worked, thanks!
<kreisys>
adamt: ugh that would... suck :(
<Uma_>
One last question: after I login with slim, i3 doesn't load until a dhcpd job finishes, is possible to break this (I guess, systemd) dependency?
<adamt>
kreisys: As I understood it, Idera is basically experts in buying stuff companies rely on and can't migrate away from easily, and just keep it on life support. So yeah.
<clever>
Uma_: `systemd-analyze plot` and read the related units in /etc/systemd/system/
CrazedProgrammer has quit [Remote host closed the connection]
<kreisys>
adamt: they just sent an email out yesterday.... basically 10 paragraphs of saying nothing.
<adamt>
kreisys: Yeah, I just ignored it, figured it wasn't worth reading.
<suzu>
ah i see
<suzu>
so base packages can't be included twice
<suzu>
except that stack2nix doesn't know about that so you got two bases
<kreisys>
adamt: do you know of any other CI service that offers free darwin builds for open source? I think travis is the only one...
<suzu>
icic
<suzu>
kreisys: circleci does
<suzu>
but you need to contact them
<suzu>
We also offer the Seed plan free (at 1x concurrency) for OS X open source projects. Contact us at billing@circleci.com for access. If you are building a bigger open-source project and need more resources, let us know how we can help you!
<clever>
ij: i think it was gchristensen that gave it to me
<pie_work>
Church- ive not done the preliminary work yet but would you be interested in trying to collab on packaging / making a module for cuckoo sandbox
adamt has quit [Ping timeout: 268 seconds]
woffs has quit [Quit: Gateway shutdown]
<ij>
gchristensen: I wouldn't mind flaunting one :)
Shouou has joined #nixos
woffs has joined #nixos
* gchristensen
rustles up someone
work_ has joined #nixos
<Church->
Cuckoo?
<Church->
And yeah sure when I can grab cycles on my weekends.
<Church->
Busy at work at the moment, settling into a new gig
<Church->
ij: What are we flaunting?
<ij>
Church-: a NixOS/user/… cloak!
ottidmes has quit [Quit: WeeChat 2.2]
<Shouou>
Is buildPythonPackage supposed to try the Makefile? The project I'm dealing with has an ad-hoc Makefile unrelated to the actual build. How can I avoid it?
<simpson>
Shouou: I don't see anything that would cause that Makefile to be incanted or touched. If it's distracting some build tool, feel free to rm it in patchPhase.
<{^_^}>
[nixpkgs] @amazari opened pull request #56889 → Fix locally created database → https://git.io/fhxbn
<Shouou>
simpson, thanks. So in prePatch or postPatch I'd just `rm Makefile`?
<ij>
gchristensen: so can I get a NixOS/user/siers cloak, which is also my github username? (siers is also present, which is my bouncer nick from the same nickserv account) I promise not cause disgrace to the name.
fendor has joined #nixos
<simpson>
Shouou: Yeah.
<gchristensen>
ij: that would work
noonien has joined #nixos
maximiliantagher has joined #nixos
ij has quit [Quit: WeeChat 2.2]
maximiliantagher has quit [Remote host closed the connection]
maximiliantagher has joined #nixos
<Synthetica>
Could someone look at #56885? I don't think the failure is my fault here correct?
<clever>
noonien: i tab-complete linux in `nix repl '<nixpkgs>'`
<noonien>
i get a lot of package is marked as broken errors
<noonien>
clever: oh, nice! thanks!
orivej has quit [Ping timeout: 250 seconds]
<goibhniu>
betawaffle: I heard of issues with their customer support years and years ago. That's the only thing bad I've heard about them. Hopefully, they're better these days.
<noonien>
is linux 5 not available in unstable yet?
<clever>
suzu: runtime deps are detected automatically, based on the subset of build-time paths, that wind up as strings in your output
<Myrl-saki>
What systemd target should I use?
nikivi has joined #nixos
Czen has joined #nixos
<suzu>
oh i see
<clever>
suzu: so at build-time, you have to either embed $(which pandoc) into your code somewhere (template-haskell, ew!), or generate a bash script that puts the path into a shell script wrapper
<suzu>
is there an example of how to do this properly?
<Myrl-saki>
Hm. I wonder if there's a writeShellScriptBin that doesn't put it under /bin.
<clever>
suzu: and what did you run nix-shell with? what is shell.nix?
<Myrl-saki>
Oh.
<suzu>
{}: (import ./default.nix {}).repl
<suzu>
that's my shell.nix
<Myrl-saki>
writeScript. Of course. :|
<andrewrk>
what's the best way for my application to find out at runtime that the dynamic linker path is /lib/ld-linux-x86-64.so.2 and not /lib64/ld-linux-x86-64.so.2 (the standard path)?
<{^_^}>
[nixpkgs] @stephengroat opened pull request #56897 → terraform-providers: version bumps → https://git.io/fhxxG
<andrewrk>
here's one way: cc -print-file-name=ld-linux-x86-64.so.2
<clever>
suzu: normal.env wont include the normal.buildINputs
<clever>
suzu: you must override the .env seperately, like you already did with cabal-install
<andrewrk>
however this depends on a c compiler being installed, and is a lot slower than, say, an environment variable
maximiliantagher has quit [Ping timeout: 245 seconds]
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
reinhardt has joined #nixos
maximiliantagher has joined #nixos
<andrewrk>
clever, thanks! this is a "nix solution" that would work in a packaging context, which is an understandable assumption in #nixos. I'm going to explore my reflection technique above first since it does not have a dependency on nix, bash, patchelf, etc
<clever>
andrewrk: that util is less for packing properly, and more for testing things you dont want to package immediately, but yea, it is nix-speciic
<Myrl-saki>
Hm. Anyone have an idea how to access the attrkey from attrsOf submodule?
<Myrl-saki>
s/attrkey/name/
<Myrl-saki>
Oh. name.
<Myrl-saki>
As an argument.
<Myrl-saki>
Of course.
shabius has quit [Quit: Leaving]
<Izorkin>
aanderse: https://pastebin.com/ess0Z6xG fix install limesurvey. need fix to upgrade to new package. Error with upgrade unlink(/nix/store/9fghm4a8a7brvrg75ns21rj1iijalml3-limesurvey-3.15.9+190214/share/limesurvey/third_party/kcfinder/cache/theme_default.js): Read-only file system
<Myrl-saki>
So apparently Nixpkgs agrees with my idea on how to do it. :P
<gchristensen>
tryEval works in some scenarios and not others
<gchristensen>
for example you can't use it to handle a hash mismatch
<ddellacosta>
can anyone point me at some ex
delan has quit [Ping timeout: 246 seconds]
<ddellacosta>
examples of how to override a flag for a dependency in a haskell package
reinhardt has quit [Quit: Leaving]
<srhb>
Myrl-saki: It's less useful than you might things, because the things you might think are exceptions aren't always.
<srhb>
ddellacosta: What flag specifically? In general, overrideCabal and whatever specific attribute you need.
<illegalprime>
is there anyway to get nix to run without a build users & groups? i'm running the statically compiled nix
erictapen has joined #nixos
Thra11 has joined #nixos
<ddellacosta>
srhb: I'm looking for a concrete example. Everyone keeps giving me links to the flags and whatnot but every time I actually try to implement it I have no idea e.g. how to refer to stuff properly in the arguments of callPackage
<srhb>
Myrl-saki: Note that a lot of things you might think are exceptions are actually errors, so it's less useful than you might think
<sphalerite>
Myrl-saki: I don't really see how it's useful, if you need to reencrypt after building you might as well do the initial encryption outside the build
<Myrl-saki>
Hm. True. And this won't work for my use-case.
<Myrl-saki>
I was developing this for LUKS-loop under an ISO, so I can't reencrypt it.
<Myrl-saki>
Welps, back to the drawing board.
linarcx has joined #nixos
<srhb>
ddellacosta: https://gist.github.com/cc8970b37dd9739ace96ec06a10d32d1 -- here's one way, using overlays to override the haskellPackages set (such that the hello package is altered for every package that uses it as a dependency. Which is probably none, but there you go.)
Soo_Slow has joined #nixos
linarcx has quit [Quit: WeeChat 2.4]
<ddellacosta>
srhb: thanks--so this is distinct from overriding by redefining inside of callPackage (project-level) or globally (.config/nixpkgs/config.nix)?
<srhb>
ddellacosta: You can generally mix and match all of those methods. I generally override callPackage if I want to alter some default for my project.
linarcx has joined #nixos
<srhb>
ddellacosta: (I guess the real answer is: How you're going to go about it depends what you're trying to achieve specifically) :)
<ddellacosta>
srhb: overlays don't seem to be described in the pills or nixpkgs haskell docs huh
<ddellacosta>
srhb: so sorry, where would this actually go again?
<srhb>
ddellacosta: overlays are described generically in the nixpkgs manual, but using it on haskellPackages is a bit roundabout (the two levels in my gist)
<ddellacosta>
okay
<srhb>
ddellacosta: The gist is a standalone, buildable nix expression
<ddellacosta>
okay, I appreciate it but unfortunately
<ddellacosta>
i think this just adds to my confusion
<srhb>
ddellacosta: There's a lot of flexibility here. That's part of the reason that I hinted at "what do you actually need to do" instead of "show me any override of a haskell package" :)
stepcut has joined #nixos
<tobiasBora>
Hello,
<hyper_ch>
gchristensen: clever: something wrong with trim?
<srhb>
ddellacosta: (If you have an example, we can work on that)
<tobiasBora>
What is the nix way to create an ldap database with predefined users (like admins for example)?
<{^_^}>
[nixpkgs] @kalbasit opened pull request #56902 → build-support/docker: fix the build of tarsum with Go 1.12 → https://git.io/fhxpl
<ddellacosta>
srhb: how would I override a dependency with the "dontCheck" flag?
<srhb>
ddellacosta: In that ase I'd do what I just did. Override haskellPackages to produce a new haskellPackages set that has dontCheck on that package
<srhb>
ddellacosta: Instead of my overrideCabal, it'd just say hello = dontCheck hsuper.hello;
<ddellacosta>
srhb: so I should _not_ be overriding using callPackage in general then?
<suzu>
error: The option `LANG' defined in ... does not exist
<suzu>
why is this happening with a nixops deploy?
<srhb>
ddellacosta: Hmm, I'm not sure what you mean. I generally don't override callPackage unless I want some value in it to change for _all_ haskell packages.
<suzu>
i can't find a 'LANG' in any of these nix files
<srhb>
ddellacosta: It's the opposite of pinpoint changes.
<srhb>
ddellacosta: So, overriding callPackage is something I do when i want to change the entire haskellPackages set in one fell swoop.
<ddellacosta>
srhb: okay. So it sounds like I got some bad information, or that there is no real consensus on how to do this kind of standard stuff in the haskell infrastructure?
<ddellacosta>
oh
<srhb>
ddellacosta: I'm not sure what this "standard stuff" is, really. There are different ways to do different kinds of overrides. I think most users tentatively agree on the method for each specific need, more or less :)
<ddellacosta>
ugh okay, I think I'm more confused than when I started. Ah well. I'm going to go re-read a bunch of stuff and see if anything makes more sense this time
<ddellacosta>
srhb: thanks for trying, haha
<srhb>
ddellacosta: 9.5.4.1 has an example of making a global change by overriding mkDerivation as well
<srhb>
ddellacosta: I'd probably not worry too much about reading at this point, it can be quite nebulous until you need to make an actual, specific change
<ddellacosta>
I guess I thought that if you modified callpackage for a specific project it would only modify that project's build, which is why I'm confused by you suggesting it'll change all of haskellPackages
<srhb>
ddellacosta: At which point it's pretty easy to get help here to execute that one thing, and gain some clarity :)
ng0 has joined #nixos
<ddellacosta>
but I may have been confused by the pills
<srhb>
callPackage is probably a bad example. If you can point me to where it was mentioned, maybe I can elucidate a bit.
ThatDocsLady_ has quit [Ping timeout: 255 seconds]
<ddellacosta>
srhb: okay, one sec
Synthetica has quit [Quit: Connection closed for inactivity]
<LnL>
FRidh[m]: around?
<ddellacosta>
srhb: so the reason I'm focusing on callPackage is because of this: https://nixos.org/nixos/nix-pills/override-design-pattern.html ...which was reinforced by this the other day: "15:53:36 <Some User> ddellacosta: I'm not 100% sure it's seen by dependencies, but I think you can just use callPackage's final argument, giving it { Diff = nixpkgs.haskell.lib.dontCheck stuff.${compiler}.Diff; } rather than {}." (in
<ddellacosta>
#haskell)
<ddellacosta>
srhb: and the haskell nixpkgs docs don't give any examples of this, or otherwise of how to do this
linarcx has left #nixos ["WeeChat 2.4"]
<ddellacosta>
so I assumed that for package-specific changes this was The Right Way (TM)
<ddellacosta>
then I spent the next few days trying to figure out what "stuff" should be :-p
<srhb>
ddellacosta: You can absolutely do that if you want to change the dependency for Just The One Package
<suzu>
ah figured it out
<suzu>
my nixops conf was completely bonkers
linarcx has joined #nixos
zupo_ has joined #nixos
drakonis has joined #nixos
<suzu>
i was trying to merge a nixops configuration with a package derivation, lol
fusion809 has quit [Quit: Leaving]
zupo has quit [Ping timeout: 250 seconds]
<suzu>
instead of placing it in environment.systemPackages
<srhb>
ddellacosta: So, that approach is the right one for altering one dependency for one package. But, let's say lens has a broken test case. Now, you probably don't want callPackage ./myPackage.nix { lens = dontCheck oldlens; }; -- you want it to apply for every haskell package that uses lens. Thus, we override the lens package in the haskellPackages set instead. That's basically the difference between those two
<srhb>
approaches.
<srhb>
ddellacosta: Each has merits under different circumstances.
<ddellacosta>
okay sure--that makes sense. I get the global vs. per-package thing. but how do you refer to "lens" inside of callPackage? Is there a working example of that somewhere? That's what I'm stuck on
<srhb>
ddellacosta: Usually, you'll have pkgs or something
<srhb>
ddellacosta: In which case, callPackage ./yourPackage.nix { lens = dontCheck pkgs.haskellPackages.lens; }
<srhb>
ddellacosta: Usually whatever scope you got callPackage from. :)
<srhb>
ddellacosta: In other words, haskellPackages.callPackage is a sibling to haskellPackages.lens
<siers>
gchristensen, woo, thanks!
<gchristensen>
siers: =)
<lejonet>
srhb: now I know why the dashboard plugin is so... overly complex...
<srhb>
lejonet: Oh no
<lejonet>
srhb: its written by Red Hat and OpenSUSE people, to replace a standalone web management gui for ceph
<srhb>
Right, the openATTIC thing?
<lejonet>
Mhm
<lejonet>
and if there is one thing that Red Hat is good at, is to make stuff overly complex and assume a looot of things :P
<srhb>
That might be true.
<srhb>
I don't suppose this leads up to an "anyway, I figured out how to fix it" ? :-P
<lejonet>
sadly no, I haven't even gotten to the part where I found the code responsible for "dynamically" loading modules O.o
<srhb>
I have a scary feeling it's, somehow, in c++ somewhere
<lejonet>
we'll soon find out, because that is exactly where I'm headed...
<lejonet>
it also explains why module.py is the "main function" in all modules
<srhb>
What :|
<srhb>
Okay, but how are we losing our PYTHONPATH.. Or, I guess that's not exactly what's happening...
<lejonet>
I think we are indeed losing our pythonpath somehow, because I don't think env vars are kept on whatever variable type that is at L76
simukis has quit [Quit: simukis]
<lejonet>
But I've never done a python<->cython integration, so I dunno what mod->load(pMainThreadState) entails
<srhb>
lejonet: That seems unlikely to work in a normal setup though, doesn't it?
<srhb>
lejonet: Is the regular python interpreter even used here or do we have to invent the moral equivalent of cython.withPackages? :|
simukis has joined #nixos
<lejonet>
srhb: I think it embeds a python interprenter
<lejonet>
srhb: if you look at line 42 to 48
<lejonet>
They even handle the python GIL themselves
jtojnar_ has joined #nixos
jtojnar has quit [Ping timeout: 240 seconds]
<Unode>
hi all. If I want to build a nix recipe that includes two components that need to be built. One lib and a final binary, each fetch and built from their own repository, The lib is a dependency of the binary. Should I use let libname = stdenv.mkDerivation rec {} for the lib and then stdenv.mkDerivation rec {..} for the binary including the lib in buildInputs or is there a better constructor for the lib?
<Unode>
I've seen examples of this in the past but can't find them right now
jtojnar_ is now known as jtojnar
<manveru>
is anyone still using beam-modules? seems like hex-packages.nix hasn't been updated in over a year :|
<manveru>
and fetching _all_ of the hex packages seems like a ... rather excessive method :)
simukis has quit [Ping timeout: 240 seconds]
<{^_^}>
[nixpkgs] @peti pushed 2 commits to haskell-updates: https://git.io/fhxhC
<lejonet>
which explains why the loading function finds the appropriate modules and all, but the code inside of the module is confused
<srhb>
I see!
<lejonet>
With a huge disclaimer that I have no idea how the Python<->C/C++ interface actually works
<lejonet>
but it honestly seems like env vars, like pythonpath, gets "washed away" in the cpython code
simukis has joined #nixos
ErAsMuS has quit [Ping timeout: 246 seconds]
zupo has joined #nixos
<infinisil>
Argh, how do you deal with binaries that need setgid for a nix project (without relying on nixos)
<{^_^}>
[nixpkgs] @stephengroat opened pull request #56906 → terraform-providers.ansible: init at 0.0.4 → https://git.io/fhxh0
<infinisil>
I'm currently trying to just copy the binaries to a tmpfs in a shellHook, and sudo chmod/chowning them
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « hackage-packages: re-generate with alias disabled during attribute discovery »: https://git.io/fhxhE
<lejonet>
srhb: because basically, ceph-mgr doesn't use a python interprenter persay to run the module, it makes python threads itself to run the modules in, so the code importing the module has the right pythonpath in the env for the thread, but those most likely aren't inherited in the spawned thread
<infinisil>
That fails, the binary still thinks it's not root
<srhb>
lejonet: OK, this is certainly interesting.
<clever>
infinisil: nix builds are never able to create setuid or setgid binaries
<lejonet>
so somewhere in the computation of the new sys.path, stuff gets lost in translation to the actual module code or something
<srhb>
lejonet: I'm going to say "sounds plausible" and handwave here... :P
<noonien>
can i access my nixos overlays in nix-env or nix-shell?
<lejonet>
srhb: I'm on thin ice as it is, it was ages since I code-dived C/C++ code, and I've never actually done any Cpython myself, so :P
<ddellacosta>
just want to say that I love how helpful the nix community is. srhb just spent a bunch of time walking me through how the haskell nix infrastructure works and it made all the difference. You folks are great.
<srhb>
#nixos++ :)
<lejonet>
ddellacosta: srhb is awesome amongst a whole slew of other awesome people here indeed :)
<ddellacosta>
lejonet: I am starting to see that!
<srhb>
lejonet: I wanna try and wrap python itself, I think..
<lejonet>
srhb: honestly, I think that is the only way to do this, without really digging into cpython
<srhb>
lejonet: I'm not sure it'll work though. Groan, giant rebuild coming up...
<lejonet>
srhb: because what I think happens is, the thread that puts together the whole computed sys.path, is not the thread that ends up running the module code after initializing the module
<srhb>
lejonet: But they should all still inherit from the ceph-mgr wrapper, I feel..
<srhb>
lejonet: Surely it's still the same _process_
<lejonet>
Well, yes and no :P
<lejonet>
it obviously forks a sub-interpreter for loading the module
<lejonet>
I'm gonna see if I can find some docs for Py_NewInterpreter
Soo_Slow has quit [Remote host closed the connection]
<moredhel_>
Hi, I'm trying to figure out how to reference a file in the nix repo when using home-manager.
<moredhel_>
I can do it with text using `home.files."test".text = "foo";`
<yl>
moredhel_: use .source instead of .text
<lejonet>
srhb: found this interesting text in the docs for Py_SetPath: " This is useful if Python is embedded by an application that has full knowledge of the location of all modules"
<srhb>
moredhel_: But if you're sure, you can do .source = "${pkgs.somePackage}/share/somePackage.desktop"; -- I'm pretty sure that should not be necessary normally though
delan has quit [Ping timeout: 240 seconds]
<moredhel_>
yeah, I feel like it's a bit of a hack and would prefer to do a symlink in
<srhb>
moredhel_: What makes you think you need this? As opposed to just the normal Desktop files in ~/.nix-profile :)
<moredhel_>
some applications don't have it, such as Slack
<srhb>
moredhel_: How about overriding the slack package to provide it inside it?
<moredhel_>
yeah, I think that would work better
<srhb>
moredhel_: Or, creating a dummy slack-desktopfile package that contains it
<lejonet>
srhb: erhm, the pythonpath we give ceph-mgr through the wrapper, only contains the ceph stuff, we've relied on the ceph-python-env wrapping the python interprenter
<srhb>
Both seem cleaner :)
<moredhel_>
yeah, that's what I was doing, extending the slack module
<ldlework>
how does a channel get updated to a nixpkgs commit that doesn't work?
<srhb>
ldlework: We don't test most packages
<srhb>
ldlework: Everything but the test set mentioned on howoldis is allowed to break
<lejonet>
So the initial load of the modules are made by the python interprenter that we wrapped as ceph-python-env, whereas the thread and interprenter that runs the actual module doesn't seem to be that python interprenter
<srhb>
ldlework: Or rather, we test them, but we ignore the failures.
<moredhel_>
hmm, okay. That seems to work. Is there a way to symlink directories in home-manager?
<lejonet>
and I honestly think the mgr backend fails silently, because it wants werkzeug for example, which we don't provide it
<ldlework>
srhb: Technically I should be able to override the qtile package to the nixpkgs commit of that PR?
<srhb>
lejonet: er um.
<srhb>
ldlework: Yes.
<ldlework>
moredhel_:yeah with an activation package
<moredhel_>
or even overriding `.local/share/applications`
<moredhel_>
are there docs on the activation package?
<srhb>
lejonet: It _might_ just be optional?
<lejonet>
srhb: for the backend?
<srhb>
lejonet: Yeah, probably not then.. :-P
<srhb>
I need a test cluster...
<lejonet>
werkzeug is the wsgi utility ;)
<srhb>
Ah :)
<lejonet>
so I highly doubt it'd work without it :P
<{^_^}>
[nixpkgs] @samhug opened pull request #56910 → pythonPackages.ppft: disable checks for python3 → https://git.io/fhxjZ
<srhb>
Yeah, mgr probably needs its own env soonish..
<lejonet>
srhb: I'm setting up an actual testcluster (once I get my thumb out of my ass to do the final battle with u-boot) that you could get access to, maybe :P
<{^_^}>
[nixpkgs] @peti pushed 0 commits to haskell-updates: https://git.io/fhxjl
<lejonet>
srhb: it feels like ceph-mgr SHOULD be an python program, instead of doing all the harnessing in C++ and then the actual module code in python :P
<srhb>
lejonet: They must have had some reason that we don't see...
<lejonet>
srhb: NIH...
<srhb>
I hope a better one!
<lejonet>
So do I
<lejonet>
Because they are managing the python threads themselves, and manhandling the GIL and everything
<lejonet>
srhb: maybe, but I can't find a reason why you'd essentially write your own python interprenter because you don't like the GIL xD depend on pypy or any of the other alternative python interprenters that don't have a GIL instead...
<moredhel_>
thanks :)
maximiliantagher has quit [Remote host closed the connection]
<srhb>
lejonet: I think we'd have to dig through the archives to figure out the reasoning. For now, let's just agree we're not rewriting mgr :-P
<lejonet>
srhb: haha yeah, and I'm not so sure I actually want to know the reasoning, because any reasoning that results in this, is the reasoning of mad people xD
<ldlework>
oh missing comma maybe
<lejonet>
Brilliant, but mad people
<lejonet>
srhb: and Py_InitializeEx is only a thin wrapper around regular Py_Initialize, which you can tell to not init signal handlers because the interprenter is embedded
<srhb>
lejonet: So.. Are we on a wild goose chase here? We know we have cherrypy... Is it really that we're mucking up distutils or whatever with this approach?
<tobiasBora>
Hello,
<tobiasBora>
I just discovered LemonLDAP::NG and it looks an awesome project
<tobiasBora>
but I can't find any thing about that in nixos.
<tobiasBora>
Is it because nobody took the time to include it, or for deeper reason? And if nobody has time to include it, is it because better software exists for this?
<lejonet>
srhb: I'm just trying to understand the cpython functions at work here, but I honestly don't know how we can solve this gracefully :/
<{^_^}>
[cabal2nix] @jtojnar opened pull request #412 → Update mapping of webkitgtk to non-aliased version → https://git.io/fhxjo
<srhb>
ldlework: Looks like mostly a reimplementation of fetchFromGitHub :)
<lejonet>
srhb: to be honest, I think its the import of pkg_resources that fails, because that is the only import from cherrypy's __init__.py that calls to an external module
<srhb>
lejonet: I'm also a bit at a loss. And the new wrapper still fails in the same way..
<srhb>
lejonet: Yeah, that's from distutils iirc
<srhb>
Oh, no, it's setuptools
<lejonet>
srhb: but its imported without a prefix, just import pkg_resources
<srhb>
Isn't that normal?
<lejonet>
well, it implies that it is its own module
srid has joined #nixos
<lejonet>
ah its just distributed WITH setuptools, its not a part of it
<srhb>
lejonet: Oh, hm, in withPackages it comes with setuptools..
<lejonet>
srhb: basically, I think the import of pkg_resources fail for some odd reason, because pkg_resources doesn't ask the loaded module for the version, it looks up the egg file for the module in question
<lejonet>
because the loaded module clearly knows its __version__
<srhb>
lejonet: mgrbl...
<srhb>
lejonet: I think I'm too tired to be useful tonight :P
<lejonet>
srhb: haha, if you can just remind me how I enter a nix-shell "inside" of the build of ceph, I'll dig a bit more to verify my thesis :P
<srhb>
lejonet: nix-shell . -A ceph should suffice
<lejonet>
srhb: ... pkg_resources is importable for the ceph-python-env interprenter, and pkg_resources.require('cherrypy')[0].version reports the version correctly
orivej has joined #nixos
<srhb>
lejonet: wat :)
<lejonet>
srhb: so back to square one... we somehow loose the pythonpath between loading of the module and running of it
<srhb>
It can't be the pythonpath. We have cherrypy.
<srhb>
Otherwise we wouldn't get the weird version = undefined
<srhb>
That's a string from cherrypy itself...
<lejonet>
yeah, but cherrypy is loaded, so maybe what we actually lose access to is the egg file so that pkg_resource can't do its thing?
<srhb>
oh, um..
cswl has quit [Quit: Connection closed for inactivity]
<ldlework>
yay it worked
<ldlework>
if you have the disk space, just using a specific nixpkgs clone for any override package is simplest
<ldlework>
haha so bad but whatever
<srhb>
ldlework: If it's a real simple callPackage, then you can just callPackage the source file directly. But yeah, agreed.
<{^_^}>
[nixpkgs] @vcunat pushed 625 commits to release-19.03: https://git.io/fhxjh
xkapastel has joined #nixos
<srhb>
lejonet: Good luck, I'm out for today. Hopefully I can be around earlier to try some things tomorrow.
<ldlework>
gchristensen:i have global keys now to interact with all of wpgtk's functions
<lejonet>
srhb: Have fun, I have a sinking feeling that I'll need that luck lol
<ldlework>
so i can de/saturate brighten/darken, normalize and shuffle the palette for any given wallpaper
<ldlework>
like let's say a generated theme makes the current irc channel's background a color too similar to the foreground so you can't read what the text is anymore
<{^_^}>
[nixpkgs] @peti pushed to haskell-updates « haskell-packages: re-write references to webkit to webkitgtk »: https://git.io/fhpes
<lejonet>
srhb: as a fyi, there is no file named pkg_resources in the ceph-python-env env... there is some magic involved when I call the python interprenter from the shell that might not be done when its manhandled by the cpython code...
maximiliantagher has quit [Ping timeout: 252 seconds]
<{^_^}>
[nixpkgs] @timokau opened pull request #56911 → python.pkgs.pplpy: init at 0.8.4 → https://git.io/fhpeW
<lejonet>
screw this, I need to rest my brain, it hurts from all this lol
vk3wtf has quit [Ping timeout: 252 seconds]
maximiliantagher has quit [Ping timeout: 245 seconds]
<noonien>
i've got `propagatedBuildInputs = [ (python3.withPackages (ps: with ps; [ fontforge configparser ])) ];` in a derivation, should i not have access to fontforge in anotherderivation in which i have `buildInputs = [ thatDerivation ];`?
<clever>
noonien: you would have access to a variant of python, that has fontforge in the pythonpath
<clever>
noonien: but if you have 2 pythons propagating, they could conflict
<clever>
noonien: `which --all python`
<noonien>
that's the only thing i have in buildInputs though
<noonien>
i'll try which
noctux has quit [Remote host closed the connection]
noctux has joined #nixos
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<ottidmes>
my Haskell packages fail to build after updating to 19.03 (probably due to the upgrade to 8.6.3 by default), due to .ghc.environement files being present, instead of removing them manually each time, I added a filterSource
<ottidmes>
but I wonder if I can add this filter afterwards, so I dont have to alter a generated nix file (cabal2nix)
<ottidmes>
I am now testing overrideAttrs, I just hope it does not result in ./. first being copied over to the store, since the dist folders would add some wasted space
<suzu>
yeah you can add that filter afterwards
<suzu>
i use a nix-gitignore filter
maximiliantagher has joined #nixos
<suzu>
so dist and etc are all filtered out
<suzu>
ghc: can't find a package database at /home/user/.cabal/store/ghc-8.6.3/package.db
<ottidmes>
suzu: yeah I have used that too in other contexts, too bad its not yet in nixpkgs
<suzu>
why am i getting this when building with nix
<ottidmes>
suzu:right that error
<suzu>
oh it's befcause of this .ghc environment thing
<suzu>
just as you are?
<suzu>
i see
<clever>
another option, is to just dont bother with filtering, just modify generic-builder.nix to delete the file (with rm) before doing a build
<ottidmes>
suzu: that error is caused by copying too much of your haskell directory, including the .ghc.environment file
<suzu>
guess i'll just toss that into my gitignore
<suzu>
ez
<clever>
the file will still trigger a rebuild when it changes, but its much much simpler to rm inside the build, then to omit it entirely
<suzu>
ottidmes: you can use this to get a nix-gitignore
<ottidmes>
clever: but that requires changing nixpkgs, right?
<clever>
ottidmes: yeah, but once changed, it would fix it for everybody
<arianvp>
Mine arrives tomorrow. Wondering if there are any issues
<clever>
suzu: you can also use your nix-gitignore in the above
<clever>
basically, this overlay will replace the mkDerivation used by every haskell package
<clever>
and then filterSource the .src of everything that has a src=
<clever>
(the stuff coming from nixpkgs lacks a src=, and will be un-changed)
<ldlework>
there's a pip installable aws cli called saws
<ldlework>
job for pip2nix i guess
<ottidmes>
clever: I already have some boilerplate code that I just copy paste per Haskell project, so a bit extra is not so bad, but its a good suggestion if I was OK with doing it in global manner (I prefer the boilerplate, so that others can still check it out (hah!) without requiring those global changes)
<suzu>
clever: that would cause all my haskell packages to cache miss and i'd have to build the ocean, no?
<tbenst[m]>
I'm using virtualbox with rawdisk access on nixos, and currently need to run "chown $USER /dev/sdb" on each reboot. Anyone know a way to do this in configuration.nix?
<suzu>
clever: i'd like to replace a haskell-dep with a vendor'ed local copy that i've modified
<suzu>
it seems that simply adding that directory to my cabal.project and building will build it, but will not be used as a dependency?
<suzu>
i assume that's because cabal doesn't resolve dependencies, nix is
<clever>
suzu: you should be able to just do aeson = self.callCabal2nix "aeson" /path/to/custom/aeson {}; for example
<__monty__>
Do you mean your project.cabal?
<suzu>
how do i override the dep to point to my local copy? will simply overriding it with a callCabal2nix work?
<symphorien>
tbenst[m]: maybe systemd-tmpfiles can do that ?
<elvishjerricco>
immae: Yea. For one, it's supposed to echo * for each character you type, which it's not. Second, when I press enter, the oneshot service asking for the password does not continue
<immae>
ok
<immae>
How is it started? Is it during normal boot, or early boot in initrd?
<elvishjerricco>
Weird thing, *some of the time* it will echo stars for like a second, then stop
<elvishjerricco>
Normal boot
<elvishjerricco>
Though I'm testing this with the Qemu VM you can build automatically with NixOS
<immae>
as a service that is dependent on cryptsetup? (or whatever server needs a password)
<immae>
s/server/service/
<noonien>
is it ok for packages to require arguments?
<elvishjerricco>
immae: Right now it's literally just running the systemd-ask-password program. And I set it to Before= all the getty things
<{^_^}>
[nixpkgs] @markuskowa pushed commit from @knedlsepp to release-19.03 « mapnik: Fix build »: https://git.io/fhpfC
<immae>
hmm
<immae>
That doesn’t sound like the intended use case
<immae>
Could you try creating a service which starts systemd-ask-password ith --no-tty instead?
<elvishjerricco>
immae: How so? The point of the agent's --console argument is to operate in this case
shibboleth has quit [Remote host closed the connection]
<noonien>
or should i use overrides to provide options for packages?
<immae>
I don’t see --console argument
linarcx has quit [Quit: WeeChat 2.4]
<yl>
is anyone working on refactoring our buildGoPackage to work with vgo (as in GO111MODULES=on)?
<immae>
noonien: it depends, if it’s for you it’s up to you, if you plan to publish it it’s usually considered better to provide default arguments
<{^_^}>
[nixpkgs] @worldofpeace pushed 2 commits to master: https://git.io/fhpf4
<elvishjerricco>
immae: It's an argument to the agent, not the client. man systemd-tty-ask-password-agent
<immae>
ok
<elvishjerricco>
Adding --no-tty to the client command line changes nothing. Which I'd expect, since the service shouldn't have a tty
<noonien>
immae: i do plan on publishing it, however i don't know how to do it idiomatically, i haven't see packages that are exposed as functions yet
calbrecht has quit [Ping timeout: 252 seconds]
<noonien>
so, in order to create the derivation you have to call the function with a set
<elvishjerricco>
noonien: Usually packages provide defaults, then tell the users to use .override to change arguments to it, rather than asking for arguments as a function
<noonien>
i see, that's what i was hoping for
erasmas has quit [Quit: leaving]
<noonien>
cool, thanks! i'll look into overrides
<immae>
elvishjerricco: If you don’t have a usecase (like a disk to decrypt, systemd-tty-ask-password-agent should be a noop if I understand the manual correctly
erictapen has joined #nixos
<immae>
as far as I understand, systemd-tty-ask-password-agent looks for "passwords that he needs" and asks for them, if you don’t have any, it shouldn’t do anything, no?
<elvishjerricco>
immae: Hm? `systemctl cat systemd-ask-password-console.service` says `ExecStart=/nix/store/...-systemd-239/bin/systemd-tty-ask-password-agent --watch --console`, so the agent runs in the background during boot so that boot services can ask for passwords on the boot console.
zupo has joined #nixos
<immae>
ah, --watch
<noonien>
is it possible for a user to use the same package multiple times, with different derivations?
<immae>
but still, it should ask only when he needs something
<immae>
(unless I misunderstand)
<elvishjerricco>
immae: Right, so when *my* service runs `systemd-ask-password`, it tells the agent that it needs a password, and the agent prompts on the console. The prompt is displaying properly. My problem is just that I can't type into it
<{^_^}>
[nixpkgs] @grahamc opened pull request #56918 → references-by-popularity: get a handle on memory usage → https://git.io/fhpf2
<immae>
ok, so you have something who asks for it, good
ErAsMuS has joined #nixos
<elvishjerricco>
yea. this isn't an issue with how systemd-ask-password is supposed to be used as far as I can tell. It's just some problem with the console not working properly
<immae>
yes, I was trying to understand how it was ordered to see if something was "missing", but it seems all right to me now
<noonien>
what's the reason behind nixpkgs-channels being a separate repository?
lsyoyom has quit [Ping timeout: 244 seconds]
<yl>
noonien: hydra promote nixpkgs to nixpkgs-channels when all the tests pass
<infinisil>
noonien: I guess it could be one repo, but the branch names would get a bit confusing
<infinisil>
noonien: They're not really branches though, nobody should ever push to them
<gchristensen>
there is a valuable principle of least privilege going on there
<noonien>
in git terms they are, this sounds like a permission problem
<noonien>
does github not have per-branch permissions?
<infinisil>
I mean, it could work to have this combined into nixpkgs itself, but it just makes more sense separately imo
<elvishjerricco>
immae: I think so. I think when you open the socket, systemd starts it. So it started in the same second as my service started, but then it just stops a second later for seemingly no reason
<gchristensen>
well hydra probably shouldn't be able to push to nixpkgs, only hydra should be able to push to nixpkgs-channels
<elvishjerricco>
infinisil, noonien: Frankly, I'm not sure the channels repo even needs to exist.
<immae>
Yes, that sounds strange elvishjerricco
<infinisil>
elvishjerricco: Now that we have gchristensen's lovely https://channels.nix.gsc.io/ you may be right :D
<elvishjerricco>
like, we don't necessarily need branches for the commits that a channel has advanced to.
<immae>
Can you confirm it is the agent that gets killed, not systemd-ask-password?
<elvishjerricco>
and yea, that link is far more useful since you get a history of the commits it has *advanced to* not just the commits it contains.
<immae>
so he starts a systemd-ask-password, then terminates for an unknown reason?
<elvishjerricco>
immae: Yea, I'm basing this off the journalctl and systemctl info on both services.
<elvishjerricco>
immae: It just says "Stopping <name of the agent service>" in the agent service's log
<immae>
Ok
Shouou has quit [Ping timeout: 250 seconds]
<elvishjerricco>
immae: Thanks for taking the time to investigate with me btw :)
<gchristensen>
infinisil: not very helpful for builtins.fetchGit though
<elvishjerricco>
gchristensen: builtins.fetchUrl the file, read the last line, pass it to fetchGit? :P
<infinisil>
^^
<immae>
One hypothesis is that your system thinks he finished to boot, and then closes him because he doesn’t need a password anymore, and then your service (is it a user service?) asks for it but too late?
<gchristensen>
evil!
vikingman has quit [Remote host closed the connection]
<immae>
(you’re welcome)
<noonien>
i'm not saying nixpkgs-channels isn't useful, it just seems reduntant if github has per-branch permissions (which i don't really know if it does)
vikingman has joined #nixos
<elvishjerricco>
immae: Hm, yea it could be that systemd like kills the console or something. My service is a system service btw.
Dagger2 is now known as Dagger
<samueldr>
it might not have fine-grained enough permissions, and it would muddy the water between the working branch and the released branch I think
<immae>
maybe looking at a cryptsetup-like service would show some option that is needed in case you want to ask for a password? (like a dependency or so)
<infinisil>
noonien: I'd think it's simpler for hydra to just set up a separate mirroring repo instead of making sure nobody can do something nasty in a very active repo with lots of people with access rights
<elvishjerricco>
immae: That's a good idea
<samueldr>
(hydra isn't even involved in pushing to the mirror, if it changes anything)
<infinisil>
noonien: s/simpler/easier
<immae>
cryptsetups are auto-generated, so good luck finding the service :(
<elvishjerricco>
yea...
<infinisil>
But I'm with elvishjerricco, I don't see much use in nixpkgs-channels and we could deprecate it imo
<gchristensen>
ok, but why?
<elvishjerricco>
infinisil: gchristensen made a good point. Being able to `fetchGit` a branch like `nixos-18.09` could be useful in some cases
<immae>
infinisil oh yes, one less file in my HOME :D
<gchristensen>
why deprecate it
<vikingman>
hi i got a problem tying to setup nixos i got an old nvidia gt335 and i have set to nvidiaLegacy340 but now my system is acting strange its look like 2 console try to be on the top of each other and flashing between them
<samueldr>
I am using nixpkgs-channels
<samueldr>
Vikingman: I'd say it's likely your X session is crashing in a tight loop
srid_ has quit [Quit: Connection closed for inactivity]
<samueldr>
(hi!)
<vikingman>
!! samueldr
<infinisil>
gchristensen: Hmm, doesn't nix 2.0 have this channel:nixos-unstable syntax for that?
<samueldr>
channel:nixos-unstable doesn't allow me to git diff
<samueldr>
I can't base a branch off channel:nixos-unstable
<infinisil>
samueldr: How do you use git diff with fetchGit and nixpkgs-channels?
<samueldr>
I don't fetchGit, whenever I hack on nixpkgs I start from the channels repo
<samueldr>
like imperative things
linarcx has joined #nixos
<infinisil>
Ah
ottidmes has left #nixos ["WeeChat 2.4"]
<infinisil>
OHh, idea: How about creating a git tag in nixpkgs for every channel update
<infinisil>
Might get a bit bloated over time though for the more active channels
<samueldr>
tags shouldn't be moved, in git parlance IIRC
<infinisil>
I mean, a new tag for every channel update
<samueldr>
and they don't scale, from previous discussion where I asked the same :)
<samueldr>
"allegedly" I never tried it
<gchristensen>
yes, git doesn''t nicely handle many many tags
<infinisil>
samueldr: Do too many tags cause performance issues or..?
<gchristensen>
yes
<infinisil>
Oh snap
<infinisil>
Booo
<samueldr>
gchristensen: answered that at the time :D
<elvishjerricco>
immae: I can already use the tty agent manually in the shell, switch to another tty and use systemd-ask-password. That does work fine.
<elvishjerricco>
The mystery is just the service getting killed...
<immae>
did you try asking on #systemd? I’m lost here, I see nothing that explains your issue and what you describe seems to be the intended way
<noonien>
can a user use the same package multple times, withh different overrides?
<noonien>
does it have to have a different name?
xkapastel has quit [Quit: Connection closed for inactivity]
biopandemic has joined #nixos
rfold has quit [Quit: leaving]
<symphorien>
with nix-env, yes
<symphorien>
note that if files have the same name, they will collide
<noonien>
in this case, it's a font, which in configurations nix, i add in fonts.fonts = [ <here> ];
Thra11 has quit [Ping timeout: 240 seconds]
<symphorien>
if the files in the derivation are not the same, then yes
<symphorien>
*then it will work
<noonien>
the files are different, yes
<noonien>
should i also give the derivation a different name, based on the provided parameters (it might be a really long one though)
<symphorien>
the name is only important with nix-env
<symphorien>
so for font.fonts it does not matter
<noonien>
hmm, why would the derivation name matter to nix-env?
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<symphorien>
this is how nix-env know whether what you install is an update or a new package
<symphorien>
if the name is the same as something already installed (but possibly not the same version) it will remove the old version before installing
<vikingman>
someone know how to deal with nvidia laptop gpu ?
<noonien>
symphorien: i see, in this case, i don't see why a font should behave differently than another package, i'll make sure the name changes with the parameters
<noonien>
i do wonder if there's a limit on how long the name should be
<__monty__>
gchristensen: If it's bad at tags wouldn't it also be bad at branches?
<symphorien>
noonien: because font.fonts is declarative, not imperative
<symphorien>
so there is no need to detect upgrades and remove old packages
<symphorien>
you tell you want A and B, it installs A and B
<symphorien>
it will only complain if A and B provide the same files
<gchristensen>
__monty__: possibly, have you worked with 5,000 branches before?
<symphorien>
what do you mean by common ?
<{^_^}>
[nixpkgs] @kalbasit opened pull request #56924 → jx: init at 1.3.955 → https://git.io/fhpJw
<__monty__>
Vikingman: I think ldlework recently complained about optimus/bumblebee no longer working?
<noonien>
is it common for packages that provide options that can be changed by overriding not change their name when the options are changed?
<ldlework>
its fine, i had to reboot
<symphorien>
I would say yes
<vikingman>
hmmm thats bad
<__monty__>
gchristensen: I assumed tags were to be an alternative to branches so the same reasoning would apply. Maybe I misunderstood though.
<__monty__>
Vikingman: Nah, ldlework just said it wasn't a real issue.
<gchristensen>
ah, __monty__, maybe, but it is "wrong" to update tags
<__monty__>
Why? Isn't a tag just a pointer to a commit, just like a branch is?
<{^_^}>
[nixpkgs] @jtojnar pushed commit from @peti to master « haskell-packages: re-write references to webkit to webkitgtk »: https://git.io/fhpJK
ddellacosta has quit [Ping timeout: 244 seconds]
ddellacosta has joined #nixos
<{^_^}>
[nixpkgs] @jtojnar pushed to master « webkit: move to aliases »: https://git.io/fhpJi
<noonien>
hmm, should i provide my optios as part of the set that i give to mkDerivation and use .overrideAttrs, or as the first set param in the file and use .override?
zupo has joined #nixos
<symphorien>
.override is usually prefered
<noonien>
are there any packages that i can look at that encourage overrides? i know all packages can be overriden, but i'm guessing some encourage it
<noonien>
this might also be a constraint for me, since i want to provide my package as `nerdfonts.font-name` where font-name is a derivation created by a function in the sam file where nerdfonts is created
<symphorien>
noonien: I think your argument is valid, but if you ask what is idiomatic, I would still say .override
<noonien>
i understand
<noonien>
there currently exists a `nerdfonts` derivation, i want to keep its functionality, can i make `pkgs.nerdfonts` a derivation, while also making `pkgs.nerdfonts.some-font` a derivation?
nDuff has joined #nixos
<symphorien>
yes
<nDuff>
What's the usual policy wrt. whether it's appropriate to fold an out-of-tree kernel patch into nixpkgs? (Context is a data-corruption bug in btrfs with a fix posted on the linux-btrfs list but not yet merged to the mainline kernel).
<noonien>
awesome! is there a package i can look at that does this?
<symphorien>
> let foo = pkgs.sl // { bar = pkgs.gti; }; in [ foo foo.bar ]
<{^_^}>
[ <CODE> <CODE> ]
<noonien>
AAAH, NICE!
<symphorien>
> let foo = pkgs.sl // { bar = pkgs.gti; }; in [ foo.name foo.bar.name ]
<{^_^}>
[ <CODE> <CODE> ]
<symphorien>
:(
<symphorien>
well you get the idea
<symphorien>
this is not to be abused: some attributes such as meta or name must be kept intact
<noonien>
yeah, i always thought derivations always eval as a string
<symphorien>
they can magically coerce to a string, but are an attrset
<noonien>
that makes sense, out of curiosity, what does the returned attrset look like?
<symphorien>
(by the way, this is how multiple outputs are implement I think)
<{^_^}>
[nixpkgs] @worldofpeace pushed commit from @Kjuvi to release-19.03 « maintainers: add kjuvi »: https://git.io/fhpJj
<infinisil>
> let foo = pkgs.sl // { bar = pkgs.gti; }; in deepEval [ foo.name foo.bar.name ]
<infinisil>
noonien: Not really, only the `derivation` function creates a derivation :2
<infinisil>
But from the nix side it looks like a normal attrset
<infinisil>
from the side that has access to that derivation i mean
<noonien>
ah, i totally forgot about the derivation function
<tilpner>
Well, normal attrset with .type = "derivation"
<noonien>
hmm, in my case, the parent derivation is basically a compilation of all sub-derivations, is there something that help me define "this derivation is a set of all these other derivations"?
<infinisil>
tilpner: (a normal attrset could also just have type = "derivation" though)
<tilpner>
infinisil: And those are considered derivations by Nix
<tilpner>
> { type = "derivation"; }
<{^_^}>
attribute 'drvPath' missing, at (string):18:55
<tilpner>
It was trying to handle it as a derivation
<infinisil>
Whoa
<infinisil>
> :v _show
<{^_^}>
_show = x: if lib.isDerivation x then "<derivation ${x.drvPath}>" else x
<tilpner>
nix repl does «derivation ???» instead
rcshm has quit [Remote host closed the connection]
<infinisil>
Well, maybe nix repl does just something like this ^^
<tilpner>
infinisil: Can I please have :p in {^_^}?
<symphorien>
noonien: symlinkJoin
<symphorien>
for example
jtojnar has quit [Remote host closed the connection]
<infinisil>
tilpner: I'll see what I can do, I don't have anything to do right now and that shouldn't be too hard :)
<tilpner>
infinisil: Not urgent, but it always looks stupid when you try to demonstrate something, and {^_^} says CODE CODE CODE
<tilpner>
And :p would be consistent with nix repl, so no remembering of deepEval/deepseq
<tilpner>
infinisil: Or maybe even format both ways and default to :p if the result is still smaller than the max message length?
<noonien>
symphorien: nice!, thanks!
<infinisil>
tilpner: I'll have to use --strict for :p
<infinisil>
and that doesn't work well with derivations
<tilpner>
infinisil: Can't you just have it prepend deepEval?
sigmundv has joined #nixos
<infinisil>
I think that would be about the same as --strict yeah
<noonien>
can i inherit all attrs of a set?
<tilpner>
> deepEval hello
<{^_^}>
types.optionSet is deprecated; use types.submodule instead
<tilpner>
Oh
<infinisil>
But I'll have to change the code for :p anyways, so I might as well implement it with --strict
<symphorien>
noonien: // ?
<noonien>
`//` works, i was looking for something like `inherit` so i can place it near where it's more relevant
ng0 has quit [Quit: Alexa, when is the end of world?]
<tilpner>
infinisil: Sorry, I didn't intend to give you a bunch of work, I thought it'd be a quick alias of :p to deepEval :/
maximiliantagher has quit [Remote host closed the connection]
<infinisil>
tilpner: No problem, I enjoy doing this right now, no worries :)
<tilpner>
infinisil++
<{^_^}>
infinisil's karma got increased to 54
zupo has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
<symphorien>
> let foo = { a = 1; b = 2; }; in deepEval { c = 3; inherit (foo) a b; } # noonien
<{^_^}>
{ a = 1; b = 2; c = 3; }
<symphorien>
but you have to repeat the name of all the attrs you want
maximiliantagher has joined #nixos
maximiliantagher has quit [Remote host closed the connection]
maximiliantagher has joined #nixos
<noonien>
yes, i was looking for a way to go around that, oh well, thanks anyway!
<noonien>
btw, will my package requiring a different fetcher lower the chances of mr PR being accepted? i've got a fetcher that pulls a subset of files from a github repo (the repo i'm working with is 2GB and includes build artifacts i don't need)