10

No, this is not a dup of https://askubuntu.com/questions/151283/why-dont-the-ubuntu-repositories-have-the-latest-versions-of-software.

My question here is towards end-user software only. I totally understand the stability argument regarding low-end packages and stuff, but why every few days there are a lot of packages to update, but none of those are about my common applications?

This takes us to the absurdity of having a lot of developers suggesting us to simply not use the official repositories, because they're outdated. From your couches, imagine a mobile world where you would have to download your APKs/IPAs from everywhere on the web, because the Google Play/App Store only includes a version year-old.

That's what happens on Ubuntu. The magic of having an easy-to-use way to install software is completely screwed because the stuff is too old.

Example: Just got Ubuntu 16.04 on my computer, and the Calibre version is almost 5 months old - 2.55 is in the repo while 2.66 is already out.

If the original developers don't care to maintain a PPA, we're left with the old school days of accessing download sites, getting tarballs or debs and manually installing stuff. Ubuntu used to be cool but it's now older than Windows in this aspect.

Is the human factor the only response here? Ubuntu maintainers have more stuff to do than keeping up with all software releases in-between Ubuntu versions? Why isn't it easier/possible for software developers to update their own software on the Ubuntu repositories?

1 Answers1

13

Why isn't it easier/possible for software developers to update their own software on the Ubuntu repositories?

Software developers update their software regularly. That's why you found a new Calibre version. However, they don't directly push their updates to the Ubuntu repository. The reasons are already given in the answers you linked with your question.

They can't always provide PPAs as well because that would add an extra burden on them. They would then need to provide packages for several distributions. And don't forget there are several Non-EOL releases of each distribution! If they want to provide a package for Ubuntu, they would be required to create one for 16.04, 14.04 and probably 12.04. Then Fedora, Debian, Arch Users start complaining! That is not easy! That's why PPAs are usually provided by third-party maintainers.

However, there is another alternative approach to provide the latest softwares for end-users developing these days. It is packaging every component of an application in a single file. They run mostly in an isolated environment like in a container and don't need to be compatible with the current libraries installed in the system. For example, you can run gtk-3.20 application in Xenial which packaged mostly with 3.18 components.

But they have their problems too! (See footnotes)

Some of the approaches are:

Ubuntu maintainers have more stuff to do than keeping up with all software releases in-between Ubuntu versions?

Ubuntu maintainers try hard to meet the milestones for each release. To keep Ubuntu stable, they need to make sure every package works as expected. For example, recently a question was asked here about getting latest KDEConnect 1.0 in Ubuntu 16.04. But it revealed kdeconnect 1.0 requires Qt 5.6. To give them Qt 5.6, they need to ensure other packages in the official repository works well with it. That means, re-building, re-testing of all KDE-packages, which is really a huge task.

If you need latest, cutting-edge softwares, you can try using rolling-release distributions or the other single package approach mentioned earlier in the question.


Some problems with Single File Packaging:

  1. They are usually bigger in size (because they package everything needed)

  2. Installing them make your system bigger, because there will be several copies of same libraries in your system used by each package.

  3. These packaging format requires the package maintainers to test the integration with libraries themselves. This is an extra burden on them. With apt, yum approach, they are only bothered with the core-application. They could simply assume lib-gtk-xy-1.5 is available in the distribution.

  4. Again, by same reasoning, package maintainers will now be bothered with bug reports related to libraries included in their package. In traditional approach, this was the job of maintainers of that specific lib package.

Anwar
  • 76,649
  • yes, I was trying to avoid that "depends on latest low-end stuff that's certainly going to break something" point with this question :) You made a good point on citing they can't push stuff directly to the official repos for stability, but could you also address the question on "why isn't it easier for them to do it by themselves?" – igorsantos07 Sep 05 '16 at 16:39
  • @igorsantos07 you mean to provide packages/PPA themeselves? – Anwar Sep 05 '16 at 16:40
  • I guess that would be the only way, right? Is the build procedure so hard so many developers just avoid it? Could Ubuntu simplify that so more developers ship updated software with PPAs? – igorsantos07 Sep 05 '16 at 16:42
  • @igorsantos07 I've updated the answer to address that part. – Anwar Sep 05 '16 at 16:53
  • that confirms my supositions. Thanks man! Sidenote: too bad your answer received already 4 upvotes (meaning it's a valid answer) but the question itself got a solo downvote :| Why's the question bad if the answer for it is good? lol – igorsantos07 Sep 05 '16 at 17:12
  • single-file packaging sounds like Windows installers, with all their dependencies stuffed together into one .msi/.exe? – igorsantos07 Sep 05 '16 at 17:13
  • 1
    @igorsantos07 yeah. Almost they are – Anwar Sep 05 '16 at 17:14
  • 2
    @igorsantos07 +1 to your question bringing it back to zero. – WinEunuuchs2Unix Sep 05 '16 at 17:47
  • 1
    +1 for mentioning problems with Single File Packaging. Although, I think you should be adding point from my comment http://askubuntu.com/questions/821299/why-is-it-so-hard-to-find-updated-end-user-software-on-the-official-repositories?newsletter=1&nlcode=382014%7c13f2#comment1248047_821299 – Alex Jones Sep 07 '16 at 16:22