diff --git a/content/docs/supportedapi.md b/content/docs/supportedapi.md deleted file mode 100644 index 3a2742b9e6023254d06cb74c1b3dd6b266bd3446..0000000000000000000000000000000000000000 --- a/content/docs/supportedapi.md +++ /dev/null @@ -1,406 +0,0 @@ -+++ -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 |