285
submitted 4 months ago by bahmanm@lemmy.ml to c/linux@lemmy.ml

Shameless plug: I am the author.

you are viewing a single comment's thread
view the rest of the comments
[-] dinckelman@lemmy.world 117 points 4 months ago

Golang puts shit specifically in $HOME/go. Not even .go. Just plain go.

Why is it so difficult to follow industry standards

[-] Laser@feddit.org 26 points 4 months ago

That's what happens when you don't set $GOPATH I think

[-] fmstrat@lemmy.nowsci.com 52 points 4 months ago
[-] Laser@feddit.org 10 points 4 months ago

It makes it insofar better to me that you have the option to change it. You can't change Mozilla programs to use anything but .mozilla (apart from modifying the source code of course) so for me seeing the folder is at least a way of telling me that the variable is unset.

The better question is which folder is suited the best to store the stuff that goes into $GOPATH

[-] fmstrat@lemmy.nowsci.com 7 points 4 months ago

Just because something is worse, doesn't make the other thing good. A sane and standard default, as others have mentioned, is a small bar to meet.

[-] dinckelman@lemmy.world 20 points 4 months ago

Of course, but that's not the point. There should be a sane default, and there isn't one

[-] atzanteol@sh.itjust.works 13 points 4 months ago* (last edited 4 months ago)

Go pisses me off with that. I separate projects the way I want but go wants every project written in go in one big directory?

[-] dinckelman@lemmy.world 2 points 4 months ago

I really didn’t like this either. It’s quite surprising, because the rest of Go tooling is quite nice. Not having a venv, or at least something like pnpm-style node_modules is weird

[-] jollyrogue@lemmy.ml 1 points 4 months ago

Why would go have a virtual environment or dep tree like node_modules equivalent, it’s not interpreted or dynamically linked.

With modules, dependencies can be vendored.

[-] dinckelman@lemmy.world 1 points 4 months ago

Obviously it’s not, but you have to download all this shit somewhere before compilation. That’s the whole point

[-] turkalino@lemmy.yachts 6 points 4 months ago

Google

following industry standards

pick one

[-] mcepl@lemmy.world 1 points 4 months ago

This post literally links to the leading one.

[-] eager_eagle@lemmy.world 5 points 4 months ago

off the shelf go was too annoying for me

Nowadays I set GOENV_ROOT to an XDG location and use goenv instead.

this post was submitted on 14 Jul 2024
285 points (94.7% liked)

Linux

48199 readers
874 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS