News for hackers. Stuff that matters.
Re:Debian 11 by Shish2k on Saturday August 14, 2021 @09:33AM (#28180482)
PHP 8.0 is 10 months old, and debian’s upcoming release will be upgrading from 7.3 to 7.4, which will make 7.4 the standard for the next ~3 years (even though it only gets upstream support for 1 more year)…

I am starting to reconsider my personal policy of “use debian-stable as a benchmark for what language runtimes I should build on top of”, now tending towards “use debian stable as the bare-metal OS, and build all my projects inside docker, using each language’s most recent stable release”

Re:Debian 11 by roenxi on Saturday August 14, 2021 @09:46AM (#28180571)
I'll opine, happily, that nothing showcases the gap between the OS people and the Web people as well as someone who considers 10 months to be a significant length of time.

There is a happy day coming for the web developers, sometime this decade hopefully, when skills learned as long as 12 months ago will still be up to date.

Did you notice OpenJDK has been upgraded from v11 to v11? That sort of radical change is why I run Debian. They don't break stuff.

Re:Debian 11 by elipsey on Saturday August 14, 2021 @12:43PM (#28182033)
When I was an intern there was this old dude who had an ancient computer with the same Debian on it for like 7 years. He never got excited about new stuff, and just didn't want to break anything. I thought that was kind of funny and un-hip, back then, but now I'm like that. It's like Dad OS. :)
Re:Debian 11 by jaimie on Saturday August 14, 2021 @07:40PM (#28184893)
I feel fortunate to have learned this lesson right before grad school… I used to run Gentoo with all kinds of optimization flags. The day of a conference deadline, I mucked up my /etc/ pretty bad. Switched to Debian and never looked back - sometimes you just need something that works.
Re:Debian 11 by ekianjo on Saturday August 14, 2021 @11:17PM (#28186001)
For servers, Debian makes a lot of sense. For desktop Linux, I can't imagine living with outdated package, kernels and applications and trying to hack my way around with ppa's or other systems like Flatpaks or Appimages. Rolling distro all the way.
Re:Debian 11 by zepearl on Sunday August 15, 2021 @09:00AM (#28188436)
Same opinion, I would say "it depends".

Personally I like Gentoo on the desktop especially in relation to when I code (e.g. very handy to be able to easily switch SW-versions of some packages while always using the same repository). I use it as well on some servers as root OS (I mean the one that runs mainly just the hypervisor), if they have special needs (e.g. if for some reason I want/have to use a recent version of some SW, e.g. ZFS, Kernel, firewall, QEMU, etc...).

On the other hand for VMs I usually just use Debian or Mint, as maintenance/upgrade effort is a lot lower & quicker. In some cases I still have to use PPAs but they're usually exceptions (e.g. Postgres 13 & kernel 5.10 & Clickhouse for Debian 10).

Re:Debian 11 by Taek on Saturday August 14, 2021 @11:16PM (#28185995)
Same. And I loved Gentoo so much. Made me feel like a car mechanic, upgrading his machine with all the custom parts.

I would go back to running Gentoo if I had the time to mess around, it was a ton of fun and it really did give you a system that was truly yours. But it also needed a lot of love to keep running smoothly. And I don't miss those compile times.

Re:Debian 11 by raegis on Saturday August 14, 2021 @10:09PM (#28185661)
I have the same story. I ran Gentoo on all my machines for 5 years (2002-2007) and after the umpteenth update which broke printing, I switched to Debian stable and never looked back.
Re:Debian 11 by keyb0ardninja on Saturday August 14, 2021 @10:29PM (#28185782)
You should use btrfs with snapshots. You won't be in that situation ever again. Just a suggestion.
Re:Debian 11 by wongarsu on Saturday August 14, 2021 @11:05PM (#28185946)
That's solving the problem by adding complexity. Switching to Debian is solving the problem by taking away complexity. I know which one I'd prefer
Re:Debian 11 by carlhjerpe on Sunday August 15, 2021 @08:59AM (#28188431)
I disagree, using a filesystem with snapshot support is hardly adding complexity (to the problem, sure the kernel code for btrfs might be more complex, but It's mainline since years and won't eat your data). I interpret your comment to suggest unwise practices for data management. Being able to do snapshots and send them off to wherever is important. This fills the void on your system that git fills for your source-code.
Re:Debian 11 by burntsushi on Saturday August 14, 2021 @02:48PM (#28183027)
I'm a Dad and I use Arch. I can't stand non-rolling release Linux distros. They are constantly getting in my way because they don't track upstream.

I have multiple machines running Arch (some over a decade) with no problems. In constrast, doing dist upgrades on Ubuntu has put me into states that I could not figure out how to get out of, and thus had to do a clean install. (Granted, it's been a long time since this has happened, but mostly because I very specifically avoid non-rolling release distros.)

Re:Debian 11 by pengaru on Saturday August 14, 2021 @08:37PM (#28185223)
I've been using debian full-time for decades, but recently ended up switching to a spare Arch laptop I'd installed Arch on long ago just for poking at.

As something to make it easier to install latest-and-greatest junk it's certainly better than rolling your own like an LFS, and feels a bit less annoying than gentoo so far.

But it's nowhere near as comfortable to use as-is as debian, and definitely requires more time-wasting to figure out why things aren't configured correctly after simply installing a package w/`pacman -Su $foo` or some dependency is wrong or missing.

Hell, just the other day I thought to try building something with clang instead of gcc, after not using clang in a while, and this is what (still) happens:

  $ clang
  clang: error while loading shared libraries: libffi.so.6: cannot open shared object file: No such file or directory
  $
This kind of garbage just doesn't happen on debian. At this moment I have the impression that the average Arch install is always at least partially broken in some way.

Furthermore, the tooling in Arch isn't particularly great either.

On my first week using this Arch laptop full-time, I tripped over a `pacman -Sc` bug where it was opening every single file in /var/cache/pacman/pkg via libarchive, even .part files which hadn't been completely downloaded (which means their signatures weren't yet verified) and spitting out liblzma library errors like "no progress is possible" because it's attempting to open an .xz.part file. This is arguably a security risk (in a root process no less) in addition to a stupid bug producing a confusing error message. And I haven't even started going deep into this distro yet, frankly it's already left me with bad enough taste to not be interested in wasting more time on it.

Edit: just wanted to give props for the Arch Wiki, that has been a great resource for ages.

Re:Debian 11 by nitinreddy88 on Saturday August 14, 2021 @10:32PM (#28185792)
^ This is perfect statement why Arch will never replace workstations or server machines. Lot of people feel it's cool to fiddle around with file system/configuration to make it work (and they think thats cool Linux), it's not! You don't want to fiddle around with OS to make things work or just works out of the box. Debian is 100% suited for dev centric/work station centric environment once you configure, you can use it for years without worrying what might break tomorrow.
Re:Debian 11 by burntsushi on Sunday August 15, 2021 @07:26AM (#28187891)
> once you configure, you can use it for years without worrying what might break tomorrow.

That has been exactly the case with me and Arch.

And your comment is not just wrong, but it's condescending too.

> Debian is 100% suited for dev centric/work station centric environment

You're way too overconfident. I use a Debian derivative at $work (because I don't have a choice), and we are constantly having to work around the fact that the software in its repos is ancient.

Re:Debian 11 by carlhjerpe on Sunday August 15, 2021 @04:21PM (#28192174)
Or you can use NixOS where you define your entire system in a config file that'll enable you to have the same system configuration everywhere.

Once Nix flakes lands in stable it'll be interesting to see if NixOS can steal shares from the mainstream distros in any significant manner.

Re:Debian 11 by emptysongglass on Sunday August 22, 2021 @04:22PM (#28269231)
I love NixOS but the way Flakes are written, it's not stealing mindshare from the mainstream distros anytime soon. Flakes could have been a chance to write Nix comprehensibly but it reads like a layer of complication on top an already complicated language model.
Re:Debian 11 by burntsushi on Sunday August 15, 2021 @07:38AM (#28187945)
> At this moment I have the impression that the average Arch install is always at least partially broken in some way.

Mine aren't.

I've never seen that kind of "garbage" either on Arch.

I'm trying to push back against dumb crap about how Dad's don't have time for shenanigans by pointing out that, hey, maybe rolling release doesn't have as many shenanigans as you think. And of course, folks come out of the woodwork with every little anecdote about how something didn't work. No distro is perfect and there are trade offs. The existence of your experience does not negate mine. In particular, here I am, more than a decade later and I never have any major issues. I always get the latest software and I don't have to bother with dist upgrades.

Getting the latest software is super important to me. It is the number 1 frustration I have with non-rolling release. This is a fundamental trade off. My point is that people over exaggerate the downsides typically associated with rolling release: that getting the latest software means more instability. That just isn't my experience.

Re:Debian 11 by cycomanic on Sunday August 15, 2021 @04:58AM (#28187260)
I had been a Debian based distro user for ever (ubuntu, sidux, Debian unstable/testing... ) things were breaking all the time. Sure if you stick to stable things only break once every couple of years when you upgrade to the next version. However stable is really not suitable for desktop work, I'd have to install almost all my usual software through other means, that's not what I use a distro for.

I switched to tumbleweed 2 years back and really liked it, but zypper/rpm is awfully slow and I was missing some packages (although OBS is awesome). So I tried endeavorOS 6 month ago (arch with graphical installer) and I have to say I really like it. Not one break so far.

actually the breakage is often in configuration updates. Libreoffice is particularly bad, often it doesn't start without any message after an upgrade, which is fixed by whiping it ~/.config/libreoffice

Re:Debian 11 by the_pwner224 on Saturday August 14, 2021 @11:12PM (#28185977)
Your clang error can probably be fixed by a pacman -Syu. Usually that sort of error is related to some libraries on your system being old and other programs being new (and compiled against new libraries), so the packages can't load the libraries properly when you execute them on your system. Doing a full update brings the libraries up to date so the programs can load them and run properly.
Re:Debian 11 by pengaru on Sunday August 15, 2021 @12:11AM (#28186198)
Oh I'm aware of this, and I'll get around to doing just that as soon as I'm in the mood to waste more of my life chasing other breakages after pacman turns my entire world upside down just so clang can run again.
Re:Debian 11 by vinceguidry on Sunday August 15, 2021 @12:41AM (#28186317)
If you're not willing to do full system upgrades on the regular, why are you running a rolling-release distro? That's literally the whole point.
Re:Debian 11 by mananaysiempre on Sunday August 15, 2021 @05:23AM (#28187380)
Honestly, running pacman -Syu on an Arch machine that sat untouched for four years was a much better experience than any of the Ubuntu and Debian dist-upgrades I’ve had to suffer through. I did have to go and merge the .pacnews, but that’s it. (Granted, for Ubuntu the last one was something like 9.10 to 10.04, things might have improved since then.) So having an infrequently-updated machine is entirely feasible, as long as you don’t try partial upgrades. (Except that one time when the StrongSwan upstream decided it was a good idea to rename their units in such a way that an old configuration with ended up running the wrong IPsec daemon after an upgrade. That was a frustrating couple of hours.)
Re:Debian 11 by pengaru on Sunday August 15, 2021 @01:07AM (#28186400)
I plan on abandoning this experiment as soon as I have the time and interest.

In my comment above I mentioned this was a spare laptop, my primary laptop which ran debian abruptly failed pressing this thing into regular daily use, so I used the Arch install I originally put on it for an egpu experiment.

Re:Debian 11 by mananaysiempre on Sunday August 15, 2021 @05:05AM (#28187298)
The thing is, it’s not that this problem can be fixed by running pacman -Syu, it is that, in half a dozen years of running Arch on several machines, the only way I could get into this particular failure state was when I ignored every bit of documentation in the name of laziness and did pacman -S thing instead of pacman -Su thing. (Or when I built things from outside the official repos and failed to keep them up to date, but I’m going to guess you’re not running a custom build of Clang, because that is the kind of pain you don’t forget.) Theoretically you might have caught a short window of inconsistent state on a package mirror, but again, from my experience, it’s always just a partial upgrade I did with my own hands. (Compared to apt, pacman is awesome, but its willingness to let you do stupid things could use some adjustment.)

On to more constructive advice—if your latest update was in the last couple of weeks, just

  pacman -Su
may work to pull your machine forward to a consistent state corresponding to the most recent installed package. If not, you can use the <https://wiki.archlinux.org/title/Arch_Linux_Archive>: get the last update date by an incantation such as

  pacman -Qi | sed -n 's/Install Date *: //p' | xargs -d '\n' -n 1 date -I -d | sort -nu | tail -1
(which I just cooked up, so there are surely better ones, or just look at the tail of /var/log/pacman.log), temporarily replace your /etc/pacman.d/mirrorlist with

  Server=https://archive.archlinux.org/repos/YYYY/MM/DD/$repo/os/$arch
and run

  pacman -Syu # sic!
Either way, you may see a little bit of breakage (though, in my experience, it’s unlikely), but nothing you wouldn’t have had to deal with when you properly installed your current set of packages in the first place.
Re:Debian 11 by zozbot234 on Saturday August 14, 2021 @03:29PM (#28183325)
Ubuntu upgrades are extremely messy compared to Debian. If you want a rolling-like experience, the testing channel of Debian is pretty good for that - though it does get frozen when approaching a stable release.
Re:Debian 11 by burntsushi on Saturday August 14, 2021 @04:21PM (#28183662)
The dist upgrade is more of an example meant to dispel the myth that non-rolling release distros break less frequently than rolling release. Or at least, an anecdote anyway.

Jumping down from the meta level of rolling vs non-rolling, I personally find Archlinux style of packaging much much simpler than Debian's. I've writte numerous PKGBUILD files over the years and it's been dead simple. But my eyes gloss over whenever I look at Debian packages.

I'm sure the complexity in Debian is warranted for one reason or another. But it ain't for me.

Re:Debian 11 by e12e on Sunday August 15, 2021 @01:51AM (#28186524)
Note that, Ubuntu had some rough times, and did some odd things (I distinctly remember changing gid of system groups, for example) - but it has gotten a lot better. I don't think I can remember Debian ever having any serious issues on dist upgrade. Well, there was a bit of hairpulling with the change from lilo to grub - but I think that was because I tried it early, before grub became the new standard..).

But of course, there are no perfect tradeoffs. I'm inclined to believe GNU guix (or nixos) might be the next best thing(tm) - but I've yet to put that to the test..

Re:Debian 11 by MonaroVXR on Saturday August 14, 2021 @10:28PM (#28185773)
But what about Pop!_OS?
Re:Debian 11 by jorvi on Saturday August 14, 2021 @09:47PM (#28185553)
> I have multiple machines running Arch (some over a decade) with no problems.

This sounds extremely unlikely. Rolling vs versioned release both have breakage, but with rolling its in constant tiny ways so it's less memorable. It's also a point Arch evangelists consistently fail to bring up.

Re:Debian 11 by burntsushi on Sunday August 15, 2021 @07:32AM (#28187916)
I'm not evangelizing Arch. I'm pushing back on the bullshit that "dads don't have time for rolling release shenanigans."

Either you're calling me a liar or you're saying my memory is bad. Great talk. Thanks.

Re:Debian 11 by petre on Saturday August 14, 2021 @10:57PM (#28185908)
OpenSuSE Tumbleweed is also rolling release and stuff works out if the box. It is rpm based, but it's the most tolerable rpm distribution imho.
Re:Debian 11 by Liskni_si on Sunday August 15, 2021 @04:13AM (#28187038)
I have a non-ancient computer with the same Debian (testing with a bit of unstable mixed in) on it for over 16 years now. I still get excited about new stuff, I just don't want that new stuff to break anything. :-)
Re:Debian 11 by mwcampbell on Saturday August 14, 2021 @12:44PM (#28182045)
I think the web people have the right idea. If it hurts, do it more often [1], right?

I've used Debian for a long time (edit: on servers), but the short (and in some cases getting shorter) release cycles of popular projects like Chromium and Rust have got me wondering if Debian just moves too slow. I'm tempted to try using Fedora as a container base image and see if it's practical to keep up. Edit: I guess Fedora is no worse than Alpine if you actually update to each new major release quickly, since they both release every 6 months.

[1]: https://www.martinfowler.com/bliki/FrequencyReducesDifficult...

Re:Debian 11 by murgindrag on Saturday August 14, 2021 @05:55PM (#28184250)
No, the web people have it wrong. It's called:

- Failure to do upfront design (yay, misinterpreted agile/MVP/etc)

- Reinventing wheels over, and over, and over

Newer versions and frameworks tend to be 10% improvement, and 90% unnecessary churn.

Re:Debian 11 by asddubs on Saturday August 14, 2021 @08:05PM (#28185040)
I'd say PHP is still getting a lot of good and important improvements
Re:Debian 11 by murgindrag on Saturday August 14, 2021 @08:45PM (#28185257)
PHP exactly makes my point.

PHP was a no-good, terrible, poorly-made, horrific original design for something like powering Facebook. As a result, it needed a lot of good and important improvements.

Or to be more specific, it was a great design for what it was intended to be: a pet hobby project to make it easier to make Personal Home Pages, and was never intended to be a programming language.

https://en.wikipedia.org/wiki/PHP#Early_history

The concept of putting out something this bad, and then refactoring for over a quarter-century to make it almost-usable, is exactly the definition of the webdev way.

The result is a ton of churn.

Re:Debian 11 by edoceo on Sunday August 15, 2021 @12:16AM (#28186218)
And we've been making the same "mistakes" with JS too!

But if PHP and JS are so shit and full of churn, why are they so popular and widely used? And have been used to build larger, globally successful projects?

Re:Debian 11 by murgindrag on Sunday August 15, 2021 @09:51AM (#28188742)
With JS, the answer is because Netscape adopted it, and it had market share. If you wanted to code which ran in web browsers, you needed to use it. Netscape, the company, no longer exists, so I wouldn't call it all too successful an outcome. From there, momentum.

Early history is in '95, Netscape hired Brendan Eich to embed Lisp in Netscape, while simultaneously pursuing a partnership with Sun to embed Java. Sometime that year, Lisp changed into a new language, which was created and shipped in beta, by September 1995. We're talking a few months.

If we had designed a sane framework upfront -- even 6 more months design time -- the web would likely be a decade or two ahead right now.

Most of the early "improvements" to JavaScript were stop-gaps created under similar cultures, which would need to be replaced again and again. It's not that we didn't know how to make a decent programming language in 1995; it's that we didn't.

Today, I do about half of my coding in JavaScript since it runs in the browser, and therefore on all platforms. It has nothing to do with the painfully bad language design.

Re:Debian 11 by majewsky on Monday August 16, 2021 @07:06AM (#28196793)
> the web would likely be a decade or two ahead right now

Seeing how the trajectory of web development seems to be "pile on more and more complexity, most of it unnecessary", I'm not sure if I'm supposed to be sad or happy about this.

Re:Debian 11 by int_19h on Sunday August 15, 2021 @02:43AM (#28186699)
Because they were in the right place at the right time. JS just happened to be the first web scripting language. And PHP competed against gems such as ASP (pre-.NET) and ColdFusion at the time when server-side web development was exploding.
Re:Debian 11 by piranha on Sunday August 15, 2021 @01:41AM (#28186504)
That’s because our industry is not making choices based on merit, it makes them based on fashion.
Re:Debian 11 by asddubs on Saturday August 14, 2021 @10:19PM (#28185720)
sure, I won't disagree with that, my point was more that the updates are more than 10% useful features usually. You can definitely make a point about how long it took php to get its type system into shape, but php is not exactly just some trendy framework of the week, and there are valid reasons to pick php as your language of choice (namely that it's the lowest barrier language especially for having non technical people do their own installation on some random server/shared hosting)
Re:Debian 11 by murgindrag on Sunday August 15, 2021 @09:56AM (#28188767)
Seen locally, all improvements are useful. PHP is better each year.

Seen globally, it's 10% improvement and 90% churn. One "improvement" is a half-fix, another is another half-fix, and so on, where after 5 improvements you're 97% of the way there.

In the meantime, you've broken backwards-compatibility five times, perhaps not always in the literal sense (old code still runs), but in the practical sense (old code has to be rewritten to follow modern conventions and be compatible with new code).

You've also had five learning curves.

And you have a ton of legacy stuff to support, from each of those five changes, leading to an almost unbounded explosion of complexity.

Re:Debian 11 by tpetry on Sunday August 15, 2021 @07:03AM (#28187783)
PHP and PostgreSQL get a big release every year with good improvements. That you have to wait for the next stable release of debian (or in this case the one after this because they did not upgrade to the newest one) is not a failure of the web people! We are talking about one release every year, not every few weeks! Getting them years later just shows how unrealistic sometimes these stable distros are.
Re:Debian 11 by throw0101a on Sunday August 15, 2021 @07:34AM (#28187923)
> We are talking about one release every year, not every few weeks! Getting them years later just shows how unrealistic sometimes these stable distros are.

* https://deb.sury.org

* https://wiki.postgresql.org/wiki/Apt

There are times when I want slow movement, and times when I want fast movement. Debian allows for both.

Re:Debian 11 by tpetry on Sunday August 15, 2021 @08:41AM (#28188318)
Sure you can use external repositories. But why bundle old packages when everyone then has to use external repositories to not get really old versions?
Re:Debian 11 by throw0101a on Sunday August 15, 2021 @11:39AM (#28189626)
Testing for one:

* QA to make sure all the interdependencies aline correctly

* making sure the upgrade process runs smoothly, and that going from version X to version Y of some package is well-tested

It also depends on the upstream release cycle of the software package. The distro may wish to use the LTS version software (e.g., OpenJDK, OpenZFS, Django, Zabbix) but developers may wish to be more bleeding edge for new functionality.

Re:Debian 11 by miohtama on Saturday August 14, 2021 @05:19PM (#28184027)
Static binaries like Snap, macOS, etc. solve “moving slowly” issue. There should be little need to update the core OS (kernel, initd, /etc stuff) often.
Re:Debian 11 by qwertox on Saturday August 14, 2021 @04:56PM (#28183873)
It is possible that if you build up a routine to always stick to the latest, it will become an automatism. This opens the door to several types of risks.

Containers are always an option.

Re:Debian 11 by koolba on Saturday August 14, 2021 @09:59AM (#28180672)
OpenJDK is still at 11 because that’s the latest LTS version. Subsequent versions have significantly shorter upstream support lifetimes (IIRC, six months). Until another LTS is released, it’ll continue to be 11.
Re:Debian 11 by cogman10 on Saturday August 14, 2021 @01:12PM (#28182265)
There's no such thing as "LTS" for the OpenJDK.

LTS is strictly a JDK/JRE vendor concept. Oracle's distributions have 11 as an LTS and will have 17 as an LTS. That, however, only matters if you are paying oracle for support.

Re:Debian 11 by spockz on Saturday August 14, 2021 @02:54PM (#28183068)
Although technically true your statement misses a fact. Jdk 11 is still an LTS version for oracle which means that they are committed to improving that version with (security) fixes. These fixes will also be(come) available to the main OpenJDK distributions.

Therefore, as a user of any JDK distribution you can depend a bit on the LTS versions, in addition that what your distribution promises.

Re:Debian 11 by cogman10 on Monday August 16, 2021 @12:47PM (#28200115)
> These fixes will also be(come) available to the main OpenJDK distributions.

This isn't true! Oracle is under no obligation to mainline fixes from their JDK into OpenJDK.

That work is somewhat happening via IBM and Redhat, however, oracle is not doing it.

Further, new cuts of the OpenJDK are not happening for those old versions. You MUST get the fixes via a build of the OpenJDK that isn't the Oracle build of the OpenJDK (like adopt OpenJDK).

You can only depend on the "LTS" if the vender of your JDK supports LTS. There's no technically about it.

Re:Debian 11 by spockz on Tuesday August 17, 2021 @05:23PM (#28215034)
Exactly so officially you can indeed only rely on what your distribution promises you. In practice you may, with varying success, assume that if you are using a version that is LTS by one of the big distributions some fixes will land in mainline as well and therefore also in your distribution. Particularly for really critical fixes.

Of course, only officially rely on whatever agreement you have with your distribution/distributor.

Re:Debian 11 by ape4 on Saturday August 14, 2021 @02:53PM (#28183055)
This page https://adoptopenjdk.net/support.html has Java 8, 11 and 17 marked as LTS
Re:Debian 11 by spockz on Saturday August 14, 2021 @02:56PM (#28183077)
Yes, that is LTS by the AdoptOpenJDK project. The GP was speaking of oracle LTS I presume.
Re:Debian 11 by cogman10 on Monday August 16, 2021 @12:50PM (#28200156)
In context, I'm talking about the OpenJDK project which has no concept of LTS.

LTS is strictly a JDK vendor concept. (AdoptOpenJDK is a JDK vendor). How long a version is supported depends entirely on the vendor.

A lot of vendors have adopted the oracle LTS strategy, some offering even longer support. However, it's vendor specific.

Debian is, themselves, a JDK vendor as they are building OpenJDK themselves. So what LTS means for debian is entirely up to what Debian is willing to do to support it.

Re:Debian 11 by smarx007 on Saturday August 14, 2021 @11:02AM (#28181182)
Next LTS will be released on Sep 14, exactly in one month.
Re:Debian 11 by AndyPa32 on Saturday August 14, 2021 @12:46PM (#28182057)
It means nothing that it will be released in a month. Because new software goes into unstable first, then is promoted to testing and only then to stable. So even if the next LTS release would have been released a month ago, it certainly wouldn't have made it into debian stable.
Re:Debian 11 by vbezhenar on Saturday August 14, 2021 @12:36PM (#28181982)
Too bad, now wait for 2023.
Re:Debian 11 by smarx007 on Saturday August 14, 2021 @01:35PM (#28182459)
I think it’s rather Docker, Alpine, JDK 17 and jlink than waiting till 2023 :)
Re:Debian 11 by Shish2k on Saturday August 14, 2021 @10:11AM (#28180782)
Very fair point :) All my other dependencies, using 5 year old versions is fine; it’s mostly just PHP that gets an order of magnitude less-painful to work with in each release, so being stuck a few versions behind is extra frustrating...
Re:Debian 11 by CogitoCogito on Saturday August 14, 2021 @11:38AM (#28181488)
Is it that difficult to build and/or install a newer version that better fits your needs? I tend to stick to debian stable, but in the few cases where I need newer software I just build it myself. Using `apt build-dep [package]` and then something along the lines of `configure && make && make install` basically always works.

edit: I guess if you work somewhere with a policy of requiring you to use system packages, you're a little screwed, but that seems more of an organizational problem than a debian problem.

Re:Debian 11 by Shish2k on Saturday August 14, 2021 @05:08PM (#28183966)
In this case I’m building software whose primary selling point is “trivial to install on practically any cheap-ass $1/mo shared web host, just unzip and FTP the files to your website folder” - which is the whole reason it’s written in PHP in the first place.

(The more I think about it, the more sad I am that it’s 2021 and still no other language has come close to PHP’s low barrier to entry...)

Re:Debian 11 by dreyfan on Saturday August 14, 2021 @11:58AM (#28181664)
PHP 8.x is very easy to install on debian by adding deb.sury.org to apt sources.

https://deb.sury.org/

Re:Debian 11 by curryst on Saturday August 14, 2021 @11:30PM (#28186044)
Yes. Just as an example, I use VSCode. VSCode no longer works on CentOS 7. It needs a newer glibc, so I'm going to have to recompile a lot of stuff and do some PATH fiddling to get it to work.

It's usually not that it's hard to do that for your packages. It's when their dependencies go out of date and I'm looking at having to build a Frankenstein system where I'm running one up to date system on top of a really out of date one, and trying to make the two co-exist in a single OS.

It's not insurmountable, but it's enough effort that dealing with occasional Arch breakage becomes easier. Or even something in between like Ubuntu.

Re:Debian 11 by CogitoCogito on Sunday August 15, 2021 @02:32AM (#28186660)
Well I was referring specifically to debian and to PHP. Does VSCode really not compile on debian 10 or 11? I find that a little surprising. But yeah I agree that installing newer dependencies like glibc for VSCode would certainly be a hassle. I can't really speak much to that though since I've never used it.
Re:Debian 11 by int_19h on Sunday August 15, 2021 @02:44AM (#28186707)
VSCode is probably not the best example, because it has official packages for Debian (among many other things):

https://code.visualstudio.com/docs/setup/linux

Re:Debian 11 by slim on Saturday August 14, 2021 @10:17AM (#28180833)
That's because php decided it needs 6 month release cycles now. You're better off targeting php 7.4 for the next 3 years imho
Re:Debian 11 by jorams on Saturday August 14, 2021 @10:39AM (#28181009)
PHP releases once a year. They've been doing that for almost a decade now.
Re:Debian 11 by seoaeu on Saturday August 14, 2021 @11:59AM (#28181674)
In other settings I can add a new feature to one of my dependencies and start using it within days or weeks. You're telling me you prefer having to wait years to get any newly implemented feature?
Re:Debian 11 by yjftsjthsd-h on Saturday August 14, 2021 @08:05PM (#28185038)
Unironically yes. I would love to be done with the endless version churn and would trade many, though not all, features to get it.
Re:Debian 11 by tomc1985 on Saturday August 14, 2021 @01:35PM (#28182458)
So add a couple of vendor repos and jump the versions queue like everyone else. I do this for all my main dependencies... postgres, ruby, etc
Re:Debian 11 by robertlagrant on Saturday August 14, 2021 @05:47PM (#28184191)
Can you give an example?
Re:Debian 11 by seoaeu on Saturday August 14, 2021 @06:05PM (#28184319)
Sure. In the Rust ecosystem, if you submit a pull request to a library it is very common for the maintainer to release a new version soon after. Even patches to the Rust compiler repository are released to stable in a matter of a few months (and the very next day for the nightly channel that many people use)

There's always workarounds and so forth, but it is really empowering to be able to have an impact over such a short timespan

Re:Debian 11 by notyourday on Saturday August 14, 2021 @12:15PM (#28181796)
OS should not ship your language run time. OS is a giant cargo ship. It does not turn on a dime and it is not piloted by a "lets rewrite it in rust!" crew.
Re:Debian 11 by nextaccountic on Saturday August 14, 2021 @09:56PM (#28185596)
But it doesn't make much sense to run an outdated PHP. I agree with the point of the top level comment, that is to put your dependencies inside docker and completely uncouple from OS dependencies.
Re:Debian 11 by 5e92cb50239222b on Saturday August 14, 2021 @10:03AM (#28180721)
You don't seem to know anything about the "web people" you're criticizing here. PHP skills learned two decades ago are still very relevant today. It's the Java of the web world.
Re:Debian 11 by formerly_proven on Saturday August 14, 2021 @10:57AM (#28181149)
I've initially learned PHP4 when PHP3 was still used. Later I learned PHP 5 which iirc was the first version which had classes. I also learned Drupal 6 and then 7.

Modern PHP code looks nothing like PHP code back then. Of course, the core syntax is mostly the same, but if you look at a framework like D6 or D7 no one would do anything even remotely like this today. PHP security has completely changed since then as well.

Re:Debian 11 by roenxi on Saturday August 14, 2021 @10:21AM (#28180860)
What criticism?
Re:Debian 11 by JasonFruit on Saturday August 14, 2021 @11:01AM (#28181172)
That's an excellent point: you described a difference, which is in fact real. Any perceived criticism is just that: a perception.
Re:Debian 11 by PaulDavisThe1st on Saturday August 14, 2021 @03:18PM (#28183230)
I thought that Java was the Java of the web world.
Re:Debian 11 by stormbrew on Saturday August 14, 2021 @04:09PM (#28183589)
Java is the Java of the Java world.
Re:Debian 11 by lexapro on Saturday August 14, 2021 @01:14PM (#28182283)
I don't understand the downvotes at all. Yes, PHP 8 is different from, let's say PHP 5, but that doesn't mean knowing PHP 5 doesn't help with writing good PHP 8. Same with Python 2 vs 3.
Re:Debian 11 by bonzini on Saturday August 14, 2021 @10:23AM (#28180883)
Hmm no, not at all. My first job in 2002-2004 was using PHP4. I barely used classes (and if I did they were just my code, not from the library because I didn't need anything from PEAR) and used the original MySQL client API. Almost nothing of what I used back then would be useful today. PHP4 vs PHP8 is almost more different than Python 2 to Python 3.
Re:Debian 11 by itwy on Saturday August 14, 2021 @10:44AM (#28181045)
Nonsense. +95% of Python 2 knowledge is transferable to Python 3. Same for PHP 4 to PHP 8.
Re:Debian 11 by ptero on Saturday August 14, 2021 @11:16AM (#28181291)
I agree with your point, but your first word may get you many a downvote; I would remove the "nonsense" word to increase the penetration :).
Re:Debian 11 by AbraKdabra on Saturday August 14, 2021 @07:56PM (#28184985)
There is a fine line where you need to see which weighs more, using a stable version or using an up-to-date security version, I fully support the latter. PHP 7.4 security support will end in November 2022, will Debian upgrade to 8.0 once this happens?
Re:Debian 11 by asddubs on Saturday August 14, 2021 @08:04PM (#28185030)
no, they'll start backporting security fixes. There's still php 5 versions in the wild
Re:Debian 11 by eyelidlessness on Saturday August 14, 2021 @12:57PM (#28182153)
I read GP as considering ~4 years total and 2 years out of support a long time.
Re:Debian 11 by TavsiE9s on Saturday August 14, 2021 @04:43PM (#28183792)
> They don't break stuff.

Unless they do due to their stance on licenses and remove mp3 support from the lame package.

Re:Debian 11 by martinp on Saturday August 14, 2021 @12:55PM (#28182137)
OpenJDK 17 is in Debian 11 as well [0]. A decision was made to include it before its official release since the release is so close (September). An updated package will be available when it's released.

From the release notes [1]:

Debian bullseye comes with an early access version of OpenJDK 17 (the next expected OpenJDK LTS version after OpenJDK 11), to avoid the rather tedious bootstrap process. The plan is for OpenJDK 17 to receive an update in bullseye to the final upstream release announced for October 2021, followed by security updates on a best effort basis, but users should not expect to see updates for every quarterly upstream security update.

[0] https://packages.debian.org/source/testing/openjdk-17

[1] https://www.debian.org/releases/bullseye/amd64/release-notes...

Re:Debian 11 by dmd on Saturday August 14, 2021 @11:13AM (#28181266)
Meanwhile, over here in healthcare, I'm currently carefully evaluating whether to update some software packages from their 2011-release version to their 2015-release version (which are 99.9% compatible but add one or two new features).

And many of our critical systems (mostly MRIs) are on RHEL 5. (Not connected to any network, don't worry!)

Re:Debian 11 by midev on Saturday August 14, 2021 @03:28PM (#28183315)
> Meanwhile, over here in healthcare, I'm currently carefully evaluating whether to update some software packages from their 2011-release version to their 2015-release version

This could partially explain why healthcare IT is some of the worst in the world. Can't imagine the number of vulnerabilities you have from using such outdated tech.

From EHR systems, to basic appointment scheduling, to billing and insurance, everything is so poorly built and tedious for the users. Not to mention, healthcare is always falling victim to ransomware, shutting down entire hospital systems.

I know you'll say you need to move slow, lives are at risk, etc. But what healthcare IT is doing now certainly doesn't work. So maybe push on the gas a little bit.

Re:Debian 11 by stan_rogers on Sunday August 15, 2021 @12:05AM (#28186185)
Bullshit. When your "minor issue" becomes something that kills people, you test the living bejesus out of it before you think of deploying. When even the slightest change in UI becomes a deadly operator error, you make damned good and sure that those errors won't happen. There are more things that there is no "undo" (or antidote) for than you can imagine. Having things not isolated is the only real problem.
Re:Debian 11 by midev on Sunday August 15, 2021 @03:14AM (#28186827)
> Bullshit. When your "minor issue" becomes something that kills people, you test the living bejesus out of it before you think of deploying.

At no point did I say not to test before rollouts.

> When even the slightest change in UI becomes a deadly operator error

Stop being dramatic, because it's part of the problem. Yes, UI's are critical, and these UI's are absolute garbage. You need to improve rapidly, not agonize over bullshit changes in Microsoft Office.

https://www.thedoctors.com/articles/electronic-health-record...

https://ehrintelligence.com/news/diagnostic-medication-error...

EHR's are killing people because they are so poorly built. To reiterate, what you're doing is not working.

> you make damned good and sure that those errors won't happen

You're not making sure those errors are not happening, is the point.

Re:Debian 11 by goodpoint on Saturday August 14, 2021 @02:15PM (#28182794)
as user5994461 wrote that's a bit too extreme in the opposite direction.

However, most people don't realize that the majority of the software deployed in the world is meant to run for years without getting feature updates.

Most production code is running on servers, vehicles, industrial systems, infrastructure, military stuff and so on. Planes and power plants can have an expected lifetime of 40 years.

Case in point: the civil infrastructure project https://www.cip-project.org/ plans to maintain a Debian-derived kernel and basic OS and backport security updates for 25 years.

Re:Debian 11 by user5994461 on Saturday August 14, 2021 @12:16PM (#28181809)
That's a bit too extreme in the opposite direction. :D

For those wondering what features are missing from RHEL 5, look further than SSL.

Re:Debian 11 by dmd on Saturday August 14, 2021 @01:06PM (#28182226)
Fortunately nobody has ever needed to access the internet from these machines.

People on HN forget that a huge amount of computing has nothing whatsoever to do with the web.

Re:Debian 11 by user5994461 on Saturday August 14, 2021 @02:11PM (#28182767)
Expect all healthcare machines to be networked, even if only internally. Need the active directory to login and need to upload the image/test sample somewhere else after it's taken. That's sadly one reason why ransomware can propagate so easily and stop hospitals. :(

In theory there can be computers with no network, typically an isolated computer attached to heavy test machinery, but it's becoming impossibly rare in all industries.

And they should be easy to recognize, look for the post-it nearby with the shared username/password to unlock it, also notice the doctors leaving with the x-ray printed on paper or a USB key to be able to transfer it elsewhere.

Re:Debian 11 by wallaBBB on Saturday August 14, 2021 @03:43PM (#28183439)
This if done is usually against the manufacturer's directives (if even possible to put online). The equipment that has networking capabilities is designed for internal networks, physically isolated, and it's a big emphasis on this coming from the OEMs.

Changing/maintaining SW in medical devices is not easy (FDA, CE...) and as many mentioned, not everything is designed to move like the web...

Re:Debian 11 by inglor_cz on Saturday August 14, 2021 @01:24PM (#28182369)
In 2002, I underwent a LASIK operation on a machine that ran Windows for Workgroups. I believe the same machine was in use until 2012 or so.
Re:Debian 11 by umvi on Saturday August 14, 2021 @01:00PM (#28182185)
Getting your doctors off internet explorer would be a good start
Re:Debian 11 by dmd on Saturday August 14, 2021 @01:10PM (#28182249)
But IE7 hasn’t been sufficiently tested for enterprise yet! j/k don’t worry they’re all on Edge.
Re:Debian 11 by matheusmoreira on Saturday August 14, 2021 @09:18PM (#28185407)
MRI machines run Linux? That's really cool. Linux literally saves lives. I'll never forget that.
Re:Debian 11 by SkyMarshal on Saturday August 14, 2021 @12:03PM (#28181696)
Or just use the Debian Alternatives system to install PHP 8.0 and make it the system default:

https://wiki.debian.org/DebianAlternatives

Once setup, one command can toggle between your version and the Debian repo version as the system default.

DA is great, I used it for years on Ubuntu to override Debian's older default versions, or to install anything I wanted to build from source.

I eventually migrated over to NixOS because, in a way, NixOS takes the concept of Debian Alternatives and applies it to the entire OS.

Re:Debian 11 by robertlagrant on Saturday August 14, 2021 @05:49PM (#28184206)
This is why I like nvm/pyenv. Available versions should be managed via a tool, not by the system.
Re:Debian 11 by iso8859-1 on Saturday August 14, 2021 @10:29PM (#28185777)
This is why I like Nix. The tool should be the system.
Re:Debian 11 by SkyMarshal on Sunday August 15, 2021 @11:51AM (#28189729)
Sure, if your tool is aware of its own versions and can do that, that should be the preference over most systems, Nix/NixOS/GUIX excepted. But it's nice for traditional systems like Debian to be able to do it too, for tools that can't.
Re:Debian 11 by 5e92cb50239222b on Saturday August 14, 2021 @09:49AM (#28180594)
Unlike previous PHP releases, 8.0 broke backwards compatibility pretty hard. Some old PHP projects that I have to support are completely unusable on 8.0. This gives me a few more years to port them, so I am all for it.
Re:Debian 11 by miohtama on Saturday August 14, 2021 @05:21PM (#28184037)
The same happened with Python 3 and it took a decade to catch up. To be fairness, it was mostly about Unicode support and applications doing stupid stuff with strings.
Re:Debian 11 by regularfry on Saturday August 14, 2021 @12:18PM (#28181829)
That is the correct approach. Docker optional, but language interpreters included with the OS are for the OS. The distribution is there to provide a mutually compatible set of working applications for end users so they don't have to care about matching package versions by hand.

Unless what you're doing is writing an application to be packaged with Debian, the version shouldn't matter to you: /usr/local is there, use it.

(note: none of this is "official" in any way, just what I've learned over 15 years or so of deploying on Debian-derived distros)

Re:Debian 11 by ncphil on Saturday August 14, 2021 @01:11PM (#28182260)
IMHO, that is the correct approach no matter the distro. The OS is a platform, the software included with it should be what works best to support that platform during a given release cycle. Anything beyond that can be addressed by containers, or third-party package repositories (including your own personal repo). It may be a biased perspective from the server side, but give it credit for being based on long, hard experience with frightening permutations (as in ugly, prone to misbehaving, many-headed beasts supporting critical services).
Re:Debian 11 by samueloph on Saturday August 14, 2021 @09:37AM (#28180509)
Seems like you should take a look at https://deb.sury.org/

PHP 8.0's release wasn't long ago enough to fit into the stable release, bullseye was too close to the initial freeze period when that happened.

Re:Debian 11 by stephenr on Saturday August 14, 2021 @11:12PM (#28185980)
This is the correct answer.

For those unaware, these packages are built using the same packaging repo as the Debian “offical” packages, by a member of the “official” Debian php team.

I can’t speak highly enough of Ondřej’s work on this.

Re:Debian 11 by zozbot234 on Saturday August 14, 2021 @09:48AM (#28180590)
PHP 8.0 was not shipped in bullseye specifically because it could not be supported by Debian. A semi-official backport will most likely be available shortly after bullseye is released and testing/sid are reopened for new updates.
Re:Debian 11 by amyjess on Saturday August 14, 2021 @02:36PM (#28182940)
Honestly, I'd rather just use RHEL 8 (or a clone like Rocky or Alma) with EPEL. You have all the stability advantages, plus an additional repository with bleeding-edge software that's not in the official distro.

(I worked at a RHEL shop for five years, and from my experience there I'd honestly rather not go back to having to deal with Debian-based distros ever again)

Re:Debian 11 by stephenr on Saturday August 14, 2021 @11:13PM (#28185986)
That sounds no different than using Debian stable + additional repos for whatever you need.
Re:Debian 11 by GekkePrutser on Saturday August 14, 2021 @10:40AM (#28181014)
I'm kinda surprised they didn't run out of toy story characters yet. After all Ubuntu already ran out of letters
Re:Debian 11 by georgyo on Saturday August 14, 2021 @11:01AM (#28181178)
Ubuntu releases twice a year. It only takes 13 years to outrun the English alphabet.

Meanwhile, Debian from 1.0 released in 1996, 25 years, had only 11 releases. 16 if you count unique codenames.

Re:Debian 11 by sjukfan on Saturday August 14, 2021 @07:30PM (#28184842)
Little known fact, Pixar makes new Toy story movies just so Debian can name their versions.
Re:Debian 11 by JPLeRouzic on Saturday August 14, 2021 @10:12AM (#28180787)
> PHP 8.0 was not shipped in bullseye specifically because it could not be supported by Debian.

Please what do you mean by this sentence? What is the problem?

(I use PHP 7.3 for my personal web site under Debian 10)

Re:Debian 11 by progval on Saturday August 14, 2021 @12:02PM (#28181693)
There is a discussion on the topic here: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=976811

> The timing of this request makes me uneasy: php8.0 has been in Debian for less than a week, and we are a month away from the transition freeze.

> My point of view after actually working on those issues is that there is a significant number of packages that are not working just fine with PHP 8.0, and require a fair amount of work before that. Some of them being security sensitive, so just working around visible issues may not be of the best interest of anyone…

And by the time the maintainers decided to go with 8.0, they missed the deadline:

> The transition freeze has started, so we'll not transition to php8.0 in bullseye.

Re:Debian 11 by e2le on Saturday August 14, 2021 @03:22PM (#28183255)
Given the inclusion of the Guix and Nix package managers into Debian stable, installing newer versions of software is an option if you need it. Perhaps even a better alternative to installing and using Docker.

https://packages.debian.org/bullseye/guix

Re:Debian 11 by nickjj on Saturday August 14, 2021 @11:35AM (#28181454)
> ... build all my projects inside docker, using each language’s most recent stable release

This has been my personal policy for the last 6 years, it works well in practice.

You get the best of both worlds. A rock solid system with the flexibility to use whatever programming runtime versions you want.

Re:Debian 11 by KronisLV on Saturday August 14, 2021 @03:59PM (#28183528)
Agreed.

This also has the opposite effect - if there is any old or outdated component or piece of software that you still need to be running for unfortunate reasons, there's always the possibility of putting it in a container with all of the packages and other environment configuration that it requires.

That way you don't have to risk compromising the entire system and don't even have to run VMs with old OS releases, while at the same time only need to expose the ports that the software uses, if even those at all. In my eyes, access to devices and such could still use a few improvements in Docker and other competing container runtimes, but for the most part, the technology is a lifesaver!

While i do think that it's nice if the same packages are also available outside of containers, for the OS of your choice, which i'm sure will also be the case for latest versions of PHP and other software, even if done by a third party shortly after Debian's new release, that's sadly not always the case. In those situations, containers indeed seem like a good choice.

Re:Debian 11 by user5994461 on Saturday August 14, 2021 @12:23PM (#28181864)
I don't think that works anymore with the speed that languages are moving and breaking these days.

If you tried to use Python 3.9.0 for example (released November 2020), it had changes in the C bindings and broke many libraries (like numpy), which was not noticed until after the stable release.

That took months to fix and I'm not even sure if all packages have been fixed as of today (9 months later).

Re:Debian 11 by nickjj on Saturday August 14, 2021 @03:52PM (#28183495)
> I don't think that works anymore with the speed that languages are moving and breaking these days.

The beauty of this approach is you don't have to use the latest version if you don't want to, but the option is there if your app is compatible. You can still use Python 3.7.x or whatever you want. Docker has official Python images going way back.

Re:Debian 11 by mistrial9 on Saturday August 14, 2021 @03:29PM (#28183326)
side note - this is huge news to me that Python 3.9 broke numpy ! very interesting to hear this
Re:Debian 11 by Jenda_ on Saturday August 14, 2021 @10:04PM (#28185636)
From a sysadmin perspective, I'm afraid this would lead to containers lying around with random unsupported versions of various software -- you need to rebuild the container after every bug found, and upgrade the runtime (if it isn't LTS from the upstream) periodically, right? (however, I quit sysadmin job some time ago, so I'm not sure what the current trend is)
Re:Debian 11 by pavon on Saturday August 14, 2021 @12:37PM (#28181985)
The only time it took 3 years between Debian stable releases was between Woody and Sarge, which happened over 15 years ago. All releases since have been on a 2 year cadence.
Re:Debian 11 by arendtio on Saturday August 14, 2021 @04:17PM (#28183644)
AFAIK, Debians conservatism was the reason why Ubuntu got so popular. So complaining that Debians packages are too old is somewhat of an old story itself ;-)
Re:Debian 11 by rixed on Saturday August 14, 2021 @11:37PM (#28186069)
More importantly the inclusion of non free drivers. And marketing.
Re:Debian 11 by int_19h on Sunday August 15, 2021 @02:50AM (#28186729)
Debian has the "non-free" repo specifically for stuff like this. E.g. the NVidia non-free GPU drivers have been available there for well over 15 years now.
Re:Debian 11 by geofft on Saturday August 14, 2021 @10:50AM (#28181091)
I'm an occasional Debian contributor and to be honest I think that's the right policy these days. It is effectively what we do at my employer.

At my last employer, we ran Debian stable, and we told people to use versions of software (notably Python and Python packages) from the OS. One of my teammates was a Debian Developer, meaning he has full access to upload packages, and the two of us would package things up for the OS as we needed and get fixes into Debian as appropriate. In many cases we needed newer versions of packages than were appropriate for a stable release and (for whatever reason) weren't appropriate for backports either, so we ended up with a noticeable delta - it wasn't obviously less work than just building things ourselves independent of Debian. But because they were systemwide and you needed someone on the systems team to install those packages, what ended up happening is that my team found ourselves artificially in the middle of artificial development conflicts between other groups in the company, where one wanted a really old version and one wanted a really new version of the same package.

At my current employer, we also run Debian stable, but our VCS repository ("monorepo," as people seem to call it these days) includes both internal and third-party code. Our third-party directory includes GCC, Python, a JDK, etc. (sometimes compiled from source, sometimes just pre-built binaries from the upstream). A particular revision / commit hash of our repo describes not just a particular version of our code, but a particular version of GCC and Python and Python libraries and so forth. Our deployment tool, in turn, bundles up all your runtime dependencies (like the Python interpreter) when you make a release. In effect, it's exactly the software release cycle properties you get from something like Docker.

The practical effect is that upgrades are so much easier because they're decoupled. Upgrading the OS is hard enough - you have some script that's calling curl, and /usr/bin/curl is using the OS's version of OpenSSL, which has deprecated all the ciphers that some internal service that nobody wants to touch uses. Or whatever. Testing this is particularly hard if it affects your bare-metal OS, because you have a fairly slow process of upgrading/reimaging a specific machine, and then you run all your code on the new OS, and you see if it works. If this change also includes upgrading your GCC and Python and JDK versions, it becomes extremely cumbersome. If you can deploy your language runtime, library, etc. upgrades separately (via Docker, via LXC, via something like our monorepo, whatever), then you've decouple all of your potentially-breaking changes, and you can also revert changes for a single application. If the latest GCC mis-compiles some piece of software, it's a lot nicer, operationally, to say that this one application gets deployed to prod from an old branch until you figure it out than to prevent anyone from upgrading. And if a particular team insists on staying on an old version of some library, they don't hold up the rest of the company.

And in turn that's why Debian has such a long freeze cycle and doesn't release the latest version of things. There's a whole lot of PHP software in Debian. All of it has to work with the exact same version of PHP (or you have to go to lengths to find every place that calls /usr/bin/php and stick a version number on it). If something is incompatible with PHP 8, the whole OS gets held back. That's exactly the policy you want for things that are unavoidably system-wide (init, bash, libc, PAM, etc. etc.), but you don't need that policy for application development.

Re:Debian 11 by heurisko on Saturday August 14, 2021 @04:43PM (#28183785)
On the other hand, I can think of many businesses who would be happy with such a conservative baseline.
Re:Debian 11 by rubyist5eva on Saturday August 14, 2021 @12:33PM (#28181948)
Personally, I moved to CentOS from Debian (and then to AlmaLinux OS) because of DNF modules. You get multiple versions of different language runtimes and you can pick the ones you want to use - so I stick to the LTS versions. You aren't necessarily stuck to just one packaged version of a language runtime now - and 10 years of support is lovely.
Re:Debian 11 by zozbot234 on Saturday August 14, 2021 @01:44PM (#28182560)
Debian has the alternatives mechanism for that kind of thing. It works quite well.
Re:Debian 11 by jaboutboul on Sunday August 15, 2021 @04:42PM (#28192344)
Thanks for supporting AlmaLinux!
Re:Debian 11 by rubyist5eva on Sunday August 15, 2021 @08:33PM (#28193821)
no problem, it's a worthy successor to CentOS
Re:Debian 11 by dannyobrien on Saturday August 14, 2021 @04:17PM (#28183642)
I'm similar, except that I use Debian as the underlying system, and install with Guix. I imagine it's the same with Nix folks.

I'm still unsure whether Docker injects that much more complexity and runtime burdens, but it sure feels a little more messy after installing a few tools.

Re:Debian 11 by je42 on Saturday August 14, 2021 @03:17PM (#28183225)
On the other end of the spectrum you have a distribution like Arch which gives you most recent releases, but then you also have to deal with breaking packages / package dependencies much more often.

But i guess this comes down to "there is no free lunch".

Re:Debian 11 by kelp on Saturday August 14, 2021 @07:58PM (#28184989)
Is that your experience with Arch? I've hardly ever had anything break over many years of using it. I've even committed the sin of waiting many months between upgrades, like on a laptop that sat in a closet. Upgrading usually just works, or there is just a minor issue that can be easily resolved. Usually documented on the arch website.
Re:Debian 11 by uluyol on Saturday August 14, 2021 @08:43PM (#28185252)
It's been some time since I've used it, but Arch was more solid for me than any non-LTS distro. It definitely helps too stay up to date though. I remember the moves to pulseaudio and systemd...not fun.

Of course, you also have the advantages of being up to date and never needing to do a apt-get dist-upgrade.

Re:Debian 11 by flatiron on Saturday August 14, 2021 @12:21PM (#28181857)
I do the same but with Ubuntu. Arch Linux containers are awesome.