main/onboard: new aport (!370)

Currently we're using matchbox-keyboard as on screen keyboard. However,
onboard seems to be a better alternative to, it has auto-show, word
suggestions, themes and settings you can choose. So far the best OSK out
there on the market.

There are a few minor issue such as word suggestions doesn't work (not
sure why, but i assume that onboard doesn't know about the program that
was in front of it), sound feedback doesn't work at all due to missing
sound despite it exists in
/usr/share/sounds/freedesktop/stereo/onboard-key-feedback.oga. Other
than that, I haven't found any issue while testing.

Tested on qemu-amd64.
This commit is contained in:
Danct12 2019-05-18 17:37:08 +07:00 committed by Oliver Smith
parent da260f4652
commit f343cb5a0e
No known key found for this signature in database
GPG key ID: 5AE7F5513E0885CB
2 changed files with 90 additions and 0 deletions

28
main/onboard/APKBUILD Normal file
View file

@ -0,0 +1,28 @@
# Contributor: Danct12 <danct12@disroot.org>
# Maintainer: Danct12 <danct12@disroot.org>
pkgname=onboard
pkgver=1.4.1
pkgrel=0
pkgdesc="On-screen keyboard useful on tablet PCs or for mobility impaired users"
arch="all"
url="https://launchpad.net/onboard"
license="GPL"
depends="python3 hunspell gtk+3.0 iso-codes libcanberra libxkbfile py3-cairo py3-dbus py3-gobject3 dconf ncurses gsettings-desktop-schemas librsvg"
makedepends="python3-dev py3-dbus py3-setuptools py3-distutils-extra bash bash-dev gtk+3.0-dev libxkbfile-dev dconf-dev libcanberra-dev hunspell-dev eudev-dev"
source="https://launchpad.net/${pkgname}/${pkgver%.*}/${pkgver}/+download/${pkgname}-${pkgver}.tar.gz
glibc-musl-error.patch"
builddir="$srcdir/${pkgname}-${pkgver}"
subpackages="$pkgname-doc $pkgname-lang"
build() {
cd "$builddir"
python3 setup.py build
}
package() {
cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir" --optimize=1
}
sha512sums="ed75c1dce893e3420ecf532faffb15efc9fba56cf6622b03fe5e1cebb88d32304636b0268e4b8b75dc0eb6d7bfc8602c4a93a90bdeb8cd960d3447d16acc7463 onboard-1.4.1.tar.gz
23742c38f877fc31260d4d7d3ff38c8d72541a77e099183d6633de74bcb223bbd34cedd88016f043867b2571f1196b59a3378a94186b468dbaa7a5d00661065a glibc-musl-error.patch"

View file

@ -0,0 +1,62 @@
diff --git a/Onboard/pypredict/lm/lm.cpp b/Onboard/pypredict/lm/lm.cpp
index 2e64296..081b3fb 100644
--- a/Onboard/pypredict/lm/lm.cpp
+++ b/Onboard/pypredict/lm/lm.cpp
@@ -19,7 +19,7 @@
#include <stdlib.h>
#include <stdio.h>
-#include <error.h>
+
#include <algorithm>
#include <cmath>
#include <string>
@@ -37,7 +37,7 @@ StrConv::StrConv()
if (cd_mb_wc == (iconv_t) -1)
{
if (errno == EINVAL)
- error (0, 0, "conversion from UTF-8 to wchar_t not available");
+ fprintf (stderr, "conversion from UTF-8 to wchar_t not available");
else
perror ("iconv_open mb2wc");
}
@@ -45,7 +45,7 @@ StrConv::StrConv()
if (cd_wc_mb == (iconv_t) -1)
{
if (errno == EINVAL)
- error (0, 0, "conversion from wchar_t to UTF-8 not available");
+ fprintf (stderr, "conversion from wchar_t to UTF-8 not available");
else
perror ("iconv_open wc2mb");
}
diff --git a/Onboard/pypredict/lm/lm_dynamic.cpp b/Onboard/pypredict/lm/lm_dynamic.cpp
index 7c62824..da8cfd0 100644
--- a/Onboard/pypredict/lm/lm_dynamic.cpp
+++ b/Onboard/pypredict/lm/lm_dynamic.cpp
@@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include <error.h>
+
#include "lm_dynamic.h"
@@ -91,7 +91,7 @@ LMError DynamicModelBase::load_arpac(const char* filename)
int ngrams_read = get_num_ngrams(current_level-1);
if (ngrams_read != ngrams_expected)
{
- error (0, 0, "unexpected n-gram count for level %d: "
+ fprintf (stderr, "unexpected n-gram count for level %d: "
"expected %d n-grams, but read %d",
current_level,
ngrams_expected, ngrams_read);
@@ -105,7 +105,7 @@ LMError DynamicModelBase::load_arpac(const char* filename)
if (ntoks < current_level+1)
{
err_code = ERR_NUMTOKENS; // too few tokens for cur. level
- error (0, 0, "too few tokens for n-gram level %d: "
+ fprintf (stderr, "too few tokens for n-gram level %d: "
"line %d, tokens found %d/%d",
current_level,
line_number, ntoks, current_level+1);