The mission and goals of Mer is amongst others: Mer is an open, mobile-optimised, core distribution aimed at device manufacturers; powered by Qt/QML and HTML5 - openly developed, inclusive, and meritocratically governed.
Provide a mobile device oriented architecture Primary customers are device vendors - not end-users. Over time, the traditional mobile device focus has been done mostly as part of the Nemo Middleware project, with Mer focusing on base system, with a large overlap in contributor, vendor participation, use and contributions, even infrastructure. The barrier between Mer and Nemo Middleware and what goes where has often been confusing and let to big architectural challenges and difficulty in contributing to Mer and especially Nemo MW based projects, with differing methods, bugtrackers, requirements, etc - despite the overlap of people, bugtrackers, even if they were on the same infrastructure. In that sense, it makes sense that we try to remove the artifical gap between Mer and Nemo Middleware to ensure a productized and working, tested mobile core distribution. This is a RFC for Mer vendors, remaining advisory board members and maintainers, with idea of implementation happening after 1st of May 2014. We have already begun (a long time ago goal) to try and make Mer contribution easier, through setting up GitLab and migrating the core repositories from Gerrit to GitLab, hosted in Mer infrastructure, authenticated with Mer bugtracker accounts. In addition to that, we have set up a OBS _service based Mer build in https://build.merproject.org/project/monitor?project=mer-core%3Ai486%3Adevel and https://build.merproject.org/project/monitor?project=mer-core%3Adevel This uses the tar_git web service with option 'dumb' to utilize old Mer repository formats. Due to previous inability for Mer to accept contributions and release sufficiently fast for Mer-based products, a method was devised to make sure contribution could happen faster, by overlaying Mer with a faster-moving set of packages, based on git repositories where actual development happened. The lessons from that has been learnt and were part of the reason for the GitLab move and _service based mentioned in the previous three paragraphs. It led to bad situations before that the factual bleeding edge Mer was not in Mer Gerrit, but in Mer GitHub repositories. It is also worth noting that it is easy, and possible to only use a subset of Mer source packages in vendor builds for specific purposes. The original thought that Mer vendors would typically use full binary releases of Mer has been disproven and most uses are using their own Mer builds, done on own OBSes, and hence it makes more sense to see Mer as a set of software components that can be combined in different ways and built in a couple of different configurations for QA. The intended components to be updated and replacing current versions in Mer (currently Qt 5.0 based): * Mobile-productized Qt5.1 packaging and modifications from Nemo's Qt fork: (Primary maintainer, Robin Burchell/w00t) https://github.com/mer-packages/qtdocgallery https://github.com/mer-packages/qtwayland https://github.com/mer-packages/qtdeclarative https://github.com/mer-packages/qtsystems https://github.com/mer-packages/qtbase https://github.com/mer-packages/qtmultimedia https://github.com/mer-packages/qtlocation https://github.com/mer-packages/qtscenegraph-adaptation https://github.com/mer-packages/qtwebkit5 https://github.com/mer-packages/qttranslations https://github.com/mer-packages/qtjsbackend https://github.com/mer-packages/qtsvg https://github.com/mer-packages/qtquick1 https://github.com/mer-packages/qtsensors https://github.com/mer-packages/qtxmlpatterns [some may be missing] With updated 5.2 packages in a staging project while it gets productized, https://github.com/mer-qt * Updated ConnMan 1.23 (Primary maintainer, Lorn Potter/lpotter/ljp) http://github.com/mer-packages/connman https://github.com/mer-packages/crda.git https://github.com/mer-packages/wireless-regdb.git https://github.com/mer-packages/wpa_supplicant.git https://github.com/mer-packages/mobile-broadband-provider-info.git (APN list) https://github.com/nemomobile/libconnman-qt.git (new) https://github.com/nemomobile/connectionagent.git (new needed for UI enablement of ConnMan) * Updated PulseAudio 4.0 (Primary maintainer, Juho Hammilinen/jusa) http://github.com/mer-packages/pulseaudio https://github.com/mer-packages/sbc.git https://github.com/nemomobile/pulseaudio-modules-nemo.git (new) https://github.com/nemomobile-packages/libcanberra.git (new) * Updated Systemd to 208 (Primary maintainer, Pekka Lundstroem) http://github.com/mer-packages/systemd https://github.com/mer-packages/kmod.git https://github.com/nemomobile/systemd-user-session-targets.git (new) * Updated versions of Qt5 ports of Mer middleware such as KCalcore, Resource framework enablers, Accounts framework, Sensor framework https://github.com/mer-packages/mkcal https://github.com/mer-packages/kcalcore https://github.com/mer-packages/libresource https://github.com/mer-packages/libresourceqt https://github.com/nemomobile-packages/signon-plugin-oauth2.git (new) * BlueZ 4.101, - includes patches to successfully pass Bluetooth certifications https://github.com/mer-packages/bluez https://github.com/nemomobile-packages/openobex.git (new) https://github.com/nemomobile-packages/bluez-hcidump.git (new) https://github.com/nemomobile/libbluez-qt.git (new) https://github.com/nemomobile/obex-capability.git https://github.com/nemomobile-packages/obexd.git (Primary maintainer: Hannu Mallat) Wayland related updates and fixes: https://github.com/mer-packages/llvm.git https://github.com/mer-packages/mesa.git https://github.com/mer-packages/wayland.git https://github.com/mer-packages/libxkbcommon.git https://github.com/mer-packages/xkeyboard-config.git * Project config enablers to make X11-less builds in Mer, which will be default off (i.e. X11 enabled) in Mer QA builds and general package updates/build system adjustments: https://github.com/mer-packages/boardname.git https://github.com/mer-packages/build-compare.git https://github.com/mer-packages/busybox.git https://github.com/mer-packages/cairo.git https://github.com/mer-packages/gdb.git https://github.com/mer-packages/giflib.git https://github.com/mer-packages/glib2.git https://github.com/mer-packages/gst-plugins-bad-free.git https://github.com/mer-packages/gst-plugins-base.git https://github.com/mer-packages/libjpeg-turbo.git https://github.com/mer-packages/libyaml.git https://github.com/mer-packages/libzypp.git https://github.com/mer-packages/openssh.git https://github.com/mer-packages/pam.git https://github.com/mer-packages/pango.git https://github.com/mer-packages/pixman.git https://github.com/mer-packages/repomd-pattern-builder.git https://github.com/mer-packages/tzdata.git https://github.com/mer-packages/upower.git https://github.com/mer-packages/zlib.git The intended additional components to be merged into Mer: * Ruby (minimal) -- needed for QtWebKit for Qt5 builds. (Primary maintainer: Islam Amer) * libsystrace (for doing easier tracing of Mer/Qt5-based systems) https://github.com/mer-packages/libsystrace (Primary maintainer: Robin Burchell/w00t) Location framework: GeoClue: https://github.com/nemomobile-packages/geoclue.git (Primary maintainer: Aaron MacCarthy/amccarthy) Improvement for image creation and package updates: https://github.com/nemomobile/oneshot.git (Primary maintainer: Bernd Wachter/Aard) Replacement for unmaintained ContextKit, statefs https://github.com/nemomobile/cor.git https://github.com/nemomobile-packages/fuse.git https://github.com/nemomobile/statefs-loader-qt.git https://github.com/nemomobile/statefs-providers.git https://github.com/nemomobile/statefs-qt.git https://github.com/nemomobile/statefs.git (Primary maintainer: Denis Zalevski/dez) Utilizing a FUSE based file system for context information: Audio resource policy system independent bindings and completeness of Resource Policy implementation before partially in Mer: https://github.com/nemomobile/libaudioresource-qt.git https://github.com/nemomobile/libaudioresource.git https://github.com/nemomobile/libdres-ohm.git https://github.com/nemomobile-packages/swi-prolog.git https://github.com/nemomobile/libprolog.git https://github.com/nemomobile/libtrace-ohm.git https://github.com/nemomobile/ohm-plugins-misc.git https://github.com/nemomobile/ohm-rule-engine.git https://github.com/nemomobile/ohm.git https://github.com/nemomobile/policy-settings-common.git (Primary maintainer: Juha Hammalinen/jusa) Package Management daemon and bindings: https://github.com/nemomobile-packages/PackageKit-Qt.git https://github.com/nemomobile-packages/PackageKit.git https://github.com/nemomobile-packages/polkit-qt-1.git (Primary maintainer: Thomas Perl) Synchronization framework: (not obligatory) https://github.com/nemomobile/buteo-mtp.git https://github.com/nemomobile/buteo-sync-plugins-google-simple.git https://github.com/nemomobile/buteo-sync-plugins-google.git https://github.com/nemomobile/buteo-sync-plugins.git https://github.com/nemomobile/buteo-syncfw.git https://github.com/nemomobile/buteo-syncml.git BTRFS related support: (like e2fsprogs) https://github.com/nemomobile-packages/btrfs-progs.git oFono with ability to connect with Android RILD stack and bindings: https://github.com/nemomobile-packages/ofono (update) https://github.com/nemomobile/libqofono.git (new) https://github.com/nemomobile/tone-generator.git (new) Telepathy framework + oFono telepathy plugin: https://github.com/nemomobile/telepathy-accounts-signon.git https://github.com/nemomobile-packages/telepathy-farstream.git https://github.com/nemomobile-packages/telepathy-gabble.git https://github.com/nemomobile-packages/telepathy-glib.git https://github.com/nemomobile-packages/telepathy-mission-control.git https://github.com/nemomobile-packages/telepathy-qt.git https://github.com/nemomobile-packages/telepathy-rakia.git https://github.com/nemomobile/telepathy-ring.git https://github.com/nemomobile-packages/farstream.git Device state management: https://github.com/nemomobile/libiphb.git https://github.com/nemomobile/dsme.git https://github.com/nemomobile/libdsme.git https://github.com/nemomobile/mce-dev.git https://github.com/nemomobile/mce.git https://github.com/nemomobile/nemo-keepalive.git Primary maintainer: Simi Piironen/spiironen Communication logging and contacts framework: https://github.com/nemomobile/commhistory-daemon.git https://github.com/nemomobile/contactsd.git https://github.com/nemomobile/libcommhistory.git https://github.com/nemomobile/libcontacts.git https://github.com/nemomobile/qtcontacts-sqlite.git SDL2 framework (not obligatory) https://github.com/nemomobile-packages/libsdl-gfx.git https://github.com/nemomobile-packages/libsdl-image.git https://github.com/nemomobile-packages/libsdl-mixer.git https://github.com/nemomobile-packages/libsdl-net.git https://github.com/nemomobile-packages/libsdl-sound.git https://github.com/nemomobile-packages/libsdl-ttf.git https://github.com/nemomobile-packages/libsdl.git (Primary maintainer: Thomas Perl) Application booster - a method to start up Qt (and others) applications much faster: https://github.com/nemomobile/mapplauncherd-qt.git https://github.com/nemomobile/mapplauncherd.git (Primary Maintainer: John Brooks) Maliit Input Framework: https://github.com/nemomobile-packages/maliit-framework.git https://github.com/nemomobile-packages/maliit-plugins.git (Primary Maintainer: Pekka Vuorela) Time daemon (also for synchronization, alarms, timezone changes): https://github.com/nemomobile/timed.git https://github.com/nemomobile/tzdata-timed.git (Primary Maintainer: Petri M. Gerdt) QML Bindings for common middleware tasks: https://github.com/nemomobile/mlite.git https://github.com/nemomobile/nemo-qml-plugin-accounts.git https://github.com/nemomobile/nemo-qml-plugin-configuration.git https://github.com/nemomobile/nemo-qml-plugin-connectivity.git https://github.com/nemomobile/nemo-qml-plugin-contacts.git https://github.com/nemomobile/nemo-qml-plugin-contextkit.git https://github.com/nemomobile/nemo-qml-plugin-dbus.git https://github.com/nemomobile/nemo-qml-plugin-messages.git https://github.com/nemomobile/nemo-qml-plugin-notifications.git https://github.com/nemomobile/nemo-qml-plugin-policy.git https://github.com/nemomobile/nemo-qml-plugin-signon.git https://github.com/nemomobile/nemo-qml-plugin-social.git https://github.com/nemomobile/nemo-qml-plugin-systemsettings.git https://github.com/nemomobile/nemo-qml-plugin-thumbnailer.git https://github.com/nemomobile/nemo-qml-plugin-time.git Non-graphical feedback (vibrations, sound, etc) framework: https://github.com/nemomobile/fftune.git https://github.com/nemomobile/ngfd.git https://github.com/nemomobile/qt-mobility-haptics-ffmemless.git [for Qt5Feedback] https://github.com/nemomobile/libngf-qt.git https://github.com/nemomobile/libngf.git Seamless Software Updates: https://github.com/nemomobile/ssu.git - a way to authenticate access to repositories, easier do upgrades between updates, etc. Primary maintainer: Bernd Wachter/Aard Python3 + TheOtherSide bindings for Qt5: https://github.com/nemomobile-packages/python3.git https://github.com/nemomobile-packages/pyotherside.git Primary maintainer: Thomas Perl (thp) Media indexing framework (optional): https://github.com/nemomobile/libqtsparql.git https://github.com/nemomobile-packages/tracker.git https://github.com/nemomobile/tumbler.git [and likely a boatload of the dependencies below] Qt-based script framework and backup framework: https://github.com/nemomobile/cutes-js.git https://github.com/nemomobile/cutes.git https://github.com/nemomobile/the-vault.git Primary maintainer: Denis Zalevski (dez) Wayland compositor framework/lipstick: https://github.com/nemomobile/lipstick.git https://github.com/nemomobile/eventfeed.git https://github.com/nemomobile/libcontentaction.git Primary maintainer: Robin Burchell (w00t) Transfer management engine: https://github.com/nemomobile/transfer-engine.git Media playback and playlist management framework: https://github.com/nemomobile-packages/grilo-plugins.git https://github.com/nemomobile-packages/grilo.git https://github.com/nemomobile-packages/taglib.git https://github.com/nemomobile-packages/totem-pl-parser.git Social media framework: https://github.com/nemomobile/libsailfishkeyprovider.git https://github.com/nemomobile/libsocialcache.git User management framework: https://github.com/nemomobile/password-manager https://github.com/nemomobile/libshadowutils.git Framework for building telephony dialers with telepathy(-ring) and oFono: https://github.com/nemomobile/voicecall.git Gecko-based browser engine with Qt5 bindings: https://github.com/nemomobile-packages/embedlite-components.git https://github.com/nemomobile-packages/gecko-dev.git https://github.com/nemomobile-packages/yasm.git https://github.com/nemomobile-packages/qtmozembed.git USB mode management framework: https://github.com/nemomobile/usb-moded.git Primary maintainer: Phillipe De Swert Additional packages for discussion if they're alive or not and if other packages above depend on them and if they are not more part of UI. https://github.com/nemomobile-packages/aspell-en.git https://github.com/nemomobile-packages/aspell.git https://github.com/nemomobile-packages/calligra-extra-cmake-modules.git https://github.com/nemomobile-packages/enchant.git https://github.com/nemomobile-packages/exempi.git https://github.com/nemomobile-packages/fbset.git https://github.com/nemomobile/fingerterm.git https://github.com/nemomobile-packages/glib-networking.git https://github.com/nemomobile-packages/gmime.git https://github.com/nemomobile-packages/gnome-common.git https://github.com/nemomobile-packages/gst-plugins-good.git https://github.com/nemomobile-packages/hunspell.git https://github.com/nemomobile-packages/iotop.git https://github.com/nemomobile-packages/libcreds3.git https://github.com/nemomobile-packages/eigen2.git https://github.com/nemomobile-packages/libenca.git https://github.com/nemomobile-packages/libgdata.git https://github.com/nemomobile-packages/libgee.git https://github.com/nemomobile-packages/libgsf.git https://github.com/nemomobile/libiodata.git https://github.com/nemomobile/libmlocale.git https://github.com/nemomobile-packages/libnice.git https://github.com/nemomobile-packages/libopenal.git https://github.com/nemomobile/libprofile-qt.git https://github.com/nemomobile/quillmetadata.git https://github.com/nemomobile-packages/libquvi-scripts.git https://github.com/nemomobile-packages/libquvi.git https://github.com/nemomobile-packages/librest.git https://github.com/nemomobile-packages/libsmack.git https://github.com/nemomobile-packages/libsoup.git https://github.com/nemomobile-packages/lsof.git https://github.com/nemomobile/mapplauncherd-booster-qtcomponents.git https://github.com/nemomobile/mascara.git https://github.com/nemomobile/nemo-configs-n950-n9.git https://github.com/nemomobile/nemo-control-panel-applets.git https://github.com/nemomobile/nemo-qtmultimedia-plugins.git https://github.com/nemomobile/nemo-theme-default.git https://github.com/nemomobile-packages/poppler.git https://github.com/nemomobile/profiled.git https://github.com/nemomobile-packages/protobuf.git https://github.com/nemomobile-packages/python-openssl.git https://github.com/nemomobile-packages/python-imaging.git https://github.com/nemomobile-packages/python-twisted.git https://github.com/nemomobile-packages/python-zope-interface.git https://github.com/nemomobile/qmsystem.git https://github.com/nemomobile/qt-components.git https://github.com/nemomobile-packages/libquazip.git https://github.com/nemomobile/quillimagefilters.git https://github.com/nemomobile-packages/recode.git https://github.com/nemomobile-packages/screen.git https://github.com/nemomobile/sd-utils.git https://github.com/nemomobile-packages/smpeg.git https://github.com/nemomobile-packages/sound-theme-freedesktop.git https://github.com/nemomobile/tut.git https://github.com/nemomobile-packages/uthash.git https://github.com/nemomobile-packages/vala.git https://github.com/nemomobile/vmtouch.git If you claim meritocratic maintainership to any of these packages, please let me know and we'll set up access rights for merging and review rights accordingily after 1st of May 2014 if proposal holds. Protesting to the architectural and location move of your component is perfectly valid to do, as well. I believe from an architectural and project point of view that this move will strengthen Mer and related Nemo middleware components as a open source mobile platform in it's own right and make contribution and participation easier to understand, explain and do. With best regards, Carsten Munk Mer project architect