Skip to content
Snippets Groups Projects
Commit 9de8d3dd authored by Martyn Welch's avatar Martyn Welch Committed by Emanuele Aina
Browse files

Remove supported APIs page

This page is out of date. It says it's out of date and points to a newer
version in developer.a.o:

https://developer.apertis.org/apis.html



Since this one is dead, remove it.

Signed-off-by: default avatarMartyn Welch <martyn.welch@collabora.com>
parent 67f80381
No related branches found
No related tags found
1 merge request!39Wip/martyn/website updates
+++
date = "2017-11-22"
weight = 100
title = "Supported API"
aliases = [
"/old-wiki/Docs/SupportedAPI"
]
+++
<span style="color:red; font-size:14pt; text-align:center;">'''This page
is outdated, see also
[developer.apertis.org/apis.html](https://developer.apertis.org/apis.html)</span>
[SDK APIs will be made available using a review
process]( {{< ref "/docs/supportedapi/strategy.md" >}} ).
In Apertis, compatibility of applications is an important concern, given
the facts that it will be a long-living system running on a computer
which is not necessarily consistently connected to the Internet, while
at the same time trying to stay close to the fresh new versions
delivered by the Open Source projects that are being used as a base for
the platform. This page documents what APIs are available, and how they
fit into the support levels, as discussed in the Supported APIs proposal
(look for the newest version in the [Specs]() page.
# Enabling APIs
These are the libraries that make up the supported API surface made
available for applications from the store to use. Effort may be made to
ease or remove transition issues when ABI or API breakages happen.
## Content Rendering
| Component | Packages | Category |
| -------------- | ------------------------------ | --------------------- |
| WebKit Clutter | libwebkit-clutter-0 | Web engine |
| Poppler | libpoppler-glib8, libpoppler28 | PDF rendering |
| ClutterGst 3 | libclutter-gst-3.0-0 | High-level multimedia |
## UI
| Component | Packages | Category |
| --------- | ---------------- | ------------------- |
| Cairo | libcairo2 | Drawing library |
| Clutter | libclutter-1.0-0 | High-level graphics |
| Mx 2.0 | libmx-2.0-0 | UI toolkit |
## Services
| Component | Packages | Category |
| --------- | ---------------------------------------------------------------------------- | ------------------- |
| Canberra | libcanberra0 | High-level sounds |
| PolicyKit | policykit-1 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 | System |
| Folks | libfolks-eds25, libfolks-telepathy25, libfolks25 | Contacts & calendar |
| Grilo | libgrilo-0.2-1 | Media indexing |
| Tracker | libtracker-extract-0.16-0, libtracker-miner-0.16-0, libtracker-sparql-0.16-0 | Media indexing |
| libsecret | libsecret-1-0 | Secrets management |
| Telepathy | libtelepathy-glib0 libtelepathy-farstream3 | Communication |
# OS APIs
These are more fundamental APIs, usually used by the Enabling APIs to
provide higher-level functionality. Platform upgrades may require
adapting applications to new APIs and/or ABIs for these.
## Infrastructure
| Component | Packages | Category |
| --------- | ------------ | -------- |
| | | |
| eglibc | libc6 | Base |
| GLib | libglib2.0-0 | Base |
## Environment integration
| Component | Packages | Category |
| --------- | ----------------------------------------------------------------------------------------------- | -------------------- |
| Systemd | libudev1 libsystemd-daemon0 libsystemd-journal0 libsystemd-login0 libpam-systemd libgudev-1.0-0 | System |
| D-Bus | libdbus-1-3 | Low-level D-Bus API |
| dbus-glib | libdbus-glib-1-2 | High-level D-Bus API |
| WNCK | libwnck-3-0 | Window management |
## Rendering building blocks
| Component | Packages | Category |
| --------- | ---------------------------------------------------------------- | ------------------------- |
| pixman | libpixman-1-0 | Low-level graphics |
| Pango | libpango1.0-0 | High-level font rendering |
| Cogl | libcogl15 | Low-level graphics |
| Mesa | libegl1-mesa libgbm1 libgl1-mesa-dri libglapi-mesa libgles2-mesa | Low-level graphics |
| hafbuzz | libharfbuzz0 | Low-level font rendering |
| freetype | libfreetype6 | Low-level font rendering |
## Functionality
| Component | Packages | Category |
| ---------- | ----------------------------------------------------------------------------------------------------------------------------------- | -------------------- |
| LLVM | libllvm3.2 | Compiler technology |
| GTK+ 3 | libgtk-3-0 | UI toolkit |
| gdk-pixbuf | libgdk-pixbuf2.0-0 | Image manipulation |
| GMime | libgmime-2.6-0 | File format support |
| GStreamer | libgstreamer1.0-0 gstreamer1.0-plugins-base libgstreamer-plugins-base1.0-0 gstreamer1.0-plugins-good libgstreamer-plugins-good1.0-0 | Low-level multimedia |
| Farstream | libfarstream-0.2-2 | Communication |
| libxml2 | libxml2 | File format support |
| libxslt | libxslt1.1 | File format support |
| SQLite | libsqlite3-0 | Data storage |
| JSON GLib | libjson-glib-1.0-0 | File format support |
| Soup | libsoup-gnome2.4-1, libsoup2.4-1 | Network protocol |
Note that Apertis deploys only license verified Gstreamer plugins.
Basically, each Gstreamer plugin is developing under
[LGPL](https://www.gnu.org/licenses/lgpl.html), but only [gstreamer
core](http://cgit.freedesktop.org/gstreamer/gstreamer),
[base](http://cgit.freedesktop.org/gstreamer/gst-plugins-base) and
[good](http://cgit.freedesktop.org/gstreamer/gst-plugins-good) provide
license and patent-free plugins. In case of
[gst-plugins-ugly](http://cgit.freedesktop.org/gstreamer/gst-plugins-ugly)
and
[gst-plugins-bad](http://cgit.freedesktop.org/gstreamer/gst-plugins-bad),
they are not immune from the license and patent issues. gst-plugins-bad
usually provides a space to review API stablity as well as license
problem. In addition, the plugins which have potential issues with
patents, or license fee should be located in gst-plugins-ugly.For more
information, please refer to
<http://gstreamer.freedesktop.org/documentation/licensing.html>
# Internal APIs
APIs used to build platform functionality, not supported for usage by
applications from the store. Breaking API and ABI surface here is less
of a problem, because all of the pieces are under Apertis developers'
control.
## Functionality
| Component | Packages | Category | Used by/for |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------- | --------------------------------------------- |
| LibreOffice | libreoffice-common, libreoffice-core, libreoffice-style-galaxy | File format support | Tracker and Apertis tool to read documents |
| Zeitgeist | libzeitgeist-1.0-1 | Metadata | Event logging service (see Contacts proposal) |
| Evolution Data Server | libcamel-1.2-40, libebackend-1.2-5, libebook-1.2-14, libecal-1.2-15, libedata-book-1.2-15, libedata-cal-1.2-18, libedataserver-1.2-17 | Contacts & calendar | Main contacts backend for Folks |
| SyncEvolution | libsyncevolution0 | Contacts & calendar | Apertis synchronization application |
| Bluez | libbluetooth3 | System | ofono |
## Indexing building blocks
| Component | Packages | Category | Used by/for |
| --------- | --------------------------- | -------------- | ----------------- |
| taglib | libtag1-vanilla, libtag1c2a | Media indexing | Tracker and grilo |
| Tumbler | libtumbler-1-0 | Media indexing | Tracker |
## Multimedia building blocks
| Component | Packages | Category | Used by/for |
| --------- | ------------------------------------------ | -------------------- | ---------------- |
| Theora | libtheora0 | Media format support | GStreamer plugin |
| Vorbis | libvorbis0a, libvorbisenc2, libvorbisfile3 | Media format support | GStreamer plugin |
| Ogg | libogg0 | Media format support | GStreamer plugin |
| VPX | libvpx1 | Media format support | GStreamer plugin |
| Flac | libflac8 | Media format support | GStreamer plugin |
## Support code
| Component | Packages | Category | Used by/for |
| ------------------------ | ---------------------- | ------------------- | --------------------------------------------------------- |
| libnice | libnice10 | Connectivity | GStreamer/Farstream support library |
| upower | libupower-glib1 | System | Telelpathy, Tracker, potentially several Apertis services |
| Apertis BTRFS | libbtrfsc1 | System | Apertis system tools, system updater |
| Boot flags (static only) | chaiwala-bootflags-dev | System | Boot up process, system updater |
| JSON | libjson0 | File format support | json-glib (for clutter) |
| libwebsockets | libwebsockets1 | Network protocol | Apertis's custom web server |
# External APIs
These libraries need to be shipped along with the application if they
are to be used.
| Component | Packages | Category |
| --------- | ---------------------------- | --------------------------- |
| GTK+ 2 | libgtk2.0-0 | UI toolkit |
| libgdata | libgdata13 | Web services |
| libjpeg8 | libjpeg-turbo libjpeg-turbo8 | Image format support |
| webp | libwebp4 | Image format support |
| giflib | libgif4 | Image format support |
| tiff | libtiff5 | Image format support |
| libpng | libpng12-0 | Image format support |
| Champlain | libchamplain-0.12-0 | Clutter-based map rendering |
# Deprecated APIs
APIs which are still shipped in Apertis, but that are going away.
| Component | Packages | Category | Notes |
| -------------------- | ------------------------ | --------------------- | ------------------------------ |
| ClutterGst 2 | libclutter-gst-2.0-0 | High-level multimedia | Replaced by ClutterGst 3 |
| GNOME Keyring | libgnome-keyring0 | Secrets management | Replaced by libsecret |
| GeoClue | libgeoclue0 | Geolocation support | To be replaced by Geoclue2 |
| startup-notification | libstartup-notification0 | Session management | Replaced by gio's GApplication |
# Potentially Unused APIs
| Component | Packages | Category | Notes |
| ------------ | ------------------------------------------------------------------------------- | ------------ | ------------------------------------------------------------------------------------- |
| libsocialweb | libsocialweb0 libsocialweb-service libsocialweb-client2 libfolks-libsocialweb25 | Web services | Depends on whether libsocialweb will be used for implementing any web service support |
# Unsupported
These libraries are currently shipped, but they are used directly by
pieces of the platform which are custom, and are not supposed to be used
by applications from the store. They exist only to support the other
libraries and services of the system.
| Component | Packages |
| ---------------------- | ------------------------------------------------------------------------------------------ |
| aalib | libaa1, libaa1 |
| acl | libacl1 |
| alsa-lib | libasound2 |
| alsa-plugins | libasound2-plugins |
| apt | libapt-inst1.5, libapt-pkg4.12 |
| atk1.0 | libatk1.0-0, libatk1.0-data 2.8.0-1be1 |
| at-spi2-atk | libatk-bridge2.0-0 |
| at-spi2-core | libatspi2.0-0 |
| attr | libattr1 |
| audit | libaudit1, libauparse0 |
| avahi | libavahi-client3, libavahi-common3, libavahi-core7 |
| bind9 | libbind9-90, libdns95 |
| bind9 | libisc92, libisccc90, libisccfg90, liblwres90 |
| boost1.49 | libboost-date-time1.49.0 |
| bzip2 | libbz2-1.0 |
| cdparanoia | libcdparanoia0 |
| colord | libcolord1 |
| cryptsetup | libcryptsetup4 |
| curl | libcurl3, libcurl3-gnutls |
| cyrus-sasl2 | libsasl2-2 |
| db | libdb5.1 |
| d-conf | libdconf1 |
| e2fsprogs | libcomerr2 |
| e2fsprogs | libss2 |
| enca | libenca0 |
| exempi | libexempi3 |
| ?? expat | libexpat1 |
| fftw3 | libfftw3-single3 |
| file | libmagic1 |
| fontconfig | libfontconfig1 |
| gcc-4.7 | libgcc1, libgomp1, libstdc++6 |
| gcr | libgck-1-0, libgcr-3-1 |
| gdbm | libgdbm3 |
| geoip | libgeoip1 |
| gmp | libgmp10 |
| gnutls26 | libgnutls26 |
| gobject-introspection | libgirepository-1.0-1 |
| gpgme1.0 | libgpgme11 |
| gpm | libgpm2 |
| gssdp | libgssdp-1.0-3 |
| gupnp-av | libgupnp-av-1.0-2 |
| gupnp-igd | libgupnp-igd-1.0-4 |
| gupnp | libgupnp-1.0-4 |
| hunspell | libhunspell-1.3-0 |
| hyphen | libhyphen0 |
| icu | libicu48 |
| jasper | libjasper1 |
| jbigkit | libjbig0 |
| keyutils | libkeyutils1 |
| klibc | libklibc |
| kmod | libkmod2 |
| krb5 | libgssapi-krb5-2, libk5crypto3, libkrb5-3, libk5crypto3, libkrb5support0 |
| lcms2 | liblcms2-2 |
| libarchive | libarchive13 |
| libasyncns | libasyncns0 |
| libavc1394 | libavc1394-0 |
| libcaca | libcaca0 |
| libcap2 | libcap2 |
| libclass-isa-perl | libclass-isa-perl |
| libcmis | libcmis-0.3-3 |
| libdaemon | libdaemon0 |
| libdatrie | libdatrie1 |
| libdrm | libdrm-nouveau2 ?? -\> not needed on arm, libdrm-radeon1 ?? -\> not needed on arm, libdrm2 |
| libdrm | libkms1 |
| libdv | libdv4 |
| libelf | libelfg0 |
| libexif | libexif12 |
| libexttextcat | libexttextcat-2.0-0, libexttextcat-data |
| libffi | libffi6 |
| libfontenc | libfontenc1 |
| libgcrypt11 | libgcrypt11 |
| libgee | libgee2 |
| libgpg-error | libgpg-error0 |
| libgsf | libgsf-1-114 |
| libgusb | libgusb2 |
| libgweather | libgweather-3-1 |
| libgxps | libgxps2 |
| libical | libical0 |
| libice | libice6 |
| libidn | libidn11 |
| libiec61883 | libiec61883-0 |
| libiptcdata | libiptcdata0 |
| liblocale-gettext-perl | liblocale-gettext-perl |
| libmrss | libmrss0 |
| libnfnetlink | libnfnetlink0 |
| libnl3 | libnl-3-200, libnl-genl-3-200 |
| libnotify | libnotify4 |
| libnxml | libnxml0 |
| liboauth | liboauth0 |
| libopenobex | libopenobex1 |
| libopenraw | libopenraw1, libopenrawgnome1 |
| libpciaccess | libpciaccess0 |
| libpipeline | libpipeline1 |
| libproxy | libproxy1 |
| libquvi | libquvi7 |
| libquvi-scripts | libquvi-scripts |
| libraw1394 | libraw1394-11 |
| librest | librest-0.7-0, librest-extras-0.7-0 |
| libsamplerate | libsamplerate0 |
| libselinux | libselinux1 |
| libsemanage | libsemanage1 |
| libsepol | libsepol1 |
| libshout | libshout3 |
| libsm | libsm6 |
| libsndfile | libsndfile1 |
| libswitch-perl | libswitch-perl |
| libsynthesis | libsmltk0, libsynthesis0 |
| libtasn1-3 | libtasn1-3 |
| libtext-charwidth-perl | libtext-charwidth-perl |
| libtext-iconv-perl | libtext-iconv-perl |
| libtext-wrapi18n-perl | libtext-wrapi18n-perl |
| libthai | libthai0 |
| libtool | libltdl7 |
| libunistring | libunistring0 |
| libusb-1.0 | libusb-1.0-0 |
| libusb | libusb-0.1-4 |
| libutempter | libutempter0 -\> xterm |
| libuuid-perl | libuuid-perl |
| libvisual | libvisual-0.4-0 |
| libx11 | libx11-6, libx11-xcb1 |
| libxau | libxau6 |
| libxaw | libxaw7 |
| libxcb | libxcb-dri2-0, libxcb-render0, libxcb-shm0, libxcb-xfixes0, libxcb1 |
| libxcomposite | libxcomposite1 |
| libxcursor | libxcursor1 |
| libxdamage | libxdamage1 |
| libxdmcp | libxdmcp6 |
| libxext | libxext6 |
| libxfixes | libxfixes3 |
| libxfont | libxfont1 |
| libxi | libxi6 |
| libxinerama | libxinerama1 |
| libxkbcommon | libxkbcommon0 |
| libxkbfile | libxkbfile1 |
| libxmu | libxmu6, libxmuu1 |
| libxpm | libxpm4 |
| libxrandr | libxrandr2 |
| libxrender | libxrender1 |
| libxres | libxres1 |
| libxt | libxt6 |
| libxtst | libxtst6 |
| libxv | libxv1 |
| lua5.1 | liblua5.1-0 |
| lvm2 | libdevmapper1.02.1 |
| lzo2 | liblzo2-2 |
| mhash | libmhash2 |
| mozjs | libmozjs185-1.0 |
| mtdev | libmtdev1 |
| mutter | libmutter0a |
| mythes | libmythes-1.2-0 |
| ncurses | libncurses5, libncursesw5, libtinfo5 |
| neon27 | libneon27-gnutls |
| nettle | libnettle4 |
| newt | libnewt0.52 |
| nspr | libnspr4 |
| nss | libnss3 |
| openldap | libldap-2.4-2 |
| openssl | libssl1.0.0 |
| orc | liborc-0.4-0 |
| p11-kit | libp11-kit0 |
| pacrunner | libproxy1-pacrunner |
| pam | libpam-modules, libpam-modules-bin, libpam-runtime, libpam0g |
| pcre3 | libpcre3, libpcrecpp0 |
| pcsc-lite | libpcsclite1 |
| popt | libpopt0 |
| procps | libprocps0 |
| pth | libpth20 |
| python2.7 | libpython2.7-minimal, libpython2.7-stdlib |
| python-defaults | libpython-stdlib |
| raptor2 | libraptor2-0 |
| rasqal | librasqal3 |
| readline6 | libreadline6 |
| redland | librdf0 |
| rtmpdump | librtmp0 |
| sbc | libsbc1 |
| slang2 | libslang2 |
| speex | libspeex1, libspeexdsp1 |
| taglib | libtag1-vanilla, libtag1c2a |
| tcp-wrappers | libwrap0 |
| tdb | libtdb1 |
| totem-pl-parser | libtotem-plparser17 |
| ustr | libustr-1.0-1 |
| util-linux | libblkid1 |
| util-linux | libmount1 |
| util-linux | libuuid1 |
| v4l-utils | libv4l-0, libv4lconvert0 |
| wayland | libwayland0 |
| xcb-util | libxcb-util0 |
| xft | libxft2 |
| xz-utils | liblzma5 |
| yajl | libyajl2 |
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment