Add packages and configuration changes to allow Luna to start in QEMU (#1016)

* Added a lot more Luna packages. It is now possible to start Luna, complete the first use app, and use the system. ARM support still broken.
* Cleanup & testing fixes. Starting in a fresh qemu environment works, but isn't quite deterministic. See wiki page for details
This commit is contained in:
Alex Roth 2017-12-17 13:25:59 -05:00 committed by Oliver Smith
parent 157ecd3d67
commit 04d73a5824
39 changed files with 1241 additions and 35 deletions

View file

@ -0,0 +1,30 @@
pkgname=activitymanager
pkgver=124_git20160928
pkgrel=0
_commit=1e3e1f2a94bf57f9174b3e536b0b5c9b3a2b3d28
pkgdesc="Open webOS component to manage all running activities"
arch="all"
url="https://github.com/webOS-ports/activitymanager"
license="GPL-3.0+"
depends="glib luna-service2 libressl db8 boost nyx-lib pmloglib"
makedepends="cmake-modules-webos glib-dev luna-service2-dev libressl-dev db8-dev boost-dev nyx-lib-dev pmloglib-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/activitymanager/archive/$_commit.tar.gz compile.patch"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="7d552fce050f0acd24fbe97e470ecda697e2a13b41efc1cfb27cde6849ac5030d5200ca579ab459e11224292c22e72daa19e0ee115367309fe335f628513cd0a activitymanager-1e3e1f2a94bf57f9174b3e536b0b5c9b3a2b3d28.tar.gz
b5f56de1e3037730c85f348ee8da674ce3ac86a20614ac031fa412a3f0fc827ddc1ea459c069a1237eec8418167187b9ecb35dd2239a8f74289a93cf7a5f2e30 compile.patch"

View file

@ -0,0 +1,44 @@
diff --git a/src/Activity.cpp b/src/Activity.cpp
index b44f14f..01809e0 100644
--- a/src/Activity.cpp
+++ b/src/Activity.cpp
@@ -381,7 +381,7 @@ void Activity::ClearTrigger()
bool Activity::HasTrigger() const
{
- return m_trigger;
+ return !!m_trigger;
}
void Activity::Triggered(boost::shared_ptr<Trigger> trigger)
@@ -417,7 +417,7 @@ boost::shared_ptr<Callback> Activity::GetCallback()
bool Activity::HasCallback() const
{
- return m_callback;
+ return !!m_callback;
}
void Activity::CallbackFailed(boost::shared_ptr<Callback> callback,
@@ -983,7 +983,7 @@ boost::shared_ptr<PowerActivity> Activity::GetPowerActivity()
bool Activity::IsPowerActivity() const
{
- return m_powerActivity;
+ return !!m_powerActivity;
}
void Activity::PowerLockedNotification()
diff --git a/src/MojoTriggerSubscription.cpp b/src/MojoTriggerSubscription.cpp
index fada064..3fcd2a6 100644
--- a/src/MojoTriggerSubscription.cpp
+++ b/src/MojoTriggerSubscription.cpp
@@ -60,7 +60,7 @@ void MojoTriggerSubscription::Unsubscribe()
bool MojoTriggerSubscription::IsSubscribed() const
{
- return m_call;
+ return !!m_call;
}
void MojoTriggerSubscription::ProcessResponse(MojServiceMessage *msg,

View file

@ -0,0 +1,29 @@
pkgname=configurator
pkgver=59_git20160928
pkgrel=0
_commit=45fb8458100a90fd7700a759c10836ead4760e20
pkgdesc="Creates the database schema for webOS Applications"
arch="all"
url="https://github.com/webOS-ports/configurator"
license="GPL-3.0+"
depends="glib luna-service2 db8 json-c pmloglib"
makedepends="cmake-modules-webos glib-dev luna-service2-dev db8-dev json-c-dev pmloglib-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/configurator/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="4e606ad97e509bc0b58b0d835c03ae4f54ed4c3874cd00483948e0d145e74aaa38421f8625da902b53616f2974ae1851eea9609c0c3bf58cf3c6addd69ad1d79 configurator-45fb8458100a90fd7700a759c10836ead4760e20.tar.gz"

34
luna/db8/APKBUILD Normal file
View file

@ -0,0 +1,34 @@
pkgname=db8
pkgver=149_git20170911
pkgrel=1
_commit=6bb08a67b2374affc08ce8a6c8866a93f0983fb6
pkgdesc="The no-SQL database for webOS"
arch="all"
url="https://github.com/webOS-ports/db8"
license="GPL-3.0+"
depends="glib luna-service2 pmloglib icu db boost leveldb"
makedepends="cmake-modules-webos glib-dev luna-service2-dev pmloglib-dev icu-dev db-dev db-c++ boost-dev leveldb-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/db8/archive/$_commit.tar.gz
remove-np-pthread.patch"
options="!check"
subpackages="$pkgname-dev"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
rm "$pkgdir"/usr/lib/db8/tests/dbgen
rmdir "$pkgdir"/usr/lib/db8/tests/
}
sha512sums="e62ae979ae287b73b04f914acc3074de089e12ca9de9e47f5ae05966d31ad76683fa8ba6335c1c5035a07e4e95ae02b7b9c670a8b93cc5656391344be7b4f707 db8-6bb08a67b2374affc08ce8a6c8866a93f0983fb6.tar.gz
cf930a9dbcbcceb17dea47a5038551b7a21896da5caa56a50f26137c31c5fc27ac579f343298bb1bd72424b4b932d0e91b3585f02015e35dc1b2dabffa3bfb14 remove-np-pthread.patch"

View file

@ -0,0 +1,140 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 3162e89..a3af42f 100755
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -287,6 +287,6 @@ if (WEBOS_CONFIG_BUILD_TESTS)
endif()
add_subdirectory(tool/dbgen)
-add_subdirectory(tool/sandwichmigrate)
+#add_subdirectory(tool/sandwichmigrate)
add_custom_target(check COMMAND ${CMAKE_CTEST_COMMAND} --output-on-failure ${ctest_args})
diff --git a/inc/core/MojOs.h b/inc/core/MojOs.h
index c802f9f..57979c6 100755
--- a/inc/core/MojOs.h
+++ b/inc/core/MojOs.h
@@ -20,6 +20,8 @@
#ifndef MOJOS_H_
#define MOJOS_H_
+#include <fcntl.h>
+
#ifdef MOJ_HAVE_CTYPE_H
# include <ctype.h>
#endif
diff --git a/inc/core/MojUtil.h b/inc/core/MojUtil.h
index 0a50b05..2019efc 100755
--- a/inc/core/MojUtil.h
+++ b/inc/core/MojUtil.h
@@ -56,7 +56,7 @@ template<class T>
MojSize MojBinarySearch(T key, const T* array, MojSize numElems);
template<class T, class COMP>
-void MojQuickSort(T* array, MojSize numElems, const COMP& comp = COMP());
+void MojQuickSort(T* array, MojSize numElems, const COMP& comp);
template<class T>
void MojQuickSort(T* array, MojSize numElems);
diff --git a/inc/core/internal/MojConfigLinux.h b/inc/core/internal/MojConfigLinux.h
index 606de27..d9a6b97 100644
--- a/inc/core/internal/MojConfigLinux.h
+++ b/inc/core/internal/MojConfigLinux.h
@@ -25,8 +25,8 @@
#define MOJ_USE_READDIR
#define MOJ_USE_MEMRCHR
#define MOJ_USE_GNU_STRERROR_R
-#define MOJ_USE_RANDOM_R
-#define MOJ_USE_SRANDOM_R
+#define MOJ_USE_RANDOM
+#define MOJ_USE_SRANDOM
#define MOJ_NEED_ATOMIC_INIT
#define MOJ_NEED_ATOMIC_DESTROY
diff --git a/inc/core/internal/MojOsInternal.h b/inc/core/internal/MojOsInternal.h
index a44923b..c5d9286 100644
--- a/inc/core/internal/MojOsInternal.h
+++ b/inc/core/internal/MojOsInternal.h
@@ -58,20 +58,19 @@ inline MojErr MojErrno()
}
#endif /* MOJ_USE_ERRNO */
-#ifdef MOJ_USE_GNU_STRERROR_R
+#if 0
inline const MojChar* MojStrError(int err, MojChar* buf, MojSize bufLen)
{
return strerror_r(err, buf, bufLen);
}
#endif /* MOJ_USE_GNU_STRERROR_R */
-#ifdef MOJ_USE_POSIX_STRERROR_R
+
inline const MojChar* MojStrError(int err, MojChar* buf, MojSize bufLen)
{
strerror_r(err, buf, bufLen);
return buf;
}
-#endif /* MOJ_USE_POSIX_STRERROR_R */
#ifdef MOJ_NEED_DEBUGBREAK
inline void MojDebugBreak()
@@ -346,7 +345,7 @@ inline MojErr MojThreadYield()
#ifdef __USE_GNU
return (MojErr) pthread_yield();
#else
- pthread_yield_np();
+ sched_yield();
return MojErrNone;
#endif
}
diff --git a/inc/core/internal/MojUtilInternal.h b/inc/core/internal/MojUtilInternal.h
index a7bd5a5..597ade4 100644
--- a/inc/core/internal/MojUtilInternal.h
+++ b/inc/core/internal/MojUtilInternal.h
@@ -165,7 +165,7 @@ void MojQuickSortImpl(T* array, MojSize left, MojSize right, const COMP& comp)
}
template<class T, class COMP>
-inline void MojQuickSort(T* array, MojSize numElems, const COMP& comp = COMP())
+inline void MojQuickSort(T* array, MojSize numElems, const COMP& comp)
{
return MojQuickSortImpl<T, COMP>(array, 0, numElems, comp);
}
diff --git a/inc/core/internal/MojVectorInternal.h b/inc/core/internal/MojVectorInternal.h
index 94ae45a..ecbea9d 100644
--- a/inc/core/internal/MojVectorInternal.h
+++ b/inc/core/internal/MojVectorInternal.h
@@ -305,7 +305,7 @@ MojErr MojVector<T, EQ, COMP>::sort()
if (size() > 1) {
MojErr err = ensureWritable();
MojErrCheck(err);
- MojQuickSort<T, COMP>(m_begin, size());
+ MojQuickSort<T, COMP>(m_begin, size(), COMP());
}
return MojErrNone;
}
diff --git a/src/core/MojLogEngine.cpp b/src/core/MojLogEngine.cpp
index 3291d7e..5049694 100644
--- a/src/core/MojLogEngine.cpp
+++ b/src/core/MojLogEngine.cpp
@@ -20,6 +20,7 @@
#include "core/MojLogEngine.h"
#include "core/MojObject.h"
#include "core/MojTime.h"
+#include "core/MojOs.h"
#ifdef MOJ_HAVE_SYSLOG_H
# include "syslog.h"
diff --git a/src/db-luna/BackendBuildRules.cmake b/src/db-luna/BackendBuildRules.cmake
index 5b480b9..29bd32d 100644
--- a/src/db-luna/BackendBuildRules.cmake
+++ b/src/db-luna/BackendBuildRules.cmake
@@ -24,7 +24,7 @@
# Optional variable:
# DB_BACKEND_WRAPPER_CFLAGS - compiller flags
-set(WEBOS_DB8_BACKEND "sandwich" CACHE STRING "Backend(s) to use with DB8")
+set(WEBOS_DB8_BACKEND "leveldb" CACHE STRING "Backend(s) to use with DB8")
foreach (backend ${WEBOS_DB8_BACKEND})
message (STATUS "Use database frontend: ${backend}")

22
luna/enyo/APKBUILD Normal file
View file

@ -0,0 +1,22 @@
pkgname=enyo
pkgver=1.0_git20170811
pkgrel=0
_commit=6c4a64ddcf0b0f97cb1af58774c8f8b005540475
pkgdesc="EnyoJS webapp framework"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/enyo-1.0/archive/$_commit.tar.gz"
builddir="$srcdir/$pkgname-1.0-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/frameworks/enyo/0.10/framework
cp -vrf ./framework/* "$pkgdir"/usr/palm/frameworks/enyo/0.10/framework
ln -vs 0.10 "$pkgdir"/usr/palm/frameworks/enyo/1.0
}
sha512sums="2a41b37dacd510222d610575cc568effd95e8aeaa146a8d343f6c0c00603fe770542c78c71a036d021ae1182b94d0a23ec565368f0a83f77b35f2deb811fc606 enyo-6c4a64ddcf0b0f97cb1af58774c8f8b005540475.tar.gz"

View file

@ -0,0 +1,50 @@
From 827b323ee9a6db04c1f5b644abea0ced2095096a Mon Sep 17 00:00:00 2001
From: Christophe Chapuis <chris.chapuis@gmail.com>
Date: Tue, 26 Jan 2016 18:56:42 +0100
Subject: [PATCH] Don't use MeeGo as prefix in order to make this a common
component
Signed-off-by: Christophe Chapuis <chris.chapuis@gmail.com>
Signed-off-by: Herman van Hazendonk <github.com@herrie.org>
---
plugin/plugin.cpp | 2 +-
plugin/plugin.pro | 2 +-
plugin/qmldir | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/plugin/plugin.cpp b/plugin/plugin.cpp
index a383482..451c95f 100644
--- a/plugin/plugin.cpp
+++ b/plugin/plugin.cpp
@@ -24,7 +24,7 @@
class ConnmanPlugin: public QQmlExtensionPlugin
{
Q_OBJECT
- Q_PLUGIN_METADATA(IID "MeeGo.Connman")
+ Q_PLUGIN_METADATA(IID "Connman")
public:
void registerTypes(const char *uri);
diff --git a/plugin/plugin.pro b/plugin/plugin.pro
index c4f54cf..3763f57 100644
--- a/plugin/plugin.pro
+++ b/plugin/plugin.pro
@@ -17,7 +17,7 @@ LIBS += -l$$qtLibraryTarget(connman-$$TARGET_SUFFIX)
QT += qml
OTHER_FILES += plugin.json qmldirs
-MODULENAME = MeeGo/Connman
+MODULENAME = Connman
TARGETPATH = $$[QT_INSTALL_QML]/$$MODULENAME
target.path = $$TARGETPATH
diff --git a/plugin/qmldir b/plugin/qmldir
index 5db82b7..de56688 100644
--- a/plugin/qmldir
+++ b/plugin/qmldir
@@ -1,2 +1,2 @@
-module MeeGo.Connman
+module Connman
plugin ConnmanQtDeclarative
--
2.11.0.windows.3

View file

@ -0,0 +1,27 @@
pkgname=libconnman-qt
pkgver=1.2.6
pkgrel=0
_commit=b2230677396fb27e3f8e47e4ce9792e578f5555c
pkgdesc="QT interface to connman"
arch="all"
url="https://git.merproject.org/mer-core/libconnman-qt/"
license="GPL-3.0+"
depends="qt5-qtbase connman qt5-qtdeclarative qt5-qtquickcontrols2"
makedepends="qt5-qtbase-dev connman-dev qt5-qtdeclarative-dev qt5-qtquickcontrols2-dev"
source="$pkgname-$pkgver.tar.gz::https://git.merproject.org/mer-core/libconnman-qt/repository/archive.tar.gz?ref=$pkgver
0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch"
builddir="$srcdir/$pkgname-$pkgver-$_commit"
options="!check"
subpackages="$pkgname-dev"
build() {
qmake-qt5
make
}
package() {
cd "$builddir"
make install INSTALL_ROOT="$pkgdir"
}
sha512sums="1a2b4308a5827e6cc25d639f55bea18272bda92f0d9cc225498ac1778d52f5a67fdc7bdd69efba8d9910c7766029ff4ffc0c795ff56a740aa6a0c2772e4713ef libconnman-qt-1.2.6.tar.gz
fbd2335342526561445b2b98aac7f5f3c83e0a76be8d0141fc88e95cf016bca873741d05cd487ce43d2aac906656259a8b0d3c1d6ca50b568d57739a64777a62 0001-Don-t-use-MeeGo-as-prefix-in-order-to-make-this-a-co.patch"

View file

@ -0,0 +1,30 @@
pkgname=libwebos-application
pkgver=3.0.0_git20140327
pkgrel=0
_commit=8d5ce985fec7a9fc5b514be306a74193b6139f5b
pkgdesc="Implements lifecycle support for native webOS applications"
arch="all"
url="https://github.com/webOS-ports/luna-qml-launcher"
license="GPL-3.0+"
depends="glib luna-service2 libpbnjson"
makedepends="cmake-modules-webos glib-dev luna-service2-dev libpbnjson-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/libwebos-application/archive/$_commit.tar.gz"
options="!check"
subpackages="$pkgname-dev"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="0e0b6a92e5c85f71e01521d31771123186788e3a1ef0e9990e565cf940f34cd42147e02e9ec9636ad1df2e0da7ece416c48bc181c33d536d43a785e82232729c libwebos-application-8d5ce985fec7a9fc5b514be306a74193b6139f5b.tar.gz"

View file

@ -0,0 +1,36 @@
pkgname=luna-app-browser
pkgver=8.0.0_git20171004
pkgrel=2
_commit=7e7a8f477039483c3a05f53a2eb980884560dc32
pkgdesc="LuneOS web browser"
# Disabled for armhf, aarch64 (see #1008)
arch="x86_64"
url="http://webos-ports.org"
license="GPL-3.0+"
depends="qt5-qtquickcontrols2 qt5-qtquickcontrols qt5-qtwebengine"
makedepends="cmake-modules-webos qt5-qtquickcontrols2-dev qt5-qtwebengine-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/org.webosports.app.browser/archive/$_commit.tar.gz
fix-qtwebengine-private-includes.patch"
builddir="$srcdir/org.webosports.app.browser-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
install -d "$pkgdir"/etc/palm/db/kinds
install -d "$pkgdir"/etc/palm/db/permissions
install -v -m644 "$builddir"/configuration/db/kinds/* "$pkgdir"/etc/palm/db/kinds
install -v -m644 "$builddir"/configuration/db/permissions/* "$pkgdir"/etc/palm/db/permissions
}
sha512sums="e12b6061bd36a87cf836415f99653c533edb3eb6f25947d983d03a21faad7de8874638923071842103373682c2060459a86eb895ac6e212156eaf9d01aa654f2 luna-app-browser-7e7a8f477039483c3a05f53a2eb980884560dc32.tar.gz
1a764b7d091878c6702e7e24178907fc9b48512be4bcb334e1cba57c4aad26650806190bdd916d67a25c0e95bd69075ba6012eb984f9192f6af8c0e8e1555f47 fix-qtwebengine-private-includes.patch"

View file

@ -0,0 +1,14 @@
diff --git a/plugin/CMakeLists.txt b/plugin/CMakeLists.txt
index 36aef53..bb7b38c 100644
--- a/plugin/CMakeLists.txt
+++ b/plugin/CMakeLists.txt
@@ -1,4 +1,9 @@
+set(QTWEBENGINE_REAL_PRIVATE_INCLUDES "/usr/include/QtWebEngine/${Qt5WebEngine_VERSION}")
+set(QTWEBENGINE_REAL_PRIVATE_INCLUDES2 "/usr/include/QtWebEngine/${Qt5WebEngine_VERSION}/QtWebEngine")
+
include_directories(
+ ${QTWEBENGINE_REAL_PRIVATE_INCLUDES}
+ ${QTWEBENGINE_REAL_PRIVATE_INCLUDES2}
${Qt5WebEngine_PRIVATE_INCLUDE_DIRS}
${Qt5Quick_PRIVATE_INCLUDE_DIRS})

View file

@ -0,0 +1,78 @@
pkgname=luna-app-services
pkgver=4.0.0_git20160804
pkgrel=1
_commit=9cbee99870d0edba0b30cb569514be16ccf1999c
pkgdesc="Services used by coreapps."
arch="all"
url="https://github.com/webOS-ports/app-services"
license="GPL-3.0+"
depends="mojoservicelauncher"
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/app-services/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/app-services-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/services
install -d "$pkgdir"/etc/palm/db/kinds
install -d "$pkgdir"/etc/palm/db/permissions
install -d "$pkgdir"/etc/palm/mediadb/kinds
install -d "$pkgdir"/etc/palm/mediadb/permissions
install -d "$pkgdir"/etc/palm/activities
install -d "$pkgdir"/etc/palm/filecache_types
install -d "$pkgdir"/usr/share/dbus-1/services
install -d "$pkgdir"/usr/share/dbus-1/system-services
install -d "$pkgdir"/usr/share/ls2/roles/pub
install -d "$pkgdir"/usr/share/ls2/roles/prv
install -d "$pkgdir"/usr/share/ls2/services/pub
install -d "$pkgdir"/usr/share/ls2/services/prv
install -d "$pkgdir"/usr/share/ls2/roles/pub
install -d "$pkgdir"/usr/share/ls2/roles/prv
install -d "$pkgdir"/usr/share/ls2-dev/services/pub
install -d "$pkgdir"/usr/share/ls2-dev/services/prv
install -d "$pkgdir"/usr/share/ls2-dev/roles/pub
install -d "$pkgdir"/usr/share/ls2-dev/roles/prv
install -d "$pkgdir"/var/palm/data/com.palm.appInstallService
install -d "$pkgdir"/usr/palm/public/accounts
install -d "$pkgdir"/etc/palm/tempdb/kinds
install -d "$pkgdir"/etc/palm/tempdb/permissions
install -d "$pkgdir"/etc/palm/event.d
install -d "$pkgdir"/etc/palm/init
for SERVICE in $(ls -d1 ./com.palm.service.*); do
SERVICE_DIR=$(basename $SERVICE)
install -d "$pkgdir"/usr/palm/services/$SERVICE_DIR/
cp -vrf $SERVICE/* "$pkgdir"/usr/palm/services/$SERVICE_DIR/
# Copy db8 kinds, permissions and activities
cp -vrf $SERVICE/db/kinds/* "$pkgdir"/etc/palm/db/kinds 2> /dev/null || true
cp -vrf $SERVICE/db/permissions/* "$pkgdir"/etc/palm/db/permissions 2> /dev/null || true
cp -vrf $SERVICE/activities/* "$pkgdir"/etc/palm/activities 2> /dev/null || true
cp -vrf $SERVICE/filecache_types/* "$pkgdir"/etc/palm/filecache_types 2> /dev/null || true
# Copy services and roles files
cp -vrf $SERVICE/files/sysbus/*.json "$pkgdir"/usr/share/ls2/roles/pub 2> /dev/null || true
cp -vrf $SERVICE/files/sysbus/*.json "$pkgdir"/usr/share/ls2/roles/prv 2> /dev/null || true
cp -vrf $SERVICE/files/sysbus/*.service "$pkgdir"/usr/share/ls2/services/prv 2> /dev/null || true
done
# install account services files in public service directory.
cp -vrf ./com.palm.service.accounts/files/sysbus/*.service "$pkgdir"/usr/share/ls2/services/pub 2> /dev/null || true
# install account service desktop credentials db kind
cp -vrf ./com.palm.service.accounts/desktop/com.palm.account.credentials "$pkgdir"/etc/palm/db/kinds 2> /dev/null || true
# install account templates.
cp -vrf ./account-templates/palmprofile/com.palm.palmprofile "$pkgdir"/usr/palm/public/accounts
# install temp db kinds and permissions
cp -vrf com.palm.service.accounts/tempdb/kinds/* "$pkgdir"/etc/palm/tempdb/kinds/
cp -vrf com.palm.service.accounts/tempdb/permissions/* "$pkgdir"/etc/palm/tempdb/permissions
# install account service upstart files
install -m 644 com.palm.service.accounts/files/etc/event.d/createLocalAccount "$pkgdir"/etc/palm/event.d/
install -m 644 com.palm.service.accounts/files/etc/init/createLocalAccount.conf "$pkgdir"/etc/palm/init/
# create folder for contact linker plugins
mkdir -p "$pkgdir"/etc/palm/contact_linker_plugins
}
sha512sums="0ff50759de3c52546bad213be544771f821a0c4fa6fe20a4953693510ebde2b3897f9e1bcb7026e5c7e36de080fa600863faa170d206f93447ad50efd6f99105 luna-app-services-9cbee99870d0edba0b30cb569514be16ccf1999c.tar.gz"

View file

@ -0,0 +1,20 @@
pkgname=luna-applauncher
pkgver=0.90_git20171025
pkgrel=0
_commit=ada4aabfb5e0ffa127afab3957b4be2d84f76fe3
pkgdesc="WebOS app launcher"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends="enyo webos-underscore mojoloader webos-foundation"
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/$pkgname/archive/$_commit.tar.gz"
builddir="$srcdir/$pkgname-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/applications/com.palm.launcher
cp -vrf * "$pkgdir"/usr/palm/applications/com.palm.launcher
}
sha512sums="8191af9fb94eddde0c39df42c570369aafcf04e6d89b6a1a3f40ca090c8bfd9281394f71aa34bcf222ecbbcc98e6769f8c58f0df64c73a97b657eda41f5010b5 luna-applauncher-ada4aabfb5e0ffa127afab3957b4be2d84f76fe3.tar.gz"

View file

@ -0,0 +1,42 @@
pkgname=luna-core-apps
pkgver=1.0.5_git20170804
pkgrel=1
_commit=da721460474039a2412dc6f47a2e8464e38fc6fd
pkgdesc="The new webOS UI of the webOS ports project."
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends="luna-webappmanager enyo luna-app-services"
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/core-apps/archive/$_commit.tar.gz"
builddir="$srcdir/core-apps-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/applications
install -d "$pkgdir"/etc/palm/db/kinds
install -d "$pkgdir"/etc/palm/db/permissions
install -d "$pkgdir"/etc/palm/activities
for COREAPPS in $(ls -d1 ./com.palm.app*); do
COREAPPS_DIR=$(basename $COREAPPS)
install -d "$pkgdir"/usr/palm/applications/$COREAPPS_DIR/
cp -vrf $COREAPPS/* "$pkgdir"/usr/palm/applications/$COREAPPS_DIR/
if [ -d $COREAPPS/configuration/db/kinds ]; then
install -v -m 644 $COREAPPS/configuration/db/kinds/* "$pkgdir"/etc/palm/db/kinds
fi
if [ -d $COREAPPS/configuration/db/permissions ]; then
install -v -m 644 $COREAPPS/configuration/db/permissions/* "$pkgdir"/etc/palm/db/permissions
fi
if [ -d $COREAPPS/configuration/activities ]; then
cp -vrf $COREAPPS/configuration/activities/* "$pkgdir"/etc/palm/activities/
fi
done
}
sha512sums="0e0f93ec7cce52cb0b7d3e90b177da69ef0d8d8bb2b8629cf861f5de914cf3300198f4000b69e5dd7e8f55feb1c8e4344793f0a8b2764dd143bb80a000f92e2e luna-core-apps-da721460474039a2412dc6f47a2e8464e38fc6fd.tar.gz"

View file

@ -0,0 +1,30 @@
pkgname=luna-firstuse
pkgver=7.0.0_git20171102
pkgrel=1
_commit=5acfe2bd0c1b3435ed0cbf9b021945202d0d2f86
pkgdesc="LuneOS first use application"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends="qt5-qtquickcontrols2 qt5-qtquickcontrols"
makedepends="cmake-modules-webos qt5-qtquickcontrols2-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/org.webosports.app.firstuse/archive/$_commit.tar.gz
locale.patch"
builddir="$srcdir/org.webosports.app.firstuse-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="7d335910482e7cbba2798cfb62df73158ca178f2b663812d25e89d29606352898d8be40e7fb1fc44118b7f1f6763cd48d00353c489c660dcbce681fa696f0de7 luna-firstuse-5acfe2bd0c1b3435ed0cbf9b021945202d0d2f86.tar.gz
d7e5a2b96dd6da82cd695ca88181d429ed6166a28f89f8dc6f69d41c4a095e0cb4b5dcaa4494f73c45be6a74aaa81bbe7dd28d719affc332856975b90ed36837 locale.patch"

View file

@ -0,0 +1,17 @@
diff --git a/qml/LocalePage.qml b/qml/LocalePage.qml
index 68249d2..1967525 100644
--- a/qml/LocalePage.qml
+++ b/qml/LocalePage.qml
@@ -79,6 +79,12 @@ BasePage {
currentLocale = response.locale;
console.log("Current locale " + JSON.stringify(currentLocale));
}
+ else {
+ currentLocale = {
+ languageCode: 'un',
+ countryCode: 'un'
+ }
+ }
// now we can fetch all possible values and setup our model
service.call("luna://com.palm.systemservice/getPreferenceValues", JSON.stringify({key: "locale"}), fetchLocalesSuccess, fetchLocalesFailure);

View file

@ -1,6 +1,6 @@
pkgname=luna-init
pkgver=5.0.0_git20171117
pkgrel=0
pkgrel=1
_commit=5fff640fb0b9f3e973c13d1620889b2da4c11766
pkgdesc="Initialization and font setup files used by luna-sysmgr."
arch="all"
@ -12,12 +12,8 @@ source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/luna-init/archi
options="!check"
builddir="$srcdir/$pkgname-$_commit"
prepare() {
default_prepare
mkdir -p "$srcdir"/build
}
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
@ -28,6 +24,16 @@ build() {
package() {
cd "$srcdir"/build
# The cmake install file doesn't install everything in the right spot.
make DESTDIR="$pkgdir" install
install -d "$pkgdir"/etc/palm
install -v -m 644 "$builddir"/files/conf/locale.txt "$pkgdir"/etc/palm
install -v -m 644 "$builddir"/files/conf/defaultPreferences.txt "$pkgdir"/etc/palm
install -v -m 644 "$builddir"/src/mccInfo.json "$pkgdir"/etc/palm
install -v -m 644 "$builddir"/files/conf/default-dock-positions.json "$pkgdir"/etc/palm
install -v -m 644 "$builddir"/files/conf/default-launcher-page-layout.json "$pkgdir"/etc/palm
install -v -m 644 "$builddir"/files/conf/locale.txt "$pkgdir"/etc/palm
}
sha512sums="9278b53e8358230e0979d314958a02ada6d68a68b97e253d81ffc5132901cf7aa033c8d908530cbf36c422a161a3f80cc70f1ddb3e0e4b3fae86183c39d10b95 luna-init-5fff640fb0b9f3e973c13d1620889b2da4c11766.tar.gz"

View file

@ -0,0 +1,31 @@
pkgname=luna-qml-launcher
pkgver=5.0.0_git20171102
pkgrel=0
_commit=aacef1d20c9c3656db4ecff949f23231120f8449
pkgdesc="Launcher for Lune OS based QML applications"
# Disabled for armhf, aarch64 (see #1008)
arch="x86_64"
url="https://github.com/webOS-ports/luna-qml-launcher"
license="GPL-3.0+"
depends="qt5-qtwebengine qt5-qtquickcontrols2 luna-service2 luna-sysmgr-common glib libwebos-application json-c"
makedepends="cmake-modules-webos qt5-qtwebengine-dev qt5-qtquickcontrols2-dev luna-sysmgr-common-dev glib-dev luna-service2-dev libwebos-application-dev json-c-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/luna-qml-launcher/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/ \
-DOE_QMAKE_PATH_QML=/usr/lib/qt5/qml/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="3f2ad84e0b1804741165bd67ebf54577961020e75e98a6072a85b728973d3a9a7e5774f6c804fc71a21f625b1dc0808cc9e21b93dd1a4ef7674f5a7820a4dd7f luna-qml-launcher-aacef1d20c9c3656db4ecff949f23231120f8449.tar.gz"

View file

@ -1,6 +1,6 @@
pkgname=luna-service2
pkgver=3.2.0_git20170505
pkgrel=0
pkgrel=1
_commit=1e2e1a53c089003da333609946dddf063244ee34
pkgdesc="Open webOS Luna System Bus library, daemon, and utilities"
arch="all"
@ -10,7 +10,7 @@ depends="glib pmloglib libpbnjson"
makedepends="cmake-modules-webos glib-dev libpbnjson-dev pmloglib-dev"
depends_dev="glib-dev libpbnjson-dev pmloglib-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/luna-service2/archive/$_commit.tar.gz
remove-systemd-harddep.patch remove-malloc-debug.patch"
remove-systemd-harddep.patch remove-malloc-debug.patch ls-private.conf ls-public.conf"
subpackages="$pkgname-dev"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
@ -33,7 +33,11 @@ build() {
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
cp "$srcdir"/ls-private.conf "$pkgdir"/etc/luna-service2/ls-private.conf
cp "$srcdir"/ls-public.conf "$pkgdir"/etc/luna-service2/ls-public.conf
}
sha512sums="862b04ad58a786b7ce810a9864a2580addd4d9757c1d8825f86f5a817a75daa83d360d4c3ceb26e512e868ba2379ba11e049e79fac84411f6758257cbe71909d luna-service2-1e2e1a53c089003da333609946dddf063244ee34.tar.gz
c8223795eebd9b0e7037f1ba130d6b4e58496483e886a50a76ed79ef61ed76ebc729f8d031ae9110d80f1ef029e4c8f9529edb483608bdc4aafb39a1bb5e8562 remove-systemd-harddep.patch
2d35d056c445d25dc970fc176d1326fb93c682ebff0501a79ed2b41d5eda7fde36be0bed96e34776f234c59a95b1e29889e0ba5bec48c321e091f93db0220700 remove-malloc-debug.patch"
2d35d056c445d25dc970fc176d1326fb93c682ebff0501a79ed2b41d5eda7fde36be0bed96e34776f234c59a95b1e29889e0ba5bec48c321e091f93db0220700 remove-malloc-debug.patch
a440cb959109c0315cdb0fbe36ec358510d9699de246326d2019957f0de36f521bd88102432f94dc2dc8de45534810a935b9a1f91e9c220044b3aa4c61635a28 ls-private.conf
0c3b03949a6f78d7bbdb3fedea2c797cda478b5a58057693dc258487c9d7c75a818f5202bd8f28f51d4cfb0ab7431f7be49667026cd4442be425b3e525c0fde5 ls-public.conf"

View file

@ -0,0 +1,46 @@
# @@@LICENSE
#
# Copyright (c) 2008-2013 LG Electronics, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# LICENSE@@@
[General]
LocalSocketDirectory=/var/run/ls2
PidDirectory=/var/run/ls2
LogServiceStatus=false
ConnectTimeout=20000
[Watchdog]
Timeout=60
FailureMode=noop
[Dynamic Services]
Directories=/usr/share/dbus-1/system-services
VolatileDirectories=/var/palm/ls2/services/prv;/var/palm/ls2-dev/services/prv;/usr/share/ls2/services/prv;/usr/share/ls2-dev/services/prv;/usr/share/ls2/system-services/
LaunchTimeout=300000
[Security]
Enabled=false
Directories=/usr/share/ls2/roles/prv
VolatileDirectories=/var/palm/ls2/roles/prv;/var/palm/ls2-dev/roles/prv
MonitorExePath=/usr/sbin/ls-monitor
MonitorPubExePath=/usr/bin/ls-monitor-pub
SysMgrExePath=/usr/bin/LunaSysMgr
WebAppMgrExePath=/usr/lib/qt5/libexec/QtWebEngineProcess
WebAppMgr2ExePath=/usr/sbin/luna-qml-launcher
JsServiceExePath=run-js-service
MojoAppExePath=mojo-app
MojoAppsAllowAllOutboundByDefault=true
AllowNullOutboundByDefault=true

View file

@ -0,0 +1,46 @@
# @@@LICENSE
#
# Copyright (c) 2008-2013 LG Electronics, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
# LICENSE@@@
[General]
LocalSocketDirectory=/var/run/ls2
PidDirectory=/var/run/ls2
LogServiceStatus=false
ConnectTimeout=20000
[Watchdog]
Timeout=60
FailureMode=noop
[Dynamic Services]
Directories=/usr/share/dbus-1/services
VolatileDirectories=/var/palm/ls2/services/pub;/var/palm/ls2-dev/services/pub;/usr/share/ls2/services/pub;/usr/share/ls2-dev/services/pub
LaunchTimeout=300000
[Security]
Enabled=false
Directories=/usr/share/ls2/roles/pub
VolatileDirectories=/var/palm/ls2/roles/pub;/var/palm/ls2-dev/roles/pub
MonitorExePath=/usr/sbin/ls-monitor
MonitorPubExePath=/usr/bin/ls-monitor-pub
SysMgrExePath=/usr/bin/LunaSysMgr
WebAppMgrExePath=/usr/lib/qt5/libexec/QtWebEngineProcess
WebAppMgr2ExePath=/usr/sbin/luna-qml-launcher
JsServiceExePath=run-js-service
MojoAppExePath=mojo-app
MojoAppsAllowAllOutboundByDefault=true
AllowNullOutboundByDefault=true

View file

@ -32,6 +32,8 @@ package() {
sysmgrsrc="$srcdir"/$pkgname-514a3d4f4d104cb9d306772f3f5e804c018be738
#TODO: we don't package kinds, and we have to for this service to work properly.
#sysmgr, unlike every other component so far, doesn't use cmake to install it's static files.
mkdir -p "$pkgdir"/usr/palm/sounds

View file

@ -0,0 +1,20 @@
pkgname=luna-systemui
pkgver=1.02_git20170904
pkgrel=0
_commit=c67aeffa8957919b3d78bdd6483f64c3ef6206d3
pkgdesc="WebOS power menu and other system ui"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends="enyo"
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/$pkgname/archive/$_commit.tar.gz"
builddir="$srcdir/$pkgname-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/applications/com.palm.systemui
cp -vrf * "$pkgdir"/usr/palm/applications/com.palm.systemui
}
sha512sums="058e2d6be1826bf016b7da9003525dfe87691d95c89bac969dec0f4f5c90bfb07910d91678f577514208c67822512d15b890b641cb69929c53796abdb22d4ac3 luna-systemui-c67aeffa8957919b3d78bdd6483f64c3ef6206d3.tar.gz"

View file

@ -0,0 +1,20 @@
pkgname=luna-temp-ofono-bluetooth
pkgver=0.0.1_git20171118
pkgrel=0
_commit=305b2c8e2c4c5870fc737a0d2809799d5c58a2e1
pkgdesc="Temporary package for ofono/bluetooth mocking."
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="luneos-components-$_commit.tar.gz::https://github.com/webOS-ports/luneos-components/archive/$_commit.tar.gz"
builddir="$srcdir/luneos-components-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/lib/qt5/qml/LuneOS
cp -rv "$builddir"/test/imports/LuneOS/Bluetooth "$pkgdir"/usr/lib/qt5/qml/LuneOS
cp -rv "$builddir"/test/imports/MeeGo "$pkgdir"/usr/lib/qt5/qml/
}
sha512sums="a44031e07efabe46ec33beb4630ee264b8f5a136de060a56499b72403d7ff97648f84ea15ae96602d5e35dacabf33f609b0b72a84a896c66b001496dda1a5354 luneos-components-305b2c8e2c4c5870fc737a0d2809799d5c58a2e1.tar.gz"

View file

@ -0,0 +1,35 @@
pkgname=luna-webappmanager
pkgver=8.0.0_git20170908
pkgrel=2
_commit=89e9c3e2437c21dcdaced17c7b5df5cc41efd051
pkgdesc="Component responsible for application management in LuneOS"
# Disabled for armhf, aarch64 (see #1008)
arch="x86_64"
url="http://webos-ports.org"
license="GPL-3.0+"
depends="glib luna-service2 libpbnjson luna-sysmgr-common luna-prefs qt5-qtbase qt5-qtquickcontrols2 qt5-qtdeclarative qt5-qtwebengine qt5-qtwebchannel libconnman-qt"
makedepends="cmake-modules-webos glib-dev luna-service2-dev libpbnjson-dev luna-sysmgr-common-dev luna-prefs-dev qt5-qtbase-dev qt5-qtquickcontrols2-dev qt5-qtdeclarative-dev qt5-qtwebengine-dev qt5-qtwebchannel-dev libconnman-qt-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/luna-webappmanager/archive/$_commit.tar.gz
remove-systemd.patch
fix-qtwebengine-private-includes.patch
tryFix.patch"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="12968da4d41954bfb046c161fe15442b3f7a14eaa69a2dedfbfaa0e0af279253c01b7cc5309b42a36af2bfe02545d9ad0f9ac8e1e0a637c28ceec0784951f91b luna-webappmanager-89e9c3e2437c21dcdaced17c7b5df5cc41efd051.tar.gz
f322799db601cae8fb3e552d495d616927dad45d2381aa1790c83da1afccc4b15713120342975ebe98e9b333e8f4983020d459d91963d87570095cc7c48e00d2 remove-systemd.patch
0a4be526403734f5b9b9c8b80c1ef56bded3ccd48927801cdc8887deaef5bb4aaeccac987c3bd5c17394a18b6755fe8edf0768575eec377049dfb30182f36514 fix-qtwebengine-private-includes.patch
c3c21d3781b5cd96c61e9033bc989d29d342d7a30c1c3e645b2b3cddab13f111523c65591eef505b66159ff9193a92869e15e32d50a99f66411c39c7614ea2ef tryFix.patch"

View file

@ -0,0 +1,15 @@
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index ae27484..e488487 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,4 +1,10 @@
+
+set(QTWEBENGINE_REAL_PRIVATE_INCLUDES "/usr/include/QtWebEngine/${Qt5WebEngine_VERSION}")
+set(QTWEBENGINE_REAL_PRIVATE_INCLUDES2 "/usr/include/QtWebEngine/${Qt5WebEngine_VERSION}/QtWebEngine")
+MESSAGE( STATUS "CMAKE_BINARY_DIR: " ${QTWEBENGINE_REAL_PRIVATE_INCLUDES} )
include_directories(
+ ${QTWEBENGINE_REAL_PRIVATE_INCLUDES}
+ ${QTWEBENGINE_REAL_PRIVATE_INCLUDES2}
${Qt5WebEngine_PRIVATE_INCLUDE_DIRS}
${Qt5WebChannel_PRIVATE_INCLUDE_DIRS}
${Qt5Quick_PRIVATE_INCLUDE_DIRS}

View file

@ -0,0 +1,35 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 23d7631..1163299 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -46,7 +46,7 @@ find_package(PkgConfig "0.22" REQUIRED)
pkg_check_modules(GLIB2 glib-2.0 REQUIRED)
pkg_check_modules(LS2 luna-service2 REQUIRED)
-pkg_check_modules(SYSTEMD libsystemd REQUIRED)
+pkg_check_modules(SYSTEMD libsystemd OPTIONAL)
pkg_check_modules(PBNJSON_C pbnjson_c REQUIRED)
pkg_check_modules(LUNA_SYSMGR_COMMON LunaSysMgrCommon REQUIRED)
pkg_check_modules(LUNA_PREFS luna-prefs REQUIRED)
diff --git a/src/main.cpp b/src/main.cpp
index c79782d..fe48ae4 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -21,7 +21,6 @@
#include <QtGlobal>
#include <glib.h>
-#include <systemd/sd-daemon.h>
#include <LocalePreferences.h>
@@ -140,9 +139,6 @@ int main(int argc, char **argv)
LocalePreferences::instance();
luna::SystemTime::instance();
- if (option_systemd)
- sd_notify(0, "READY=1");
-
webAppManager.exec();
cleanup:

View file

@ -0,0 +1,12 @@
diff --git a/src/qml/ApplicationContainer.qml b/src/qml/ApplicationContainer.qml
index 3d5f332..f90f5d4 100644
--- a/src/qml/ApplicationContainer.qml
+++ b/src/qml/ApplicationContainer.qml
@@ -127,7 +127,6 @@ Flickable {
backgroundColor: (webAppWindow.windowType === "dashboard" || webAppWindow.windowType === "popupalert") ? "transparent": "white"
userScripts: webAppWindow.userScripts;
- devicePixelRatio: webAppWindow.devicePixelRatio
onJavaScriptConsoleMessage: console.warn("CONSOLE JS: " + message);

21
luna/mojoloader/APKBUILD Normal file
View file

@ -0,0 +1,21 @@
pkgname=mojoloader
pkgver=1.1_git20161005
pkgrel=0
_commit=4eec67e2c941ab416aaced46c604c2ff3747c2fd
pkgdesc="Javascript framework to handle loading webOS modules from browser or Node.JS"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/mojoloader/archive/$_commit.tar.gz"
builddir="$srcdir/$pkgname-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/frameworks
cp -vf ./mojoloader.js "$pkgdir"/usr/palm/frameworks/
}
sha512sums="046edea14d5b7d2a9ffd5cf1710722ffba90ebf8c14ccbed5927502603785f30c3d67ba7741aac91f21cda03b682cd40066e3583eb411e75150c6093bb78a3a5 mojoloader-4eec67e2c941ab416aaced46c604c2ff3747c2fd.tar.gz"

View file

@ -0,0 +1,27 @@
pkgname=mojoservice-frameworks
pkgver=1.0.0_git20140708
pkgrel=0
_commit=0baa0cd1bcd7c2182718a4927efcff9dbf901812
pkgdesc="Webos core services javascript frameworks"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webos-ports/mojoservice-frameworks/archive/$_commit.tar.gz"
builddir="$srcdir/mojoservice-frameworks-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/frameworks
for FRAMEWORK in $(ls -d1 ./mojoservice*); do
FRAMEWORK_DIR=$(basename $FRAMEWORK)
install -d "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/
cp -vrf $FRAMEWORK/* "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/
# remove test and jasminetest dirs
rm -vrf ${D}${webos_frameworksdir}/$FRAMEWORK_DIR/version/1.0/*test
done
}
sha512sums="1f7d65997ad388ecbfbf7ef60bdd97bc7fae9326699e07967aaf919d42a272369f354a2342ca91da4ab7b1edc310e2c528874309fa3bf0c42ff9032368d1eac7 mojoservice-frameworks-0baa0cd1bcd7c2182718a4927efcff9dbf901812.tar.gz"

View file

@ -0,0 +1,29 @@
pkgname=mojoservicelauncher
pkgver=0.0.1_git20160806
pkgrel=0
_commit=d7407a69e5acd1ac132ae25964e4db93b7685beb
pkgdesc="OpenWebOS component to launch JavaScript services"
arch="all"
url="https://github.com/webOS-ports/mojoservicelauncher"
license="GPL-3.0+"
depends="libpbnjson boost nodejs mojoloader nodejs-module-webos-dynaload nodejs-module-webos-pmlog nodejs-module-webos-sysbus webos-loadable-frameworks webos-underscore mojoservice-frameworks webos-foundation"
makedepends="cmake-modules-webos boost-dev libpbnjson-dev boost-dev"
source="$pkgname-$_commit.tar.gz::https://github.com/webOS-ports/mojoservicelauncher/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
build() {
mkdir -p "$srcdir"/build
cd "$srcdir"/build
cmake "$builddir" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr \
-DWEBOS_INSTALL_ROOT=/
make
}
package() {
cd "$srcdir"/build
make DESTDIR="$pkgdir" install
}
sha512sums="3a07a952da5157ebbd2bd4f55ac5ba09979fb8160ca4ce4d76b67d06262fb3704349b170b6a1c78909c3edc326c01538d2c89b6a3873dee9a86dba7fcf0ad5b4 mojoservicelauncher-d7407a69e5acd1ac132ae25964e4db93b7685beb.tar.gz"

View file

@ -0,0 +1,30 @@
pkgname=nodejs-module-webos-dynaload
pkgver=14.0.0_git20160531
pkgrel=0
_commit=4eedb88e6eea69c88d30f5519d91113419cb7e71
pkgdesc="mojo library loader for node. Provides 'webos' node module."
arch="all"
url="https://github.com/webOS-ports/nodejs-module-webos-dynaload"
license="GPL-3.0+"
depends="boost nodejs nodejs-npm"
makedepends="cmake-modules-webos boost-dev nodejs-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/webOS-ports/nodejs-module-webos-dynaload/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
build() {
# This package provides a cmake file, but it isn't useful on Alpine, as alpine doesn't package
# the pkgconfig files required to compile native node modules with the cmake script as written.
# So, we just use node-gyp instead.
cd "$builddir"
/usr/lib/node_modules/npm/bin/node-gyp-bin/node-gyp configure
/usr/lib/node_modules/npm/bin/node-gyp-bin/node-gyp build
}
package() {
install -d "$pkgdir"/usr/lib/node
install -m755 "$builddir"/build/Release/webos.node "$pkgdir"/usr/lib/node
}
sha512sums="3667e0d9ff3168c46f8407eda27b65a56dd36967774b7f443234ed89edd4ed9d9dae060ddfec0a39edb21d9093972f46850693f36f8751c3a2fa1cfc769139f8 nodejs-module-webos-dynaload-14.0.0_git20160531.tar.gz"

View file

@ -0,0 +1,44 @@
pkgname=nodejs-module-webos-pmlog
pkgver=18.0.0_git20150424
pkgrel=0
_commit=ca359ed90389c5be085e7eac0548236312743d6a
pkgdesc="Library to allow nodejs code to talk to palm pmloglib."
arch="all"
url="https://github.com/webOS-ports/nodejs-module-webos-pmlog"
license="GPL-3.0+"
depends="pmloglib nodejs nodejs-npm"
# vim is in makedepends because it provides xxd
makedepends="cmake-modules-webos pmloglib-dev nodejs-dev vim python"
source="$pkgname-$pkgver.tar.gz::https://github.com/webOS-ports/nodejs-module-webos-pmlog/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
prepare() {
default_prepare
# pmloglib.js is tranformed into a c-style header so that it can be interpreted/run within
# the native node module.
cd "$builddir"/src
xxd -i pmloglib.js > pmloglib.js.h
}
build() {
# This package provides a cmake file, but it isn't useful on Alpine, as alpine doesn't package
# the pkgconfig files required to compile native node modules with the cmake script as written.
# So, we just use node-gyp instead.
cd "$builddir"
export CFLAGS=$(pkg-config --cflags PmLogLib)
export CXXFLAGS=$(pkg-config --cflags PmLogLib)
export LDFLAGS=$(pkg-config --libs PmLogLib)
/usr/lib/node_modules/npm/bin/node-gyp-bin/node-gyp configure
/usr/lib/node_modules/npm/bin/node-gyp-bin/node-gyp build
}
package() {
install -d "$pkgdir"/usr/lib/node
install -m755 "$builddir"/build/Release/pmloglib.node "$pkgdir"/usr/lib/node
}
sha512sums="4356da2fa5b93b4a8573123d07ea8cd3717a408a531134953f08763ae7173350ace55b634171dd5bcfcef683d1e9b8e2cb3b73a6cf841d42846ae5c374be1e88 nodejs-module-webos-pmlog-18.0.0_git20150424.tar.gz"

View file

@ -0,0 +1,34 @@
pkgname=nodejs-module-webos-sysbus
pkgver=31.0.0_git20160531
pkgrel=0
_commit=3a77f999b78b2f686e370ec0030097665d358169
pkgdesc="Library to allow nodejs code to talk to palm sysbus."
arch="all"
url="https://github.com/webOS-ports/nodejs-module-webos-sysbus"
license="GPL-3.0+"
depends="luna-service2 glib nodejs nodejs-npm"
makedepends="cmake-modules-webos glib-dev luna-service2-dev nodejs-dev"
source="$pkgname-$pkgver.tar.gz::https://github.com/webOS-ports/nodejs-module-webos-sysbus/archive/$_commit.tar.gz"
options="!check"
builddir="$srcdir/$pkgname-$_commit"
build() {
# This package provides a cmake file, but it isn't useful on Alpine, as alpine doesn't package
# the pkgconfig files required to compile native node modules with the cmake script as written.
# So, we just use node-gyp instead.
cd "$builddir"
export CFLAGS=$(pkg-config --cflags luna-service2)
export CXXFLAGS=$(pkg-config --cflags luna-service2)
export LDFLAGS=$(pkg-config --libs luna-service2)
/usr/lib/node_modules/npm/bin/node-gyp-bin/node-gyp configure
/usr/lib/node_modules/npm/bin/node-gyp-bin/node-gyp build
}
package() {
install -d "$pkgdir"/usr/lib/node
install -m755 "$builddir"/build/Release/webos-sysbus.node "$pkgdir"/usr/lib/node
install -m644 "$builddir"/src/palmbus.js "$pkgdir"/usr/lib/node
}
sha512sums="03ffdde3ce6a3ac1f72e71b0caae47d7f298b4e5a296ae0dea6627d90bc91eb30b250173d3a69fa40e6112dac408f27fda2d2418d37baa4865807197e1112ea8 nodejs-module-webos-sysbus-31.0.0_git20160531.tar.gz"

View file

@ -0,0 +1,27 @@
pkgname=webos-foundation
pkgver=1.0.0_git20160531
pkgrel=0
_commit=ec6e5bfdf9a7322f53c7d7b3bb32815cde957bea
pkgdesc="Webos webapp javascript frameworks"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webos-ports/foundation-frameworks/archive/$_commit.tar.gz"
builddir="$srcdir/foundation-frameworks-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/frameworks
for FRAMEWORK in `ls -d1 ./foundations*` ; do
FRAMEWORK_DIR=`basename $FRAMEWORK`
install -d "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/
cp -vrf $FRAMEWORK/* "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/
# remove test and jasminetest dirs
rm -vrf ${D}${webos_frameworksdir}/$FRAMEWORK_DIR/version/1.0/*test
done
}
sha512sums="d1adc31f6efdf8f936ca4ee9eadc4742769e9124117af3e38dcb2b967dfbf54684b20ab9ac5d744d136e30597535b6d5a1867b9fcd8c4e3ba35c699b80119568 webos-foundation-ec6e5bfdf9a7322f53c7d7b3bb32815cde957bea.tar.gz"

View file

@ -0,0 +1,27 @@
pkgname=webos-loadable-frameworks
pkgver=1.0.0_git20160228
pkgrel=0
_commit=746ad752f206fc2e7d050837946e34d5f29093dd
pkgdesc="Webos core services javascript frameworks"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/webos-ports/loadable-frameworks/archive/$_commit.tar.gz"
builddir="$srcdir/loadable-frameworks-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/frameworks
for FRAMEWORK in `ls -d1 ./calendar* ./contacts* ./globalization ./phonenumberlib` ; do
FRAMEWORK_DIR=`basename $FRAMEWORK`
install -d "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/
cp -vrf $FRAMEWORK/* "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/
# remove test and jasminetest dirs
rm -vrf "$pkgdir"/usr/palm/frameworks/$FRAMEWORK_DIR/version/1.0/*test
done
}
sha512sums="94c6b55e27a3006b4301a994fabee5b427fecd6d0c85ff3a214e0d5c546647fc2cbd4cccc97e9e0961abd3b1d530a606608af8cf40efa744c70d3c0e4d2ed693 webos-loadable-frameworks-746ad752f206fc2e7d050837946e34d5f29093dd.tar.gz"

View file

@ -0,0 +1,21 @@
pkgname=webos-underscore
pkgver=0.6.0_git20170830
pkgrel=0
_commit=d8b8a077be90b5edb9b44ef142625ba4743c8a47
pkgdesc="webos packaged version of underscore.js"
arch="all"
url="http://webos-ports.org"
license="GPL-3.0+"
depends=""
makedepends=""
source="$pkgname-$_commit.tar.gz::https://github.com/openwebos/underscore/archive/$_commit.tar.gz"
builddir="$srcdir/underscore-$_commit"
package() {
cd "$builddir"
install -d "$pkgdir"/usr/palm/frameworks/underscore/version/1.0
cp -vrf ./* "$pkgdir"/usr/palm/frameworks/underscore/version/1.0
}
sha512sums="8b2a02450566e9812814700f24c63ac297f9eb83f421e6032d0fc6d167a8f45a2207fe054d34eb757f9ad69f0fd07148faed866f037a134f1282ca8ffac4eb65 webos-underscore-d8b8a077be90b5edb9b44ef142625ba4743c8a47.tar.gz"

View file

@ -1,11 +1,33 @@
pkgname=postmarketos-ui-luna
pkgver=1
pkgrel=0
pkgrel=1
pkgdesc="(Wayland) webOS UI, ported from the LuneOS project (Not working yet)"
url="https://wiki.postmarketos.org/wiki/LuneOS_UI"
arch="noarch"
license="GPL3+"
depends="luna-next-cardshell luna-next luna-sysmgr luna-sysservice luna-appmanager luneos-components luna-init mesa"
depends="activitymanager
configurator
db8
enyo
luna-app-browser
luna-app-services
luna-applauncher
luna-appmanager
luna-core-apps
luna-firstuse
luna-init
luna-next
luna-next-cardshell
luna-qml-launcher
luna-sysmgr
luna-sysservice
luna-systemui
luna-temp-ofono-bluetooth
luna-webappmanager
luneos-components
mesa
mojoloader
xkeyboard-config"
makedepends=""
subpackages=""
source="start_luna.sh"
@ -15,4 +37,4 @@ package() {
install -D -m755 "$srcdir"/start_luna.sh \
"$pkgdir"/usr/bin/start_luna.sh
}
sha512sums="f9940d2ce21a3f0de682ee1046681b25ceeaccbcd72d92b1a791ea70074c1bf9f63d43ca36be069551f73ff8bf75585053f1fbe9a0669c481ebed26b5e9098a1 start_luna.sh"
sha512sums="a0e9018ceaabb4da16bac70b7b4aa704924a483e166f3f04df6b46a98b449798b8bafb851154ca1bf14438da3381699434933d4f0866dc680fe52fd6a7dd5bd6 start_luna.sh"

View file

@ -1,27 +1,36 @@
#!/bin/sh
if test -z "${XDG_RUNTIME_DIR}"; then
export XDG_RUNTIME_DIR=/tmp/$(id -u)-runtime-dir
if ! test -d "${XDG_RUNTIME_DIR}"; then
mkdir "${XDG_RUNTIME_DIR}"
chmod 0700 "${XDG_RUNTIME_DIR}"
fi
#The sleeps are in here to avoid some races.
# TODO: Set up openrc service files to make startup faster & more reliable
export LD_PRELOAD=/usr/lib/libwayland-server.so.0
export QT_QPA_PLATFORM=eglfs
export QT_QUICK_BACKEND=software
# This also causes issues on first boot - configurator needs to be re-run with
# luna-send -n 1 'luna://com.palm.configurator/run' '{"types":["dbkinds","dbpermissions","activities"]}'
# after first-use ends. After running that, you may need to reboot and re-run start_luna
/usr/sbin/ls-hubd --conf /etc/luna-service2/ls-private.conf &
sleep 1
/usr/sbin/ls-hubd --public --conf /etc/luna-service2/ls-public.conf &
sleep 1
luna-prefs-service -d &
sleep 1
LunaSysMgr -l debug &
sleep 1
LunaSysService -l debug &
sleep 1
LunaAppManager -t -c -u luna &
sleep 1
luna-next
fi
/usr/sbin/ls-hubd --conf /etc/luna-service2/ls-private.conf 2>&1 | logger -t 'ls-hubd-private' &
sleep 1
/usr/sbin/ls-hubd --public --conf /etc/luna-service2/ls-public.conf 2>&1 | logger -t 'ls-hubd-public' &
sleep 1
MOJODB_ENGINE=leveldb mojodb-luna -c /etc/palm/db8/maindb.conf 2>&1 | logger -t 'mojodb-maindb' &
MOJODB_ENGINE=leveldb mojodb-luna -c /etc/palm/db8/mediadb.conf 2>&1 | logger -t 'mojodb-mediadb' &
MOJODB_ENGINE=leveldb mojodb-luna -c /etc/palm/db8/tempdb.conf 2>&1 | logger -t 'mojodb-tempdb' &
sleep 1
luna-send -n 1 'luna://com.palm.configurator/run' '{"types":["dbkinds","dbpermissions"]}'
sleep 1
luna-prefs-service -d 2>&1 | logger -t 'luna-prefs-service' &
sleep 1
activitymanager 2>&1 | logger -t 'activitymanager' &
sleep 1
LunaSysMgr -l debug 2>&1 | logger -t 'LunaSysMgr' &
sleep 1
LunaSysService -l debug 2>&1 | logger -t 'LunaSysService' &
sleep 1
export QT_QPA_PLATFORM=eglfs
export QT_QPA_EGLFS_DISABLE_INPUT=1
luna-next -plugin evdevmouse:/dev/input/event2 -plugin evdevkeyboard:/dev/input/event1 2>&1 | logger -t 'luna-next' &
sleep 5
export QT_QPA_PLATFORM=wayland
LunaAppManager -t -c -u luna 2>&1 | logger -t 'LunaAppManager' &
sleep 1
LunaWebAppManager --verbose --allow-file-access-from-files 2>&1 | logger -t 'LunaWebAppManager'