5 ms·
- FLAVOR: Ubuntu Server - HEADLINE: Built-in support for installing up-to-date packages - DESCRIPTION: Currently, `apt install [package]` on LTS Ubuntu will i
by Zarel 10y ago
- FLAVOR: Ubuntu Server
- HEADLINE: Built-in support for installing up-to-date packages
- DESCRIPTION: Currently, `apt install [package]` on LTS Ubuntu will install a package that is up to 24 months out of date (or more if you're not on the latest LTS).
Literally one month ago, using the latest version of Windows 10, I installed Ubuntu for Windows (which installed Ubuntu 14.04 LTS), and `apt-get install nodejs` installed Node 0.10 (from 2013! in 2017!).
I understand users want stability in the core OS, but there's no reason it should be made so difficult to install up-to-date software from elsewhere. `apt` is useless for installing things like `youtube-dl` because old versions of youtube-dl quickly stop being compatible with YouTube.
Ubuntu's current solution to this problem is PPAs, which are very non-ideal because they only work if someone maintains a PPA, but this involves:
1. googling for the software's PPA, 2. finding the PPA, 3. possibly trusting a third-party PPA maintainer, 4. running at least three different commands, which you have to either memorize or re-google
Basically all software's Ubuntu installation instructions are something like "curl this script and pipe to bash" or "build from source" or "install this other package manager, then use the other package manager to install our software", just because it's impossible to install the latest version using Ubuntu's built-in package manager out-of-the-box.
For instance, here's Redis: "Installing it using the package manager of your Linux distribution is somewhat discouraged as usually the available version is not the latest."
I want to be able to do something like `apt install-latest youtube-dl` to get a usable version of youtube-dl, and considering the number of workarounds for this issue I find online, I think a lot of other people have the same want.
- ROLE/AFFILIATION: owner of a top-2000 US website
- fauigerzigerk 10y agoI very much agree. Apart from driver issues this is the area that creates the most friction for me. It feels weird having to fight the OS on something where the right thing to do seems so obvious.
- danudey 10y agoThe entire point of LTS is that things don't change. Security features are back ported, but you're on Node 0.10 because when 14.04 was released it included Node 0.10. You have an old version of youtube-dl because that's what was available at the time. You use an LTS release when you want to do 'apt-get upgrade' and not change anything. No new features, no deprecated features, no changes other than back ported bug and security patches. No moving to a newer version of Apache which uses different modules by default, or a newer version of PHP which changes a critical default variable. It's always the same software, just fixed when it's broken. If you're looking to keep your system up-to-date with the latest and greatest, then there are a few suggested solutions: 1. Install stuff yourself 2. Use a backports PPA or vendor packages 3. Use a more specific package manager (e.g. pip for python, cpan for perl, npm for node, etc) 4. Update your servers more than once every four years If you want the latest version of software, you need to not use the LTS version, and you need to update to the newer releases as they're released, because the entire point of LTS is not to do the thing you're asking to do.
- tankenmate 10y agoAlso as follow on, you'll find that the packages that draw community support also tend to have PPAs (personal package archive), these are very easy to add to Ubuntu these days and typically backport more recent versions of software to older LTS (and sometimes non LTS) Ubuntu releases. For example I use the nginx PPA on some of my older servers and it supports nginx 1.11 on Ubuntu 14.04 even thought 14.04.4 LTS only supports 1.4.6. apt-add-repository is what you're looking for.
- makmanalp 10y agoEvery time someone suggests this it makes me a bit nervous because you're advocating I install binaries compiled by some random person and deploy them on all my production servers. If there were official backports of some sort from the python people for example, then yeah, but otherwise, nope nope nope.
- akarambir 10y agoThe parent example was saying about official ppa only, official as in the original software company providing that ppa. In this case, nginx ppa is provided by nginx developers. Other example is postgres. But I get it, there are not many ppa like that.
- ryenus 10y agoJust in case, there's Linuxbrew (http://linuxbrew.sh/ http://linuxbrew.sh/), Homebrew for Linux.
- cookiecaper 10y agoWhile you're correct, it should be noted that "security backports" are much less complete than they'd have you think. Do NOT take the promises of enterprise distributors for granted, both because there are a lot of security problems that never get fixed, and because the expertise to sufficiently backport is often lacking (cf. the Debian SSL entropy crisis of some years back). You are usually better off using a newer upstream with the security fix integrated than relying on a distro-pushed backport. For a demonstration, try installing redis from the official Ubuntu repos.
- coleifer 10y agoThings are supposed to be stable if you're running an LTS, you savage! If you want everything bleeding edge, then use Arch Linux, not an Ubuntu LTS. Good god man. Also I love the incredible specificity of your "ROLE/AFFILIATION". Top 2000, eh? Heh.
- cookiecaper 10y agoThere needs to be a rational middle ground. Arch is bleeding edge and has no qualms pushing updates that break things and telling you to fix it. That's fine for workstations (and I've used Arch as my workstation OS for over 10 years), but it doesn't work well for servers. IMO, LTS should be transformed to a yearly release cycle with 2 years of support, not bi-annual with 5 years. This would fix a lot of problems, especially considering that distros can get frozen with versions of packages that are already pretty old when they go gold. Keeping support around for 5 years (which is basically a myth anyway) is just a big waste for everyone.
- coleifer 10y agoThere is a rational middle ground -- Ubuntu's regular semi-annual releases. If Ubuntu doesn't meet your needs, maybe try Centos + EPEL. You get a lot of stability with the option to install more recent versions of some packages. Then again, you seem to be taking all this pretty personally, so my comments are probably wasted on you. > and has no qualms pushing updates that break things and telling you to fix it. I've been using Arch for 4 or 5 years and can only recall a couple instances where I needed to force-install a package to accomodate a backwards-incompatible change.
- cookiecaper 10y ago>There is a rational middle ground -- Ubuntu's regular semi-annual releases. I'm aware of Ubuntu's normal releases. These aren't labeled enterprise-ready, so enterprises won't use them. They also frequently contain experimental/unstable stuff, not because they need to, but because the LTS release cycle causes the release team to treat non-LTS releases like a beta. >Then again, you seem to be taking all this pretty personally, so my comments are probably wasted on you. I'm really not sure how you came away with the impression that I'm taking Ubuntu's release cycle as a personal affront. I'm not the top-2000 guy you initially replied to. Rest assured, I do not believe that Canonical has selected its release process specifically to offend me. :) >I've been using Arch for 4 or 5 years and can only recall a couple instances where I needed to force-install a package to accomodate a backwards-incompatible change. Yeah, it's very rare to need to force install (has become more rare in recent years, but was still quite rare). When I say "break things", I don't mean you have to pass the force flag to the package manager. I mean that configuration formats change, binary formats may change, a lot of system expectations may break that could take you offline for a while, even if you know how to fix them (for example, significant PostgreSQL updates require the data to be reimported to the new version). Their transition to Python 3 as the default /usr/bin/python about 2 years before anyone else broke all kinds of stuff, for example. That's fine, you sign up for it when you use Arch. But that's not the kind of experience most people expect for a server distro.
- who_is_mr_tux 10y agoThis is the exact problem snaps are supposed to solve. Check out Snapcraft.io
- qznc 10y agoThis. My laptop is on Ubuntu 16.04. Via apt, I get libreoffice 5.1.6 from last october. Snap gives me 5.3.1, which is the newest one. Snap is not there yet. Finding stuff is hard, because uApp Explorer [0] is not good enough yet. It suffers from trying to appeal to servers, desktop, mobile, and IoT (which probably just means Raspberry Pi). It is confusing and messy. Edit: Since GP mentioned youtube-dl, specifically. A `snap find youtube` gives me three different variants: youtube-dl-casept 2017.03.26 casept youtube-dl-snap daily fireeye youtube-dl-bdmurray 2016.10.16 bdmurray The first one looks recent. Maybe the second one is even better? As I said, it is confusing so far. We have to figure out how to do curation well. [0] https://uappexplorer.com/apps?type=snappy https://uappexplorer.com/apps?type=snappy
- 0x6c6f6c 10y agoWould be interesting if there's a way to list more information on the snap, such as submission date / last updated etc.
- StavrosK 10y ago> (which installed Ubuntu 14.04 LTS), and `apt-get install nodejs` installed Node 0.10 (from 2013! in 2017!). Not in 2017. In 2014. You're using Ubuntu 14, which means you get 2014 versions.
- pitaj 10y agoEven the latest versions of Ubuntu install Node 0.10. This is a known thing in the Node community which is why we use tj/n or NVM.
- JdeBP 10y agoThe "Node community" disagrees with the actual version numbers on the Ubuntu packages. The version numbers on the packages say that whilst Ubuntu 14.04 has nodejs version 0.10, both Ubuntu 16.04 and Ubuntu 16.10 have nodejs version 4.2.6. * http://packages.ubuntu.com/trusty/nodejs http://packages.ubuntu.com/trusty/nodejs * http://packages.ubuntu.com/xenial/nodejs http://packages.ubuntu.com/xenial/nodejs * http://packages.ubuntu.com/yakkety/nodejs http://packages.ubuntu.com/yakkety/nodejs * http://packages.ubuntu.com/zesty/nodejs http://packages.ubuntu.com/zesty/nodejs
- petre 10y agoUse a rolling release distribution (like Arch or the more conservative OpenSuSE Tumbleweed) if you want the latest and greatest packages. The point of LTS releases in minimal breakage during uptates coupled with some two or more years of updates.
- glaberficken 10y agoI guess if you want a bleeding edge experimental server, you might want to try Arch Linux. But you will have to tinker... a lot. It all comes as a trade off. You get the benefit of rolling release and AUR, you loose the stability. Here's a balanced comment from the Arch wiki regarding Arch not being meant for the server: https://wiki.archlinux.org/index.php/Server#Arch_Linux_as_a_server_OS https://wiki.archlinux.org/index.php/Server#Arch_Linux_as_a_... "You may have seen the comments or claims: Arch Linux was never intended as a server operating system! This is correct: there is no server installation disc available, per se, such as those you may find for other distributions. This is because Arch Linux comes as a minimal (but solid) base system, with very few desktop or server features pre-installed. This does not mean Arch Linux is a bad server system; quite the contrary. Arch's core installation is a secure and capable foundation. Since only a small number of features come pre-installed, this core installation can easily be used as a basis for a Linux server. All the popular server software (Apache, MySQL/MariaDB, PHP, Samba, and plenty more) are available in the official repository, and even more are available on the AUR. The wiki also contains much detailed documentation regarding how to get set up with this software."
- glaberficken 10y agoAlso, because you mention youtube-dl. Here's the latest package version in the Arch repos (only a few days old =) https://www.archlinux.org/packages/?sort=&q=youtube-dl&maintainer=&flagged= https://www.archlinux.org/packages/?sort=&q=youtube-dl&maint...
- dustinkirkland 10y agoAh this is a good idea, and one we're very specifically trying to solve. The way you're going to do this in Ubuntu will be with the "snap" packaging manager! You can already use "snap install ..." to install hundreds of latest/greatest software packages, which evolve independently of the underlying OS. We're investing even more heavily here, so please do stay tuned, and try out snaps!