Tag Archives: LuneOS

LuneOS Browser: How to sideload Flash & WideVine plugins (Netflix, Amazon, YouTube Red)

Since the most recent release of LuneOS called “Decaf” which includes Qt 5.9.2, support for 3rd party browser plugins (such as Adobe Flash and Google’s WideVine CDM) has been added to the Browser App and has been enabled by default.

However the source code of these plugin binaries is not available and therefore these binaries cannot be compiled and provided in the LuneOS images.

The users would therefore need to manually install (sideload) the required plugin files from a source that has them available. Luckily there are ChromeOS recovery images available for the ARMv7 instruction set which is the same instruction set used by our HP Touchpad, Nexus 4 and Nexus 5. Looking at the list of ChromeOS devices located here and checking their specifications I believe that the Samsung Chomebook from 2012 with Codename “Snow” is a suitable candidate for example. Others that might work are:

  • Samsung Chromebook 2 – 11″, codename “Pit”
  • Samsung Chromebook 2 – 13″, codename “Pi”
  • HP Chromebook 11 G1, codename “Spring”
  • HP Chromebook 11 G2, codename “Skate”
  • ASUS Chromebook Flip C100PA, codename “Minnie”
  • ASUS Chromebook C201, codename “Speedy”
  • AOpen Chromebase Mini, codename “tiger”
  • Asus Chromebit CS10, codename “Mickey”
  • AOpen Chromebox Mini, codename “fievel”

In order to get Adobe Flash & WideVine CDM support you need to do the following:

  1. Download a ChromeOS ARM Recovery image, the best would be the one using the same Chrome/Chromium version, so 56. For example for the Samsung Chromebook codename “Snow” mentioned above as per this link.
  2. Extract the “chromeos_9000.91.0_daisy_recovery_stable-channel_snow-mp-v4.bin.zip” file.
  3. Once done, open “chromeos_9000.91.0_daisy_recovery_stable-channel_snow-mp-v4.bin” with a file archiver (for example 7-Zip on Windows).
  4. Open the ROOT-A.img file.
  5. Go to “/opt/google/chrome/”
  6. Extract “libwidevinecdm.so” and “libwidevinecdmadapter.so” into a separate folder.
  7. Go to “/opt/google/chrome/pepper/”
  8. Extract “libpepflashplayer.so” to the same folder as under 6.
  9. You will now have 3 files in this folder: “libwidevinecdm.so”, “libwidevinecdmadapter.so” and “libpepflashplayer.so”.
  10. Open a command prompt and go to folder with the 3 files.
  11. Now push each of the 3 files to “/usr/lib/chromium/” by means of “adb push libwidevinecdm.so /usr/lib/chromium/”, “adb push libwidevinecdmadapter.so /usr/lib/chromium/” and “adb push libpepflashplayer.so /usr/lib/chromium/”
  12. Restart your LuneOS device!
  13. Now go http://get.adobe.com/nl/flashplayer/about/ to see if Adobe Flash works. It will display you the supported version of Flash as per screenshot here:
  14. Flash Version

  15. Now go to https://shaka-player-demo.appspot.com/demo/ to see if WideVine works. It will show you the WideVine options in the dropdown in black instead of grey. When they show in black the WideVine plugin is properly installed and working.
Without WideVine Plugin
With working WideVine Plugin

LuneOS September Stable Release: Decaf

The long wait is over #LuneOS and #webOS fans! We’re back with a new release called “Decaf” which we believe will be a milestone in terms of developments and the way forward!

So you’re wondering what we’ve been up to the past 2+ months?

Well, actually a whole lot when you look at our changelog! We’ve been able to migrate from Qt 5.7 via 5.8 to 5.9.2 which is a long term support (LTS) release of Qt. This brings our web capabilities a lot more up to date! We’re on Chromium 56 based release now which dates back to January this year. This brings a lot of interesting new and modern HTML5 features such as Web Components that are used by Google’s Polymer framework, for example. It also offers us better plugin support. It’s now technically possible to sideload Flash & WideVine plugins and the sites using these can see and use the plugins. The plugins cannot be distributed in the image due to licensing issues, but users are free to sideload them.

This opens up the possibility to watch DRM protected content on sites like Netflix, YouTube etc.

Continue reading LuneOS September Stable Release: Decaf

LuneOS July Stable Release: Cortado

That took a while, but lots of ground has been covered! We’re finally back with a new release called “Cortado”. We have been working very hard behind the scenes during the past couple of months!

So you’re asking what we have done? Most importantly we now have all our supported targets on at least a 3.4 kernel which was a critical requirement in order to update Yocto to Pyro. Both glibc and systemd required this.

So the Touchpad, Nexus 4 and Nexus 5 are now all on a 3.4 kernel and on an Android 5.1-based build!

For the Touchpad we were able to already use the work done by the  Halium project and we’re now mainly using Halium 5.1 as a source for building the required Android bits!

This release is a bit of an intermediary release, so it’s not as stable as we would like it to be and as you are used to. We expect to address the remaining issues with the next release. We wanted to get this release out since it marks quite a milestone with all the underlying updates to the system.

We have also updated some of the UI bits and there is now a tablet layout similar to what was available on webOS 3.x with notifications at the top of the screen! Preware is now also working properly on targets with a landscape orientation like the Touchpad & VirtualBox (qemux86).

Due to the fact there’s no suitable 3.4 kernel available for the Galaxy Nexus (Maguro) we were forced to drop this as a porting target. We have also dropped support for Nexus 7 WiFi 2012 version (Grouper) due to the fact that none of the devs actually had this device and therefore we couldn’t test any updates.

We’re already full speed ahead with the update of QT from 5.6 to 5.8. This brings quite some challenges and requires quite some rework in various bits, but it seems things are progressing well.

Once the 5.8 upgrade has been completed we’ll be looking into updating to 5.9.1 in the near future as well since this will be a LTS (Long Term Support) release of QT. The upgrade from 5.8 to 5.9.x should be fairly straight forward since the changes aren’t that major.

We have the following items on our to-do list to focus on:

  • QT 5.7/5.8/5.9.1 Upgrade
  • Various UI tweaks
  • Messaging improvements
  • Camera improvements
  • Fix known issues on the various targets
  • Bring back official support for Touchpad 4G (current build works on Touchpad 4G but only WiFi).

Continue reading LuneOS July Stable Release: Cortado

LuneOS April Stable Release: Cold Brew

A bit later than expected but we’re back! Over 2 months passed since the last release and we’re finally back with a new release called “Cold Brew”. We have been working very hard behind the scenes in the past 2 months!

So you’re asking what we have done? Most importantly we now have an initial setup for camera working on both the N4 and N5 with an initial version of the app written in Qt (QML). It’s still pretty rough, but it will do basics for now.  Further improvements will come once we upgrade Qt to 5.7/5.8.

Behind the scenes we’ve been working on getting our Yocto updated to Pyro. This brings quite some challenges due to glibc (2.24) not being compatible with linux kernels < 3.2. Also the newer systemd version (232) brings some challenges in terms of kernel requirements, but we’ve been able to work around those for now.

For Mako (N4), Hammerhead (N5) this isn’t really a problem because we have a 3.4 based kernel, for the Tenderloin (Touchpad) there are 3.4 based kernels available as well, so we’ll be aiming to migrate to a 3.4 based kernel for Tenderloin.

For Maguro (Galaxy Nexus) the situation is unfortunately more problematic because there’s no real working 3.4 based kernel available currently. It’s therefore likely that as of next release we will be forced to drop support for the Galaxy Nexus.

We’re also taking part in in the Halium Project that was announced last week. There are already a lot of synergies between the various OS-es based on Android and also still quite some minor tweaks for each OS. By joining forces in the project we aim to have a common base for the various Android based OS-es.

We have the following items on our to-do list to focus on:

  • Work on Yocto Pyro upgrade
  • QT 5.7/5.8 Upgrade
  • Various UI tweaks
  • Messaging improvements
  • Camera improvements

Continue reading LuneOS April Stable Release: Cold Brew

Enyo Next-Gen enters private beta testing

EnyoJS is the javascript frame work used by webOS developers to create applications for both the legacy OS, LuneOS and LG’s TV OS.

Those following along will recall that the development team had moved onto a new version based on React.js and that this had potential implications for LuneOS.

The Enyo team have just begun a private beta of the next generation Enyo. What we know is that with LG’s TV arm as their main customer, the focus remains on TV sized apps. Though increased support for mobile is planned, it is currently limited. Also, the framework will have a new name when publicly released.

This next generation of Enyo will be of interest to those currently building apps with the platform, but may also attract developers already experienced with ReactJS.

For those engaging with this testing phase, we’d be interested in any comments. The webOS Ports team will no doubt also be interested in any app demos built with it too. You can comment at webOS Nation.