1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Ubuntu Still Talking About A Stable App API/ABI

Ubuntu

Published on 20 November 2013 03:34 PM EST
Written by Michael Larabel in Ubuntu
20 Comments

Ubuntu developers are still exploring the possibility of coming up with a stable API/ABI for its apps.

At the Ubuntu 12.04 Developer Summit that happened two years ago there was talk of coming up with a stable API for application developers outside of the kernel area.

The hope by Ubuntu back in 2011 was to produce more documentation and a stable API on the desktop side to assist application developers. The interfaces back then to make up this stable Ubuntu platform API were GNOME 3, GObject, libunity, libappindicator, GSettings, and Ubuntu One. Their call for this stable API was on the desktop (higher-level) side to help application developers target multiple Ubuntu releases and overall make it a better experience and comparable to that of writing an app for Windows or OS X.

Two years later, the Ubuntu developers are still wanting a stable API and ABI for apps. Of course, in the past two years a lot has changed. Now Canonical has a much greater focus on pushing their mobile ambitions. What they were looking at two years ago for their "stable" Ubuntu platform APIs is also much out the window. Unity 8 is a whole new shebang and they're far less dependent upon GNOME, Unity 8 is happening in Qt, and they also have their own Mir display server, among other changes and Canonical coming up with more of their own libraries/packages.

Today at the Ubuntu 14.04 virtual Developer Summit there was a session on "System framework for apps" where the stable API/ABI talk kept on going. The Ubuntu developers are still determining what to recommend app developers built against, what Canonical is to build their own Click packages against, how to support building against SDK versions, how to support running Click packages against older/newer packages, and what they can promise about API or ABI stability.

Years after the stable Ubuntu API/ABI discussions first started happening, they are still deciding about publishing a list of supported API/ABIs, testing and handling of API/ABI changes, etc. This is nothing about a stable kernel API/ABI or anything low-level and crazy like user-space drivers, etc.

One of the approaches talked about is utilizing a run-time chroot for changing supplied libraries to a package. This would likely be a nightmare with needing to maintain multiple chroots on the system for all supported runtimes. "Generating a chroot seems very heavy in terms of disk usage, might have to support 3-4 releases in parallel, of some hundreds of MB each..Ideally we would like to promise ABI and API stability for ever. However this has a cost. An upper bound might be the supported timeline of the Ubuntu releases. But it could be a lot less than that."

In the end, not too much was decided during the hour-long conversation, but the video is embedded below and the vUDS notes can be found on the session page.


About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. A Walkthrough Of The New 32 System Open-Source Linux Benchmarking Test Farm
  2. Habey MITX-6771: Mini-ITX Board With Quad-Core J1900 Bay Trail
  3. OCZ Vector 150 SSD On Linux
  4. Noctua i4 CPU Cooler: Great For Cooling High-End LGA-2011v3 CPUs
Latest Linux Articles
  1. AMD Kaveri: Open-Source Radeon Gallium3D vs. Catalyst 14.12 Omega Driver
  2. 12-Way AMD Catalyst 14.12 vs. NVIDIA 346 Series Linux GPU Comparison
  3. AMD Catalyst 14.12 Omega Driver Brings Mixed Results For Linux Users
  4. 6-Way Winter 2014 Linux Distribution Comparison
Latest Linux News
  1. After 10+ Years, NetworkManager Reaches v1.0
  2. VDPAU Updated To v0.9
  3. An Open Hardware Random Number Generator Proposed
  4. LLVM 3.6 Will Be Branched Next Month
  5. Opera Browser Puts Out Linux Updates For The Holidays
  6. GNOME Shell 3.15.3 Adds Support For High-Contrast Themes
  7. Linux 3.19: ThinkPad Muting Redone, New Dell Backlight Support, Acer Is Banging
  8. KVM Drops Support For IA64 While Adding Various x86 Improvements
  9. GCC 4.8.4 Officially Released
  10. FSF's High Priority Project List Now Has A Committee
Latest Forum Discussions
  1. XLennart: A Game For Systemd Haters With Nothing Better To Do
  2. Need some hand holding with upgrading xserver
  3. Debian init discussion in Phoenix Wright format
  4. The New SuperTuxKart Looks Better, But Can Cause GPU/Driver Problems
  5. FPS capped on Linux (AMD fglrx drivers)
  6. Are there an app using HSA ?
  7. Bench specific mount point
  8. Tool for measuring FPS in games