| 30 Aug 2023 |
Moritz | Thanks for your help. Now with the nixpkgs it builds flawlessly :) | 09:48:25 |
j-k | glad to hear | 11:23:13 |
| 5 Sep 2023 |
| zoopli joined the room. | 17:28:41 |
| 9 Sep 2023 |
| Moritz Sanft joined the room. | 12:15:00 |
| 10 Sep 2023 |
| farcaller joined the room. | 12:35:56 |
farcaller |  Download image.png | 12:39:52 |
farcaller | wrote a tiny idiomatic API wrapper around C bindings to nix:
```
$ go run examples/build_hello/main.go
drv /nix/store/nms6chyaxb6pxzb021jx351nn32j3lx7-hello-2.12.1.drv vaild? true
out -> /nix/store/6wmplzfs0nz866p320xnknpr05q79m62-hello-2.12.1
``` | 12:39:52 |
farcaller | * wrote a tiny idiomatic API wrapper around C bindings to nix: \$ go run examples/build\_hello/main.go
drv /nix/store/nms6chyaxb6pxzb021jx351nn32j3lx7-hello-2.12.1.drv vaild? true
out -> /nix/store/6wmplzfs0nz866p320xnknpr05q79m62-hello-2.12.1 | 12:40:07 |
farcaller | * wrote a tiny idiomatic API wrapper around C bindings to nix: $ go run examples/build_hello/main.go
drv /nix/store/nms6chyaxb6pxzb021jx351nn32j3lx7-hello-2.12.1.drv vaild? true
out -> /nix/store/6wmplzfs0nz866p320xnknpr05q79m62-hello-2.12.1 | 12:40:29 |
@qbit:tapenet.org | farcaller: nice!! | 12:51:04 |
@qbit:tapenet.org | link? | 12:51:31 |
farcaller | In reply to @qbit:tapenet.org link? https://github.com/farcaller/gonix. I’m hacking this as I go, but evals and builds seem to work as intended. | 12:57:54 |
@qbit:tapenet.org | rad :D | 13:01:05 |
| 11 Sep 2023 |
Moritz Sanft | Hey, I'm currently trying to build a static binary of a Go module which uses CGO. However, the local header file I'm trying to include in my main.go is not being picked up. I struggle to find the definition of buildGoModule to see what happens exactly. In my understanding, the header file should be included since src = ./.
| 18:31:14 |
Moritz Sanft | The corresponding output for reference:
packages.x86_64-linux.default = pkgs.buildGoModule rec { # pkgs.pkgsCross.riscv64.buildGoModule rec {
pname = "keystone-go-enclaves";
version = "0.0.0";
src = ./.;
vendorHash = null;
nativeBuildInputs = [ musl ];
CGO_ENABLED = 1;
ldflags = [
"-s -w"
"-linkmode external"
"-extldflags '-static -L${musl}/lib'"
];
};
| 18:31:38 |
countoren | Hi Moritz Sanft , I guess it is not directly answer your question but I had to play with go packages myself I had to cross compile a server to arm I was thinking to go the static compilation route, but I ended up with dynamicly linked + deliverable with NAR files to the system. I dont know if it is much help but it might give you a lead. | 21:07:34 |
| 12 Sep 2023 |
@atalii:matrix.org | In reply to @msanft:matrix.org Hey, I'm currently trying to build a static binary of a Go module which uses CGO. However, the local header file I'm trying to include in my main.go is not being picked up. I struggle to find the definition of buildGoModule to see what happens exactly. In my understanding, the header file should be included since src = ./.
i'm not too experienced with CGO/nix/etc, but i'll take a stab in the dark - if ./. is a git repository, nix will ignore any file that isn't indexed; you can git add -N $your_header_file if that is the issue | 01:14:01 |
Moritz Sanft | Hey oren :) Thanks for your reply! Actually, I think I inevitably need a static binary. I don't know if it will even work out in the end, but I'm trying to compile a CGo-using Go app for an embedded RISCV device which requires static binaries from my x86 builder device. Quite unusual I guess :D | 05:31:01 |
Moritz Sanft | God, yes. I didn't notice I had not checked in this file. Thank you so much! | 05:32:20 |
| chrispickard removed their display name chrispickard. | 17:38:32 |
| 13 Sep 2023 |
| jsla joined the room. | 07:35:55 |
| 15 Sep 2023 |
| Michal Fikejs joined the room. | 00:07:20 |
farcaller | what's the best way to run go test on a go module that has a bunch of cgo deps pulled from flakes? I guess, i"m mostly curious how to run checks only via buildGoModule or something, given the module doesn't have any binary outputs. | 19:38:18 |
| 16 Sep 2023 |
| Paul Meyer (katexochen) changed their display name from katexochen to Paul Meyer (katexochen). | 08:20:12 |
| 21 Sep 2023 |
kidsan | Are we able to buildGoModule using go version 1.21 currently? | 11:45:12 |
@qbit:tapenet.org | Yes | 12:09:06 |
kidsan | Yeah I worked out the required override just now, thanks! | 12:09:46 |
| dedmunwalk joined the room. | 23:06:59 |
| 24 Sep 2023 |
| mib 🥐 joined the room. | 12:21:01 |
| 25 Sep 2023 |
Paul Meyer (katexochen) | Why is buildGoModule using vendoring instead of relying on go.mod/go.sum? | 05:06:06 |