10 ms·
Alpine Linux does not make the news
- rolph 3y agoget it here: https://alpinelinux.org/ https://alpinelinux.org/
- deleted 3y ago[deleted]
- ccrush 3y agodoesn't everyone use it in containers?
- TheFreim 3y agoI first learned about alpine because I saw a project use it for their containers.
- thewataccount 3y agoMost of the big packages have alpine variants yeah
- dgrove 3y agoThe lack of package signing and reproducible builds leaves a lot to be desired
- micahcc 3y agostill true it doesn't make news I suppose
- duped 3y agoTheir apks aren't hosted at stable urls either so you can't even write a script that can reliably create a reproducible build.
- sacnoradhq 3y agoIn general: 1. There should be an easy-to-use API, CLI, library, and data (sqlite db or whatever) to query package metadata efficiently. 2. The mythological purity of rolling releases building against edge versions without dependency constraints or maintaining stable versioning causes problems in the real world(tm). There are many cases where past versions are needed. Example: ffmpeg is buggy as hell and has to be managed very carefully. Another example: binutils, gcc, mpfr, mpc, and toolchain friends have to be built together with compatible versions. Further example: don't compile anything with Clang/LLVM 14+ unless you want all of your code to break because some genius decided to break the world out of ideological perfectionism. macports, Homebrew, nix, and Arch are just some who are guilty of this sin.
- thewataccount 3y agoI'm confused as to why package signing isn't standard for all package managers. Didn't Pypi just remove signing too?
- bravetraveler 3y agoPyPi did indeed, but it's a fairly interesting case. It was removed because the implementation was ineffective More information on that here: https://blog.yossarian.net/2023/05/21/PGP-signatures-on-PyPI-worse-than-useless https://blog.yossarian.net/2023/05/21/PGP-signatures-on-PyPI... There was a lot of talk about why this didn't go the other way; keeping signing, but making the practice meaningful. I forget the details about that.
- Arnavion 3y agoPackages are signed in exactly the same way Debian packages are signed, ie the package files themselves are not signed but the index file that lists them is.
- dgrove 3y agoBecause a single hot key for signing on a random build server has never fucked anyone before? https://www.techtarget.com/whatis/feature/SolarWinds-hack-explained-Everything-you-need-to-know https://www.techtarget.com/whatis/feature/SolarWinds-hack-ex...
- Arnavion 3y agoPlease move those goalposts farther. I can still see them.
- MartijnBraam 3y agoBoth the package and the index is signed actually. That's why it still works when installing APK files directly
- sacnoradhq 3y agoRedhat (pre-RHEL) solved package signing around 1999 with RPM 2.0/3.0 by using PGP and later replacing it with GPG. Debian solved it around 2003 by also using GPG. https://dan.drydog.com/rpm-signing-howto.html https://dan.drydog.com/rpm-signing-howto.html https://www.cryptnet.net/fdp/crypto/strong_distro.html https://www.cryptnet.net/fdp/crypto/strong_distro.html With truly reproducible builds, it's possible to introduce distributed caching of artifacts and selective probabilistic rebuilds from source to attest/verify integrity in a distributed manner.
- davegauer 3y agoAlpine is wonderful for old hardware.
- micahcc 3y agoI've been migrating to nixos. I think it makes news in that everyone is obligated to hate it publicly for at least 6 months before resigning themselves to it.
- walterbell 3y agohttps://www.zdnet.com/article/chainguard-releases-wolfi-a-linux-undistribution/ https://www.zdnet.com/article/chainguard-releases-wolfi-a-li... > To make this new Linux variant, Lorenc said, "We hired a bunch of the original Alpine team. But, Alpine was never designed for containers. It was originally designed for routers, firmware, and that kind of thing. What made it attractive for containers was its size and security." Wolfi takes that minimal approach to an extreme for the sake of security.
- tannhaeuser 3y agoI'm not complaining, but am a bit surprised to hear Drew's praises. Isn't Alpine, by using BSD-licensed muslc instead of glibc, OpenRC instead of Linux-only systemd, and by its overall business-friendly focus on containers enabling distribution free of GPL restrictions conflicting with Drew's FSF and GNU engagement?
- smashed 3y agoCan't speak for him but from looking at his work, I think he also likes minimalism and human scale software (if that's a thing). Of course it's probably not the license he'd prefer but you can still appreciate something for what it is despite the license.
- garbagecoder 3y ago[flagged]
- dang 3y agoCould you please stop posting unsubstantive comments and flamebait? You've unfortunately been doing it a lot. We have to ban such accounts. We've had to ask you about this multiple times already. If you wouldn't mind reviewing https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html and taking the intended spirit of the site more to heart, we'd be grateful.
- Arnavion 3y ago>It has been a boring experience. The system is simply reliable, and the upgrades go over without issue every other quarter, >Or more frequently on edge, which I run on my workstation and laptops https://news.ycombinator.com/item?id=36407275 https://news.ycombinator.com/item?id=36407275 (tl;dr Alpine Edge is stable in some situations and unstable in others. User discretion is advised.)
- gary_0 3y agoThere are few better ways to get me interested in something than to tell me it's boring and basic and just works.
- plorkyeran 3y agoUnfortunately "boring and basic and just works" is not a very accurate description of Alpine Linux. If you never want to use anything which doesn't support musl then it's a very pleasant and reliable distro, but not using glibc does make it relatively exotic for a linux distro and there is quite a bit of software that will have problems.
- mduggles 3y agoAlpine’s use of musl means only the truly insane would be leaping to its defense. The inability to support DNS over TCP was a problem for years. Outside of that, so many things presuppose glibc. It’s an endless source of weird. It doesn’t make the news cause it’s a hobby os that was made important when we decided the size of the container mattered most.
- COGlory 3y agoNAND is like pennies/GB. I seriously don't understand the musl thing. It has caused me endless headaches and drives me up a wall.
- outime 3y agoThere are other things to consider, specially data transfer and build times (apk is much faster than apt in my experience). If these and other benefits are worth the trouble of musl is up to each individual.
- nerdbaggy 3y agoAlpine and musl were originally crated for embedded devices, hence the small size. It is interesting how it has become so popular in docker. https://musl.libc.org/about.html https://musl.libc.org/about.html
- re-thc 3y agoBefore other OS offered slim and smaller variants and optimized for size, Alpine was the best bet. At some point the difference was huge and that meant huge savings and a increase in productivity.
- GuB-42 3y agoAs a non-user, I think such variety is a good thing. Not using the same thing everyone uses forces developers to care about standards rather than to assume compatibility just because it is how the favorite implementation works. Same reason why it is a good thing that a popular browser that is not Chromium-based exists.
- slotrans 3y agoThe first time I hit bugs trying to run a JRE on Alpine because of musl, I threw it away and never looked back. I understand there are musl builds of Java these days but I don't care, the whole thing is just an unnecessary headache.
- Brian_K_White 3y agoNot denying there is a headache, but it's at least 50% arguable to conclude that the source of the headache is glibc rather than musl or any other libc. The path of least resistance is merely the path of least resistance, not necessarily the best, especially in the long term. At one point glibc was the weird incompatible limited headache, and the only reason you can enjoy it today instead of paying $1200 to SCO or someone, is because other people did not take the path of least resistance.
- web3-is-a-scam 3y agoI’ve run into way too many issues with musl to consider it for anything serious. For containers I use debian-slim and it’s great (of course, it’s Debian after all).
- wkat4242 3y agoAre those really issues with musl or with code written towards glibc quirks?
- akvadrako 3y agoThere are plenty of both. One issue is you can't create static binaries with musl and tcc. If I remember correctly its because musl doesn't supply thread local variables.
- Brian_K_White 3y agoYou can't create static binaries with glibc. So...?
- ParetoOptimal 3y agoNixpkgs pkgsCross is the first time cross compiling to musl has been convenient enough for me to try it. In repl IIRC: :build pkgs.hello :build pkgs.pkgsCross.musl.hello
- bravetraveler 3y agoI long for a news article/PSA explaining how name resolution differs with musl compared to glibc This one characteristic has made me a hero, over and over, and I'm honestly tired of it. I'd think twice before using it. What you hope to gain and how else they may be achieved. Registry caches are easy to deploy and don't get enough love. Any sufficiently complex service will find oddities, and you might need some graybeard wizard to sort it out.
- rendaw 3y agoAre there differences beyond what's mentioned here? https://wiki.musl-libc.org/functional-differences-from-glibc.html https://wiki.musl-libc.org/functional-differences-from-glibc... in Name Resolver/DNS?
- bravetraveler 3y agoAye, for example - how /etc/hosts and precedence plays out. With glibc this normally falls to nsswitch. Sadly I can't remember much about musl - I'm too tired and I've been focused elsewhere lately. It's notably different in terms of preferred order between files/DNS, also with 'conflicting' repeats (aka lazy round robin). Beyond that, my point is more about awareness. The developers involved were not aware of what you've provided... or what's not mentioned
- LoganDark 3y agoWe love Alpine because `/` is a tmpfs. Your packages and other modifications are all reinstalled from scratch each boot. This gives such a clean install compared to most other distributions that it's not even funny, it's just sad. We're not particularly interested in NixOS or Guix but we really really want to find a glibc-based distribution that works this way, because Alpine's musl is terrible for desktop use, but the package management is just so amazingly simple and beautiful on a daily driver. -Emily (see HN profile for details)
- ArclightMat 3y agoHave you tried Fedora Silverblue[1] and its cousins? `root` is an immutable image powered by something akin to `git` but for OS files. You can layer RPMs (although you should use flatpak or containers wherever possible) and /etc is mutable but also tied to the deployed image[2]. You can rollback your system to previous images, rebase it to a completely different system (i.e from `silverblue/gnome` to `kinoite/plasma`) or build your own OS image for deployment instead. It is a different desktop paradigm for sure (for one, you won't be using a standard package manager) and you do feel its rough edges sometimes, but it is my favorite Linux experience so far, where the OS doesn't stay on my way unless I want it to be in the way: I turn my PC on, use it as usual, desktop apps are updated on background with GNOME Software/flatpak and if there is a new image available, as soon as I reboot/shutdown, next time it is up, everything has been cleanly applied. Flatpak'd apps also won't spread files across the system, so everything is as self-contained as it can be. [1] https://fedoraproject.org/silverblue/ https://fedoraproject.org/silverblue/ [2] https://ostree.readthedocs.io/en/stable/manual/introduction/ https://ostree.readthedocs.io/en/stable/manual/introduction/
- jcastro 3y agoThis is actually run my computer, with a fedora-silverblue based image but my CLI is running alpine images. So I made a little kit so anyone can do this on any linux so you can try all the cool stuff in there without the downsides of running a less popular configuration on the bare metal. And since it's Alpine it's always a fast download vs. a heavier container. https://github.com/ublue-os/boxkit https://github.com/ublue-os/boxkit
- mr-karan 3y agoHave had so many issues related to DNS Lookup failures with container images on Alpine that I honestly can’t be bothered to deal with it anymore. If such basic stuff isn’t reliable then why should I consider it for production usage? I stick to using Ubuntu minimal container images. They’re 30MB (compressed) in size so it’s never a problem around container bloat.
- sk5t 3y agoAlpine DNS is so insanely weird. I had an immutable task that, after a year of smooth operation, would fail one particular DNS lookup in the JRE in one specific AWS AZ, and did fine in other AZs in the region, or if you seeded whatever host cache it uses with “dig” every so often. I couldn’t detect any difference in the DNS responses across AZs. Those tasks then became Debian based within a couple days.
- justaj 3y agoHas anyone here successfully ran Alpine on a Raspberry Pi Zero 2 W? I'm asking because despite my numerous attempts it amounted to a failure in using the WiFi and I haven't seen anyone doing so successfully yet.
- DanielHB 3y agowait you can actually use alpine in a workstation? I thought it was just for containers *cue to angry linux mob attacking me Although I do have to say that almost all downsides of alpine are not really relevant in the context of containers
- greguu 3y agoAs a long time Alpine user (bare metal, laptop, pi, servers) I can praise the low memory footprint, simple and consistent configuration and up-to-date packages. Alpine runs great on older hardware. Things that bugged me over the years are the lack of armv5 support (understandably an architecture that is dying) and that their native firewall awall is somewhat limited. Despite being a pleasure to use awall with iptables, it is not capable of nftables exclusive features (eg cake) as far as I understand, yet. The lack of obscure packages in Alpines repositories is not really an issue in my scenario. Or compiling against musl. Neither is the mentioned DNS over TCP issue. Using wlroots and sway is a breeze on Alpine and having moved from gentoo > arch > alpine over the years, I am glad Alpine exists. Second choice for me is Void Linux musl and their optional armv5 support via xbps-src. I hope Alpine will stick around and is not only known to be slim in docker containers.
- LinuxBender 3y agoFWIW they fixed the DNS over TCP issue. [1] The only DNS issue I've run into is a lack of IPv4/IPv6 DNS lookup ordering preference like glibc's /etc/gai.conf. Useful in data-centers where 100% of lookups on specific nodes/roles are and always will be IPv4 I too use Alpine on just about everything. I'm happy with it. I do wish it would keep one old kernel around after upgrades but I worked around that. [1] - https://www.theregister.com/2023/05/16/alpine_linux_318/ https://www.theregister.com/2023/05/16/alpine_linux_318/