9 ms·
Alpine Linux 3.15
- petercooper 5y agoI'm familiar with Alpine in container scenarios, but is there any mileage to using it as a day-to-day desktop distro?
- patrakov 5y agopostmarketOS is based on it. I tried it on my PinePhone, it works, but in the end I went with Arch Linux ARM.
- pionar 5y agoNot really. It's not designed for that. It's designed to be as lightweight as possible. also, instead of Glibc, it uses musl, which although is supposed to be binary-compatible, does have some gotchas, so the larger the system, with more apps and libraries running on it expecting glibc, will have issues.
- qwertox 5y agomusl really becomes a pain if you work a lot with Python. You can't use wheels, which means you will have to compile everything yourself, which sometimes takes ages, and you're not guaranteed that it won't have unnoticeable errors. My biggest issue was with the 3.12 -> 3.13 transition, when musl got upgraded to 1.2 and with it "musl 1.2 uses new time64-compatible system calls". This broke so many things for me without me knowing, like nginx having as the datetime in the logs the unix epoch. All continued to work, but everything related to timestamps was completely messed up, on 32 bit OS due to running on Raspberry Pis. This was the moment where I decided to stick to debian-slim, and only very specific containers will continue running on Alpine. Before that it was my default container OS. Also there is no reliability in packages getting updated, sometimes they just disappear in the next version. But these things are rare occurrences, which only are then nerve wracking when you are confronted with them. For 90% of the cases Alpine is one of the most awesome container OSs.
- scandinavian 5y ago> You can't use wheels musl wheel support was added some time ago: https://github.com/pypa/packaging/releases/tag/21.0 https://github.com/pypa/packaging/releases/tag/21.0 No idea how many packages actually build musl wheels though. From a quick glance at least cryptography and lxml has musl wheels.
- senknvd 5y agoUnfortunately, Alpine patched their version of Python in a way that is incompatible with musllinux wheels so we are back to where we started until Alpine Linux 3.16 in 2022[1]. EDIT: I spoke too soon. Apparently, they have decided to amend the patch in a way that is both backwards-compatible and compatible with musllinux wheels[2]. Hopefully, it will roll out soon. [1]: https://gitlab.alpinelinux.org/alpine/aports/-/issues/13227 https://gitlab.alpinelinux.org/alpine/aports/-/issues/13227 [2]: https://bugs.python.org/msg406939 https://bugs.python.org/msg406939
- rcarmo 5y agoThis still works for me: https://github.com/insightfulsystems/alpine-python/blob/5a3415ba6b7635dbe82050ee6787ac75ba2b2a19/3.8/Dockerfile#L27 https://github.com/insightfulsystems/alpine-python/blob/5a34... But I haven’t tested today’s version yet.
- 5y ago
- lonjil 5y agoIt is designed for desktop use, actually. Many of Alpine's developers use it as their primary PC distro :)
- ObscureScience 5y agoI never read anywhere that it was designed for desktop, but they've always included the packages. Firefox was pretty much the only browser available and was unusable for years because of some math issues with font rendering if I remember correctly. ( I have attempted to daily drive it from time to time). In this regards it's pretty obvious Void Linux is more desktop focused. Alpine is supposed to be a small, stable and secure general purpose base.
- jagger27 5y agoI use it as a bare metal OS on my blog server and it's great in that scenario too. I've personally found the libc stuff makes it really inconvenient to use as a desktop OS, unfortunately. You have to jump through hoops to get something like VSCode to "just work".
- turminal 5y agoSoftware like VS code is in direct conflict with the way alpine does things. Alpine on the desktop is certainly not for everyone, but for some use cases it works great.
- knowledge-clay 5y agoI use it as my primary OS. You have to do more setup work, there’s much less documentation/help online than more popular distros, and running proprietary software (which usually links to glibc) is probably not worth the effort. This is mostly fine for me, as I don’t do much on my computer aside from code and use a web browser — the only difficulty is most streaming video unfortunately requires Widevine. Given those limitations, I’m very happy with it: it’s very simple and I have a much better understanding of what is installed/running and why.
- petercooper 5y agoYeah, coding (in terminal windows only) and Web browser is what I'm thinking of using it for. I might just have to plunge in and give it a go, thanks! :)
- wchar_t 5y agoI use it as a daily driver on my Raspberry Pi. Since the community is small the package repositories are a bit small as well, and I occasionally have to build stuff by hand (painful on the Pi). Add musl to the ARM platform and most binaries in the wild won't run. However, musl and apk means the Alpine is a lot faster than, say, Raspbian or Arch.
- seemaze 5y agoI love Alpine on the Raspberry Pi Zero family. Not only does this create a durable and speedy ramdisk appliance, but experience configuring and minimizing the build size translates to containers as well.
- puzzlingcaptcha 5y agoI use it on a headless thin client serving as a NAS/ printer server / media box etc. Works very well. Keep in mind that Alpine actually predates containers by many years. It originally started as a light-weight distro targeted at embedded stuff. And the roots are still there. https://heap.ovh/alpine-linux-on-fujitsu-futro-s520s720.html https://heap.ovh/alpine-linux-on-fujitsu-futro-s520s720.html
- spystath 5y agoPowers my router, running on an APU2. The run-from-ram-with-overlays configuration makes upgrades relatively painless.
- yjftsjthsd-h 5y agoI use it on my desktop:) It's a nice experience after a slight learning curve; I'm particularly fond of it supporting ZFS well without being Ubuntu. Musl libc is a potential pain point; I get most software from official repos or build from source, but ex. to run Steam I resorted to flatpak (which just shoves glibc in the container with the application).
- xxpor 5y agoFor an average user, I'd guess they'd hit more issues with busybox than musl.
- mikece 5y agoAre there any (lightweight?) desktop distros built atop Alpine as a base?
- spyremeown 5y agoI hate how many incredibly useful and sane options and most of the time missing from busybox binutils... drivers me crazy.
- yjftsjthsd-h 5y agoIf you care, just install the `coreutils` package and it'll overwrite the default symlinks and you'll get GNU coreutils by default.
- xxpor 5y agoOh thanks, that's good to know they're available.
- yjftsjthsd-h 5y agoYep:) If you found that useful, I'd suggest looking over all of https://wiki.alpinelinux.org/wiki/How_to_get_regular_stuff_working https://wiki.alpinelinux.org/wiki/How_to_get_regular_stuff_w...
- El_RIDO 5y agoI can't recommend it for desktop use, but it is possible to use it as such. IMHO it really shines on dedicated, small VMs or for headless SBC use cases. There's only 5 daemons running after the installation (provider in brackets, the installer asks which one for ssh and ntp): - init (OpenRC) - ssh (dropbear or OpenSSH) - ntp (chrony or busybox) - crond (busybox) - syslog (busybox) The diskless mode it offers is ideal for SBC's or other use cases with SD-cards or such. So it's niche seems to be with very lightweight or hardened servers.
- spurgu 5y agoI haven't used it as a desktop, but as a minimal VM for bastion SSH servers.
- lonjil 5y agoAs long as you're OK with the limitations imposed by using musl, I think it's great on the desktop. I recently switched from Void Linux (glibc variant) and it's working very well. I run proprietary applications like Spotify, Steam, and Discord in Flatpak, and most of the rest from Alpine's repos. One thing that surprised me is that KDE's software center gives package update notifications for Alpine packages OOTB, and the GUI Just Works(tm) for installing and upgrading.
- blueflow 5y agoI am using it as desktop, it does not do things i did not ask for, which i really appreciate. I get away with it easily because i only use xterm and Firefox for the graphical part.
- rahen 5y agoI use Alpine as my server OS, with Alpine, Ubuntu and CentOS containers running on it. It works great this way too.
- fmajid 5y agoNot as a desktop but I use it on bare metal as my primary server. The main advantage is the absence of bloat, e.g. components like DBus or systemd that increase the attack surface. The use of musl vs. glibc does make some things more complicated, however.
- lonjil 5y ago> The main advantage is the absence of bloat, e.g. components like DBus ? Like most distros that start you off but nothing but a minimal base, you can choose whether to install DBus or not. Almost everyone using Alpine as a daily driver on their PC probably has DBus installed and enabled.
- clay-dreidels 5y agoI use it as a daily driver. Here is my setup. Feel free to leave feedback for improvements! https://lamda-chops.bearblog.dev/alpine-linux/ https://lamda-chops.bearblog.dev/alpine-linux/
- zbuf 5y agoI'm using it on my laptop (Thinkpad X270) and it's great. I don't think there's much credibility to saying it's not "meant to be used" as a desktop; since the packages available suggest to me there's clearly a bunch of people doing just that. What you can expect is more manual setup (compared to say, OpenBSD, where things work really well out-of-the-box on this hardware). But I took this opportunity to set up an encrypted disk. This is with no "desktop environment", just a window manager and X. I thought BusyBox would be a pain, but the GNU tools can be automatically installed. Same with musl, which was much less of a big deal than I thought. I can even suggest things feel faster with it, but it does mean staying within packages from the Alpine ecosystem. I'd be interested if anyone is doing a glibc fork of Alpine (or a way to run the 'full fat' glibc seamlessly, like it does with the GNU tools). Also worth experimenting with Alpine's glibc emulation; I was amazed how good it was, as it runs almost all of a closed-source music production tool that I use.
- smitty1e 5y agoIs Python totally DIY? Can't find it in the package search.
- lmns 5y agoTry 'python3' or 'python2'.
- El_RIDO 5y agoThe packages are either python3 or python2 for the language, and prefixed py2- or py3- for any of the packaged modules. https://pkgs.alpinelinux.org/ https://pkgs.alpinelinux.org/ does support wildcards so you should find the packages using "python?" or "py?-*".
- nick238 5y agoThere is a pretty good set of maintainers/packagers that compile Python libs for Alpine, but if you stumble across one that doesn't have a binary built, you're going to have to install the whole build toolchain and get all the headers yourself. The pre-compiled manylinux* binary packages on PyPI aren't compatible with Alpine.
- rcarmo 5y agoTry this: https://github.com/insightfulsystems/alpine-python/blob/5a3415ba6b7635dbe82050ee6787ac75ba2b2a19/3.8/Dockerfile#L27 https://github.com/insightfulsystems/alpine-python/blob/5a34...
- smitty1e 5y agoAh, so. Python2 is past the "pining for the fjords" stage, I should think.
- nanis 5y agoapk add python3
- efxhoy 5y agoCool that they switched to `doas` from `sudo`. Another great OpenBSD tool gaining more adoption.
- xxpor 5y agoWhat's the 2 minute summary of why doas is better?
- kingofclams 5y agoSmaller, less features, ideally less vulnerabilities.
- masklinn 5y agoAlthough it is annoyingly and quite critically missing a replacement for `sudo -e` / sudoedit (or was last time I checked).
- dotancohen 5y agoWhat is wrong with `sudo vim /etc/foo`? I feel that it's better than `sudo -e`, but would love to see an example where `sudo -e` is better.
- josepmdc 5y ago`sudo vim` will not load your user's vimrc, sudoedit will
- masklinn 5y agoIt will also run your entire editor as root, which may not be something you want.
- dotancohen 5y ago
- frankjr 5y agoI've just upgraded from 3.14 and everything seems to be running well. I'm always amazed how incredibly fast the package manager is (apk). If you think Arch's pacman is fast, this is still on another level.
- vmoore 5y agoDoes anyone know where there are screenshots of this on the website? I like to see how a desktop looks before I try a new distro. Seems absent on the site
- bluedays 5y agoYou can install any Desktop Environment you want.
- hulitu 5y agoYou can do that in any distro. I think the OP refers to the fact that, usually the distro supplies some default config files for the DE which makes it look distro specific.
- zinekeller 5y ago... except that it's command-line by default, so the DEs has whatever Gnome/KDE decided them to look (rather than adding wallpapers and such).
- yjftsjthsd-h 5y agoAlpine is a bare bones / DIY distro (like Arch); it'll look like whatever DE you install.
- dougbarrett 5y agoFrom what I understand of alpine, it's commonly used for Docker images to provide a lightweight distro for your apps vs using something like ubuntu or debian which may include more than what's required. I don't believe it's intended to be used in a desktop environment, but I could be wrong.
- Seirdy 5y agoThis is false; you can install a variety of DEs from the repos.
- mt42or 5y agoDid they break all things again ? (3.14 breaks lots of things for containers.)