31 Jul 2024 |
Šimon Brandner | Oh, the problem is actually elsewhere | 16:32:35 |
Šimon Brandner | Still doesn't explain why it fails in nix build and works fine elsewhere | 16:32:56 |
Šimon Brandner | So the problem is that the build.rs thingy is failing to find the file it generated (and I indeed cannot find it in /tmp/nix-build-app-0.0.1.drv-0 ) | 16:47:55 |
Šimon Brandner | It could be an issue with OUT_DIR not being set correctly... | 16:50:32 |
quapka4 | Hi folks, is it not possible to directly change the sources in $src during any of the phases? Imagine I need to add a generic target to Makefile , so I wanted to do something like:
mySource = ./extraMakeTarget.txt
<somePhase> = ''
cat $mySource >> $src/makefile
'';
But I am getting a Permission Denied error.
| 17:08:40 |
quapka4 | I don't/can't easily use patches because the makefile can have various structure depending on the version of the package. | 17:09:14 |
quapka4 | I assumed that during the phases I kinda have a full access to whatever sources I have, because my changes through any phase end up in the resulting hash anyway. | 17:12:05 |
Benedikt | In reply to @quapka4:matrix.org I assumed that during the phases I kinda have a full access to whatever sources I have, because my changes through any phase end up in the resulting hash anyway. You actually do, but the source (refered to by $src ) is still in the read-only nix store. You probably want to change the upacked source, which should be in the working directory of the builder | 17:17:46 |
quapka4 | In reply to @soispha:vhack.eu You actually do, but the source (refered to by $src ) is still in the read-only nix store. You probably want to change the upacked source, which should be in the working directory of the builder Ah, thanks! | 17:19:57 |
quapka4 | So, change $src to $sourceRoot works. | 17:20:33 |
quapka4 | And I guess postUnpack would be the appropriate place. | 17:23:26 |
Šimon Brandner | In reply to @simon.brandner:envs.net It could be an issue with OUT_DIR not being set correctly... Trying to print it makes a bit confused... When building using cargo, I see /home/... , when using nix build , I see /build/... | 17:29:38 |
samasaur | Pretty sure that is because when you are using nix build the build is run as a nixbld user, and their home directories are not under /home | 19:09:25 |
1 Aug 2024 |
Mindavi | In reply to @quapka4:matrix.org And I guess postUnpack would be the appropriate place. postPatch or prePatch, I'd say | 05:31:16 |
| @teutat3s:pub.solar left the room. | 07:50:30 |
| Vika (she/her) changed their profile picture. | 11:50:42 |
2 Aug 2024 |
| fiioul joined the room. | 19:37:18 |
7 Aug 2024 |
| oatmealraisin joined the room. | 17:56:26 |
| @taffisher:matrix.org left the room. | 19:13:00 |
| hyperflare joined the room. | 19:44:42 |
8 Aug 2024 |
quapka4 | Hi, a simple thing :D. I have a flake.nix that builds on my NixOS machine, but when I tried to build that flake on another non-NixOS machine that has Nix installed with nix-user-chroot the build fails on one particular package (libgpg-error ). What is the reasonable way to debug this? | 08:29:52 |
quapka4 | I hope it's some mismatch of channels or some version or something, because this hassle with "runs on my machine" is exactly something I wanted to avoid when diving into Nix :D | 08:30:43 |
dramforever | In reply to @quapka4:matrix.org Hi, a simple thing :D. I have a flake.nix that builds on my NixOS machine, but when I tried to build that flake on another non-NixOS machine that has Nix installed with nix-user-chroot the build fails on one particular package (libgpg-error ). What is the reasonable way to debug this? if the store path is the same then it's not some channel or version mismatch | 08:33:18 |
dramforever | it could just be something in libgpg-error that works differently in a chroot... unfortunately it's also basically an ad-hoc process to see what went wrong | 08:34:06 |
quapka4 | Well, nix-user-chroot gives me /nix/store and my NixOS also has /nix/store . | 08:34:56 |
dramforever | oh i mean the path of that thing that "builds" | 08:35:16 |
dramforever | how are you running anything? full command and logs? | 08:35:24 |
dramforever | it should fail at the end something like for full logs run nix log /nix/store/somethingsomething.drv | 08:35:53 |
quapka4 | Just nix build '.?submodules=1' . | 08:36:00 |
dramforever | if that long something is the same it's not a channel or version mismatch | 08:36:03 |