!QCCCSJHEsTIfozrZxz:nixos.org

Nix + Go

215 Members
Go packaging for and with Nixpkgs. | Be excellent to each other.48 Servers

Load older messages


SenderMessageTime
30 Aug 2023
@theclearpill:matrix.orgMoritzThanks for your help. Now with the nixpkgs it builds flawlessly :)09:48:25
@j-k:matrix.orgj-kglad to hear11:23:13
5 Sep 2023
@zoopli:matrix.orgzoopli joined the room.17:28:41
9 Sep 2023
@msanft:matrix.orgMoritz Sanft joined the room.12:15:00
10 Sep 2023
@farcaller:matrix.orgfarcaller joined the room.12:35:56
@farcaller:matrix.orgfarcallerimage.png
Download image.png
12:39:52
@farcaller:matrix.orgfarcallerwrote 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:matrix.orgfarcaller *

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:matrix.orgfarcaller *

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@qbit:tapenet.org farcaller: nice!! 12:51:04
@qbit:tapenet.org@qbit:tapenet.orglink? 12:51:31
@farcaller:matrix.orgfarcaller
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@qbit:tapenet.orgrad :D13:01:05
11 Sep 2023
@msanft:matrix.orgMoritz SanftHey, 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
@msanft:matrix.orgMoritz 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:matrix.orgcountoren 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@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
@msanft:matrix.orgMoritz 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
@msanft:matrix.orgMoritz SanftGod, yes. I didn't notice I had not checked in this file. Thank you so much!05:32:20
@chrispickard:matrix.orgchrispickard removed their display name chrispickard.17:38:32
13 Sep 2023
@jsla:matrix.orgjsla joined the room.07:35:55
15 Sep 2023
@mfikejs:fikejs.comMichal Fikejs joined the room.00:07:20
@farcaller:matrix.orgfarcaller 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
@katexochen:matrix.orgPaul Meyer (katexochen) changed their display name from katexochen to Paul Meyer (katexochen).08:20:12
21 Sep 2023
@kidsan:matrix.orgkidsanAre we able to buildGoModule using go version 1.21 currently? 11:45:12
@qbit:tapenet.org@qbit:tapenet.org Yes 12:09:06
@kidsan:matrix.orgkidsanYeah I worked out the required override just now, thanks!12:09:46
@dedmunwalk:matrix.orgdedmunwalk joined the room.23:06:59
24 Sep 2023
@mib:kanp.aimib 🥐 joined the room.12:21:01
25 Sep 2023
@katexochen:matrix.orgPaul Meyer (katexochen)Why is buildGoModule using vendoring instead of relying on go.mod/go.sum?05:06:06

Show newer messages


Back to Room ListRoom Version: 9