Live data from Hacker News

There is no such thing as a “glibc based alpine image”

ariadne.space

191–200 of 204 posts

Re: There is no such thing as a “glibc based alpine image”

#191

Earlier quoted context omitted.

I was not aware that publicly setting boundaries on what is a supportable configuration and what wasn't one was somehow equivalent to white nationalist syndicalism, but thanks for letting me know.

When your first reaction in all this was to figure out a way to try to block a third-party package from being installed, and then you make comments like... "we feel it appropriate to signal our position more forcefully." And then you lock comments on GitLab from people commenting.. You could have, before even writing the blog post, posted an issue on their GitHub to try seeing if they can post a more noticeable discl…

The issue is not the package. Obviously Sasha is allowed to publish whatever packages he wishes.

The problem is that third parties take his package and then describe the combination of Alpine with his package in such a way that people are led to believe is totally stock Alpine.

This then causes many people to complain in Alpine support channels, or on websites like this one, that Alpine is "buggy" in ways that cannot be reproduced on real Alpine.

You also assume that this is our first reaction.

Our first reaction was 6 years ago when it first came out: meh.

No, this is our first reaction to a large company trying to pass off their hackjob images combining Alpine, glibc and a glibc JDK as a certified JDK that is running on stock Alpine.

It is unfortunate that we have waited this long to put our foot down, honestly!

We need to support our friends in the Docker community who manage the Docker Library who also get to deal with the fallout of these hackjob images.

The person who makes the hackjob rarely faces the consequences of it breaking, that basically has always fallen on us, or on the Docker Library team, or on some other team in the ecosystem that has to deal with somebody who is mad because their application has failed due to some shoddy work done by somebody 2 years ago.

Stop assuming this is our "first" reaction. It isn't. I even said it wasn't to begin with -- a "first" reaction cannot logically be an escalation from a previous position, it must be an initial one.

Re: There is no such thing as a “glibc based alpine image”

#192

Earlier quoted context omitted.

Disk space is cheap, particularly when we're talking about libs that consume a few hundred kb each. On the other hand, software distributions should continue to rely on shared libraries, for their own software , but third-party compiled apps that are intended to be cross-distro/cross-arch should try to bundle as much as possible. This is why I prefer /opt over /usr/local for third-party compiled apps.

Maybe. Apps wouldn't have to bundle their own versions of libraries if those libraries actually cared about backwards compatibility. Bundling is just an unfortunate workaround for libraries continually breaking their ABI. Windows 10 can run virtually all apps compiled against Windows 2000 just fine, and those apps did not have to bundle their own graphical toolkits. Windows has gone through several new toolkits but t…

There are many distributions. Packaging your app for all of them isn't feasible. Including all the dependencies right down to glibc is.

Re: There is no such thing as a “glibc based alpine image”

#193
> I have additionally suggested that the TSC may wish to have the Alpine Council reach out to the alpine-glibc project to find a solution which appropriately communicates that the project is not supported in any way by Alpine.

Eye roll.

Should glibc reach out as well?

Re: There is no such thing as a “glibc based alpine image”

#194
post #82

I think we need more well-maintained "parts" that can be used as alternatives to libc. For instance, string operations can be 5x faster on AVX2, but not every distro provides this code. I recently upgraded some Centos 6 machines (glibc 2.17) to Debian 10 (glibc 2.28) and system-provided strstr got about 5x faster, which was really important to my binary. I imagine similar differences exist between musl and glibc, due…

> It's fine for different distros to be 10% different in speed, but it's really not okay for them to be 500% apart.

Debian 10 release date: 6 July 2019

Centos 6 release date: 10 July 2011

This is hardly an apples-to-apples comparison.

Re: There is no such thing as a “glibc based alpine image”

#195

Earlier quoted context omitted.

When your first reaction in all this was to figure out a way to try to block a third-party package from being installed, and then you make comments like... "we feel it appropriate to signal our position more forcefully." And then you lock comments on GitLab from people commenting.. You could have, before even writing the blog post, posted an issue on their GitHub to try seeing if they can post a more noticeable discl…

The issue is not the package. Obviously Sasha is allowed to publish whatever packages he wishes. The problem is that third parties take his package and then describe the combination of Alpine with his package in such a way that people are led to believe is totally stock Alpine. This then causes many people to complain in Alpine support channels, or on websites like this one, that Alpine is "buggy" in ways that cannot…

> The issue is not the package. Obviously Sasha is allowed to publish whatever packages he wishes.

> The problem is that third parties take his package and then describe the combination of Alpine with his package in such a way that people are led to believe is totally stock Alpine.

You were specifically trying to block the package from being installed without recompiling musl.

> This then causes many people to complain in Alpine support channels, or on websites like this one, that Alpine is "buggy" in ways that cannot be reproduced on real Alpine.

You're putting too much pressure on yourself. This is simple... if someone isn't using the official Alpine image (alpine) then they should ask for support from the image creator, as there are thousands of things that can go wrong outside of you control.

> No, this is our first reaction to a large company trying to pass off their hackjob images combining Alpine, glibc and a glibc JDK as a certified JDK that is running on stock Alpine.

Labeling other developers work as hackjob images is condescending. Your whole post was condescending. Just because someone has alpine in an image tag doesn't mean that they are trying to indicate that it uses stock Alpine as the base image, but instead that it uses Alpine as the underlying distro. Who knows what software or changes they've added to it that may cause issues outside of Alpine's control.

> It is unfortunate that we have waited this long to put our foot down, honestly!

> We need to support our friends in the Docker community who manage the Docker Library who also get to deal with the fallout of these hackjob images.

> The person who makes the hackjob rarely faces the consequences of it breaking, that basically has always fallen on us, or on the Docker Library team, or on some other team in the ecosystem that has to deal with somebody who is mad because their application has failed due to some shoddy work done by somebody 2 years ago.

Seriously, these comments only show that this is more about control for you than anything. I can't say for sure, but I have a feeling that eventually other people in the community will either leave or ask you to leave for toxic behavior like this.

Re: There is no such thing as a “glibc based alpine image”

#196

Earlier quoted context omitted.

I'm having a hard time here - do you really not see the connection between what I'm saying, what you're saying, and the use of a default masculine pronoun?

I see the connection, what I'm suggesting is that you knew what they meant when they said guy, meaning you did not need to suggest that they thought women didn't exist on the internet, nor did you need to suggest that they were assuming everybody on the internet is a man. Both of those statements are bad faith.

I don't think we're operating under the same impression of bad faith. You seem to be using it to mean "an argument or line of reasoning I don't find compelling", where I am using it to mean "bringing up a line of argument or discussion for some reason other than participating".

So to circle back around on this, some people feel like using male as the default gender is rude and exclusionary. Try assuming people are women, just as an experiment, and see what sort of push back you get. This isn't in any way a bad faith argument.

Re: There is no such thing as a “glibc based alpine image”

#197
post #74

Earlier quoted context omitted.

There is a difference between "python:3.10-alpine" and "alpine-glibc". One stands for: "we use alpine" (not a trademark violation) The other one stands for "this is alpine" (a trademark violation)

First, the repo name is alpine-pkg-glibc because it is merely a package you install on Alpine. The container name, created by a different individual is frolvlad/alpine-glibc, and they make it clear that it is based off Alpine with the glibc package installed. In fact, you can even look at the source code. This is ridiculous, and if Alpine starts going after people for using alpine in the container image name or tag t…

  debian-stable
  debian-buster
  debian-slim
Those names are clearly not packages but distros.

  python:3.10-debian
  python:3.10-alpine
Those names are clearly packages based on a distrop

So why not:

  glibc-alpine
This would avoid confusion.

> they make it clear that it is based off Alpine with the glibc package installed

Well, seeing the number of issues opened on the official Alpine bug tracker regarding this package, it seems it's not that clear.

> if Alpine starts going after people for using alpine in the container image name or tag then I now know what distro to avoid entirely.

Alpine starts going after people for misusing the name and impacting their reputation. This is completely normal and understandable.

Marketing and communication is an important part of every projects, even open source projects, this is not exclusive to businesses. If you want people to support your project, you need to protect your image.

Re: There is no such thing as a “glibc based alpine image”

#198

Earlier quoted context omitted.

The issue is not the package. Obviously Sasha is allowed to publish whatever packages he wishes. The problem is that third parties take his package and then describe the combination of Alpine with his package in such a way that people are led to believe is totally stock Alpine. This then causes many people to complain in Alpine support channels, or on websites like this one, that Alpine is "buggy" in ways that cannot…

> The issue is not the package. Obviously Sasha is allowed to publish whatever packages he wishes. > The problem is that third parties take his package and then describe the combination of Alpine with his package in such a way that people are led to believe is totally stock Alpine. You were specifically trying to block the package from being installed without recompiling musl. > This then causes many people to compla…

The only reason I took any position at all on this issue is because other partners in the Alpine / Cloud Native ecosystem requested that we clarify our position on mixing musl and glibc runtimes.

You ignore the point I am making: people are already fighting this issue for years, and Alpine has not taken a position on it until now.

We should have done so sooner, but unfortunately we did not, so a more theatric approach is sometimes needed to make a point.

We want to discourage bad practices in the creation of alpine-based images, so that our partners (such as the Docker library team) do not have to deal with user complaints with images, or feel like companies are bullying them into accepting images they know are built with bad practices.

If you call taking action to provide assistance requested by our ecosystem partners (who have been thrilled that we are putting our foot down by the way) toxic behavior I wouldn’t want to know what your idea of a party is to be blunt.

Re: There is no such thing as a “glibc based alpine image”

#199

Earlier quoted context omitted.

> Alpine is free to provide a solution to the problem then. Alpine is also free to _not_ provide a solution to the problem. Alpine is free to say "This is not an approved use of our name" As you point out, the way to convey that you are a fork is to change your name in a non-confusing way, and provide attribution to the original in your readme or licenses.

This isn't a fork. I seriously wonder how many people here are commenting without having any clue as to what they are talking about. It is simply a package that you install with apk in Alpine.

Thanks for your "clarification", however I don't think you've fully grokked the situation yourself.

I think the thing that was referred to as a "fork" was the docker image, which uses the package you mention, and afaik is the primary way that people are receiving that package and believing it to be blessed by the Alpine gods. In the sense that the container is a distribution in its own right that deviates from the roadmap of the Alpine makers, it could be considered a fork of sorts. And given that the package naming is far less confusing than the dockerhub naming, I feel like that's what most people on HN are attributing the confusion to.

Note that the article doesn't mention that it's the container that is the source of confusion until the very last section, where it points out what they want to rename. The package itself is called alpine-pkg-glibc and as the author of that package has pointed out, the reason it is called that is to follow alpine package naming conventions, and they have mentioned on this HN convo that they are completely open to changing that name if asked.

But regarding the docker image, I'm well aware that this isn't technically a full fork; I was mirroring the language used on the parent poster - however, since your clarification does not do justice to the complexity of the situation either and implies that you have less clue about what you're talking about, maybe tone it down a bit. Especially since one possible solution to this situation is indeed for the frolvlad/alpine-glibc authors to produce a full fork of Alpine linux with glibc and call it something else (I wonder if Himilayan Linux is available?)

Re: There is no such thing as a “glibc based alpine image”

#200
post #157
post #113

Earlier quoted context omitted.

Service-Discovery-Over-DNS is typically the use-case. It's used as a compatibility layer for software where you either can't or don't want to integrate the native discovery APIs. Consul is a good example of this. You don't actually have to know how to speak Consul to get automatic service discovery, all you have to do is query a DNS name to get the hosts registered for a particular service.

That doesn’t answer my question at all, unless you mean that people make bad engineering decisions because they like using cute things. dig is not affected by alpine’s decision here because dig does not use gethostbybame. No DNS client would be. This affects gethostbyname which very few programs in my experience even support robustly, so any “use-case” where someone is using 100 results would surprise me. It seems if…

I'm not really sure what you mean by "support gethostbyname robustly" or that "dns clients aren't affected." Because on a GNU/Linux system the only correct method of resolving DNS is by using gethostbyname (or nowadays getaddrinfo) and friends. If you do anything else things will be broken because you aren't following the distro's/system integrator's/sysadmin's/user's configured NSS modules for name resolution.

And getaddrinfo returns a linked list of results so it's not exactly hard to support 100 results. All the actual junk about TCP/UDP is completely abstracted away from the caller.

So sure, while you could use your own DNS client specifically for talking to Consul's DNS server the whole point of the thing is to act as a compatibility layer for software you didn't write and which will 100% of the time use glibc's methods.

Post reply on HN