| 27 Jun 2025 |
kdn | could nix builder have some problem with ~500 bind mounts due to persistence setup? | 17:57:38 |
kdn | nevermind, I don't have persistence on my laptop at all | 17:57:48 |
kdn | * nevermind, I don't have persistence on my laptop at all, I have it on my rpi4 that builds the stuff quickly enough too | 17:58:34 |
| 1 Jul 2025 |
| Puna joined the room. | 09:08:37 |
Puna | don't really know much about Go and its different compilers, so i figured I'd ask here: how many things would explode if i replaced go with gccgo in Nixpkgs? is Go stuff generally compatible with the latter, maybe only with missing Nix glue here and there for it to be a direct go = gccgo job? i have a platform that go doesn't really support anymore since 1.9 (or at least not in a manner where affordable hardware can use it), and upstream has no interest in fixing that support, so I'm planning to mark go as unsupported on it and am looking for alternatives. this replacement would only affect that particular platform. | 09:21:44 |
K900 ⚡️ | gccgo is not practically usable AFAIK | 09:22:18 |
Puna | in that the project itself is borked / not up-to-spec and incompatible with out-in-the-wild Go code, or is our packaging of it bad? | 09:23:59 |
K900 ⚡️ | I think upstream | 09:24:31 |
K900 ⚡️ | The GCC 12 and 13 releases include a complete implementation of the Go 1.18 standard library. However, GCC does not yet include support for generics.
| 09:25:14 |
K900 ⚡️ | https://go.dev/doc/install/gccgo | 09:25:17 |
K900 ⚡️ | So yeah it's stuck on an ancient Go version | 09:25:21 |
Puna | hmm… and i assume usage of generics is common enough for that to matter? any important packages i'd miss out on by just marking go unsupported and accepting that Go is just a no-go (lol)? | 09:30:42 |
K900 ⚡️ | Honestly, lots | 09:32:48 |
K900 ⚡️ | What platform is that even? | 09:32:51 |
Puna | big-endian ppc64 | 09:33:00 |
Puna | support for POWER < 8 got dropped, and those systems are the only ones that are affordable, and where using big-endian really made sense | 09:34:11 |
K900 ⚡️ | Yeeeeeeeeeeah | 09:34:51 |
diamond (it/its) | on a basic system i dont think theres much youd miss out, more than that it depends on what youll use it for | 21:00:09 |
diamond (it/its) | like a lot of web stuff are in Go for example | 21:00:17 |
diamond (it/its) | https://groups.google.com/g/golang-dev/c/5ZKcPsDo1fg?pli=1 | 21:01:24 |
diamond (it/its) | it sucks bc iant left all Go development efforts internally so this probably won't be coming anytime soon... | 21:01:43 |
| 2 Jul 2025 |
Puna | i'm building my way from stdenv to various things necessary for an average system, so anything that's written in Go along the way. so far it's only been necessary for some optional tools in libcap, which did seem to build just fine with the compiler. | 10:39:00 |
| 3 Jul 2025 |
jsnf | Suppose you are packaging a go project that used go version 1.24.4 ( declared in the go.mod)
Would you use BuildGoModule or BuildGo124Module?
The project will upgrade go versions according to new releases | 12:56:24 |
jsnf | * Suppose you are packaging a go project that uses go version 1.24.4 ( declared in the go.mod)
Would you use BuildGoModule or BuildGo124Module?
The project will upgrade go versions according to new releases | 12:56:33 |
jsnf | * Suppose you are packaging a go project that uses go version 1.24.4 ( declared in the go.mod)
Would you use BuildGoModule or BuildGo124Module?
The project will upgrade go versions according to new releases | 12:56:45 |
jsnf | Its for nixpkgs | 12:57:27 |
jrick | dunno the nixpkgs policy but i would only specify the version if the current version was too low | 12:57:35 |
jsnf | So according to which go version is used in the latest release or unstable channel? | 12:58:45 |
jrick | or maybe even patch the go.mod version... | 12:59:27 |
jrick | i don't know if there are any hard rules about how to deal with it, but i'm sure the reviewers will give their opinions | 13:00:45 |