diff --git a/net-im/whatsie/additional-files/whatsie.rdef.in b/net-im/whatsie/additional-files/whatsie.rdef.in new file mode 100644 index 000000000..066bc76a2 --- /dev/null +++ b/net-im/whatsie/additional-files/whatsie.rdef.in @@ -0,0 +1,49 @@ + +resource app_flags B_SINGLE_LAUNCH | B_ARGV_ONLY; + +resource app_version { + major = @MAJOR@, + middle = @MIDDLE@, + minor = @MINOR@, + + variety = B_APPV_FINAL, + internal = 0, + + short_info = "WhatSie", + long_info = "@LONG_INFO@" +}; + +resource app_signature "@APP_SIGNATURE@"; + + +resource vector_icon { + $"6E6369660204F3FF01008000FF030607FF3FB7ABC4ABB727C635B6B1C32AB620" + $"BF73B620C15FB620BA22BFC2B5D1BA71B5D1C513B5D1C964BF73C964BA22C964" + $"C4C3BFC2C914C513C914BDF5C914BAD4C7B9BC45C895B943C83EB620C94AB7B2" + $"C8C4B6A4C7C00607FF3FB978C3EAB925C4E0B892C2A7B80BBF73B80BC11DB80B" + $"BB2FBFC2B7BABB7FB7BAC404B7BAC77ABF73C77ABB2FC77AC3B5BFC2C72AC404" + $"C72ABE24C72ABB69C5D2BCA6C6ABBA72C625B882C6CAB97AC678B8D4C5D5063A" + $"FFFFFFFFFFFFFFFFFFFFFFFFFFFF0FBB1BBC70BB1BBC70BB78BC5FBC33BC4BBB" + $"D5BC53BC4BBC4ABC80BC49BC66BC49BCC7BC49BD5ABC5DBD0FBC4FBD71BCD9BD" + $"9BBDD0BD87BD54BDB0BE4BBDD6BF45BDC2BEC7BDD9BF50BDF1BF5DBDE2BF59BE" + $"01BF60BE0EBF54BE0ABF5DBE20BF21BE48BEA1BE35BEE6BE5DBE5DBE86BDD0BE" + $"71BE16BE9ABD89BEBFBCFFBEADBD43BED2BCB9BEF3BC4BBEE2BC7EBF4ABC44BF" + $"FDBC39BFA3BC3EC011BC38C039BC38C025BC37C07FBC38C107BC4BC0C4BC3FC1" + $"2EBCC7C17BBDB8C155BD41C1A1BE31C1EABF2AC1C6BEACC1EDBF30C1F6BF3EC1" + $"F1BF37C1FCBF45C209BF48C202BF48C210BF47C21EBF36C217BF41C225BF2AC2" + $"2FBEFBC22BBF15C24DBE13C283BC3CC269BD29C2BCBC2EC338BC29C2F9BC29C3" + $"48BC28C36937C358BC29C3BABC2EC464BC3CC40EBC34C460BC94C44EBD62C459" + $"39C443BDCCC427BEAAC436BE3AC418BF19C3F6BFFBC408BF89C3E5C06BC3C2C1" + $"3BC3D4C0D6C3B2C19FC392C251C3A2C1FCC383C2A5C36AC323C376C2EBC325C3" + $"28C2A6C330C2E4C32CC268C334C1EFC339C22BC337C1B3C33CC139C33EC176C3" + $"3DC0FDC33FC07DC33FC0BEC33FC07AC333C071C2FCC076C31CC06CC2DCC05FC2" + $"89C066C2B5C058C25CC048C1FBC050C22DC040C1C8C030C16BC038C199C028C1" + $"3DC01AC0EFC021C114C013C0C9C00AC09DC00EC0AEC005C086BFF3C06BBFFEC0" + $"75BFEBC060BFD6C05CBFE1C05BBFCCC05DBFB8C06EBFC3C063BFB0C07ABFA3C0" + $"9DBFA9C089BF9CC0BBBF83C116BF91C0E4BF77C148BF5845BF68C180BF48C1FB" + $"BF27C280BF38C23CBF17C2C4BEF8C349BF07C307BEB1C34EBE37C354BE72C352" + $"BE0849BDADC357BDDAC357BDA2C357BD8BC357BD97C357BD54C357BCE4C352BD" + $"1DC355BCADC34FBC34C349BC72C34CBC14C2B6BBE1C191BBF9C223BBC8C0FFBB" + $"9FBFDDBBB2C06EBB89BF4ABB62BE27BB76BEB9BB4EBD93BB1BBC70BB37BD01BB" + $"1BBC70030A000100000A010101000A00010200" +}; diff --git a/net-im/whatsie/patches/whatsie-4.16.3.patchset b/net-im/whatsie/patches/whatsie-4.16.3.patchset new file mode 100644 index 000000000..2da1a9706 --- /dev/null +++ b/net-im/whatsie/patches/whatsie-4.16.3.patchset @@ -0,0 +1,248 @@ +From aa8347fb69dcf20696ec8e954f6b19031d362efc Mon Sep 17 00:00:00 2001 +From: Peppersawce +Date: Sun, 11 Jan 2026 01:12:30 +0100 +Subject: Haiku fixes & cleanup + + +diff --git a/src/WhatsApp.pro b/src/WhatsApp.pro +index 38995b7..e66a5de 100644 +--- a/src/WhatsApp.pro ++++ b/src/WhatsApp.pro +@@ -43,7 +43,7 @@ qtConfig(webengine-native-spellchecker) { + + TARGET = whatsie + TEMPLATE = app +-LIBS += -L/usr/X11/lib -lX11 ++#LIBS += -L/usr/X11/lib -lX11 + + include(singleapplication/singleapplication.pri) + DEFINES += QAPPLICATION_CLASS=QApplication +@@ -151,7 +151,7 @@ isEmpty(PREFIX){ + message("Installation prefix: $$PREFIX") + + BINDIR = $$PREFIX/bin +-DATADIR = $$PREFIX/share ++DATADIR = $$PREFIX/data + + target.path = $$BINDIR + +@@ -173,7 +173,7 @@ CONFIG(FLATPAK){ + QMAKE_EXTRA_COMPILERS += dictoolbuild + + dictionaries.files = $${DICTIONARIES_DIR}/ +- dictionaries.path = $$DATADIR/org.keshavnrj.ubuntu/WhatSie/ ++ dictionaries.path = $$DATADIR/WhatSie/ + + unix:INSTALLS += dictionaries + } +@@ -205,5 +205,5 @@ appstream.files = ../dist/linux/com.ktechpit.whatsie.appdata.xml + desktop.path = $$DATADIR/applications/ + desktop.files = ../dist/linux/com.ktechpit.whatsie.desktop + +-unix:INSTALLS += target icon16 icon32 icon64 icon128 icon256 +-unix:INSTALLS += iconscalable iconsymbolic license appstream desktop ++#unix:INSTALLS += target icon16 icon32 icon64 icon128 icon256 ++#unix:INSTALLS += iconscalable iconsymbolic license appstream desktop +diff --git a/src/dictionaries.cpp b/src/dictionaries.cpp +index 5299806..6994327 100644 +--- a/src/dictionaries.cpp ++++ b/src/dictionaries.cpp +@@ -25,13 +25,17 @@ QString Dictionaries::GetDictionaryPath() { + + QString dict_dir = "qtwebengine_dictionaries"; + +- // inside appdata dir /usr/share/org/appname +- QString appdata_path = QStandardPaths::standardLocations(QStandardPaths::GenericDataLocation).filter("/usr/share").first(); ++ // inside appdata dir /boot/home + dict_path = +- QString("%1/%2/%3/%4") +- .arg(appdata_path,QApplication::organizationName(), +- QApplication::applicationName(), dict_dir); +- qDebug()<< dict_path; ++ QString("%1/%2/%3") ++ .arg("/boot/home/config/data", QApplication::applicationName(), dict_dir); ++ if (QDir(dict_path).exists()) { ++ return dict_path; ++ } ++ // inside appdata dir /boot/system ++ dict_path = ++ QString("%1/%2/%3") ++ .arg("/boot/system/data", QApplication::applicationName(), dict_dir); + if (QDir(dict_path).exists()) { + return dict_path; + } +diff --git a/src/lock.cpp b/src/lock.cpp +index 46d8160..208c992 100644 +--- a/src/lock.cpp ++++ b/src/lock.cpp +@@ -1,22 +1,11 @@ + #include "lock.h" + #include "ui_lock.h" + +-#include "X11/XKBlib.h" // keep this header at bottom +- + Lock::Lock(QWidget *parent) : QWidget(parent), ui(new Ui::Lock) { + ui->setupUi(this); + ui->setPass->setEnabled(false); + ui->wrong->hide(); + +- MoreApps *moreApps = +- new MoreApps(this, nullptr, "keshavnrj", +- QUrl("https://raw.githubusercontent.com/keshavbhatt/appdata/" +- "main/moreapps.txt"), +- false); +- moreApps->setWindowTitle("More Applications by developer"); +- moreApps->setFixedHeight(98); +- ui->moreAppsLayout->addWidget(moreApps); +- + passcodeLoginAction = ui->passcodeLogin->addAction( + QIcon(":/icons/green_arrow-right-line.png"), QLineEdit::TrailingPosition); + passcodeLoginAction->setEnabled(false); +@@ -235,15 +224,7 @@ void Lock::lock_app() { + void Lock::on_passcodeLogin_returnPressed() { passcodeLoginAction->trigger(); } + + bool Lock::getCapsLockOn() { +- Display *d = XOpenDisplay(nullptr); +- bool caps_state = false; +- if (d) { +- unsigned n; +- XkbGetIndicatorState(d, XkbUseCoreKbd, &n); +- caps_state = (n & 0x01) == 1; +- XCloseDisplay(d); +- } +- return caps_state; ++ return false; + } + + void Lock::on_cancelSetting_clicked() { +-- +2.52.0 + + +From 601107acc462c417b5fd44e10bcc64ac236c3bcd Mon Sep 17 00:00:00 2001 +From: Peppersawce +Date: Sun, 11 Jan 2026 21:08:31 +0100 +Subject: This fixes "config" and "cache" dir creation (somewhat) + + +diff --git a/src/main.cpp b/src/main.cpp +index 1d5efe9..966b907 100644 +--- a/src/main.cpp ++++ b/src/main.cpp +@@ -31,7 +31,7 @@ int main(int argc, char *argv[]) { + QApplication::setApplicationName("WhatSie"); + QApplication::setDesktopFileName("com.ktechpit.whatsie"); + QApplication::setOrganizationDomain("com.ktechpit"); +- QApplication::setOrganizationName("org.keshavnrj.ubuntu"); ++ QApplication::setOrganizationName(""); + QApplication::setApplicationVersion(VERSIONSTR); + + qputenv("QTWEBENGINE_DICTIONARIES_PATH", +-- +2.52.0 + + +From 272bef6d50f9e1c3fc88124916986554f79d8157 Mon Sep 17 00:00:00 2001 +From: Peppersawce +Date: Tue, 13 Jan 2026 00:17:00 +0100 +Subject: Disable Snap rating shenanigans + + +diff --git a/src/WhatsApp.pro b/src/WhatsApp.pro +index e66a5de..b6a6f5f 100644 +--- a/src/WhatsApp.pro ++++ b/src/WhatsApp.pro +@@ -91,7 +91,6 @@ SOURCES += \ + main.cpp \ + mainwindow.cpp \ + permissiondialog.cpp \ +- rateapp.cpp \ + settingswidget.cpp \ + sunclock.cpp \ + theme.cpp \ +@@ -116,7 +115,6 @@ HEADERS += \ + mainwindow.h \ + notificationpopup.h \ + permissiondialog.h \ +- rateapp.h \ + requestinterceptor.h \ + settingsmanager.h \ + settingswidget.h \ +@@ -136,7 +134,6 @@ FORMS += \ + lock.ui \ + passworddialog.ui \ + permissiondialog.ui \ +- rateapp.ui \ + settingswidget.ui + + TRANSLATIONS += \ +diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp +index ac9741d..a60474f 100644 +--- a/src/mainwindow.cpp ++++ b/src/mainwindow.cpp +@@ -30,7 +30,7 @@ MainWindow::MainWindow(QWidget *parent) + createTrayIcon(); + createWebEngine(); + initSettingWidget(); +- initRateWidget(); ++ //initRateWidget(); + QApplication::processEvents(); + tryLock(); + updateWindowTheme(); +@@ -79,7 +79,7 @@ void MainWindow::initAutoLock() { + } + } + +-void MainWindow::initRateWidget() { ++/*void MainWindow::initRateWidget() { + RateApp *rateApp = new RateApp(this, "snap://whatsie", 5, 5, 1000 * 30); + rateApp->setWindowTitle(QApplication::applicationName() + " | " + + tr("Rate Application")); +@@ -96,7 +96,7 @@ void MainWindow::initRateWidget() { + rateApp->delayShowEvent(); + } + }); +-} ++}*/ + + void MainWindow::runMinimized() { + this->m_minimizeAction->trigger(); +diff --git a/src/mainwindow.h b/src/mainwindow.h +index 64ce92c..5924ae5 100644 +--- a/src/mainwindow.h ++++ b/src/mainwindow.h +@@ -28,7 +28,7 @@ + #include "downloadmanagerwidget.h" + #include "lock.h" + #include "notificationpopup.h" +-#include "rateapp.h" ++//#include "rateapp.h" + #include "requestinterceptor.h" + #include "settingswidget.h" + #include "theme.h" +-- +2.52.0 + + +From 7ea25873c507b596c4963e21ab4d3fdbce7d1fc2 Mon Sep 17 00:00:00 2001 +From: Peppersawce +Date: Tue, 13 Jan 2026 13:29:02 +0100 +Subject: Fix window rendering + + +diff --git a/src/main.cpp b/src/main.cpp +index 966b907..e39f702 100644 +--- a/src/main.cpp ++++ b/src/main.cpp +@@ -22,7 +22,7 @@ int main(int argc, char *argv[]) { + #else + qputenv("QTWEBENGINE_CHROMIUM_FLAGS", + "--disable-logging --ignore-gpu-blocklist --no-sandbox " +- "--single-process --disable-extensions"); ++ "--disable-extensions"); + #endif + + SingleApplication instance(argc, argv, true); +-- +2.52.0 + diff --git a/net-im/whatsie/whatsie-4.16.3.recipe b/net-im/whatsie/whatsie-4.16.3.recipe new file mode 100644 index 000000000..4925fa8b1 --- /dev/null +++ b/net-im/whatsie/whatsie-4.16.3.recipe @@ -0,0 +1,78 @@ +SUMMARY="Feature rich WhatsApp Client" +DESCRIPTION="WhatSie is a feature rich WhatsApp web client based on Qt WebEngine and QT5" +HOMEPAGE="https://github.com/keshavbhatt/whatsie" +COPYRIGHT="2024 Keshav Bhatt" +LICENSE="MIT" +REVISION="1" +SOURCE_URI="https://github.com/keshavbhatt/whatsie/archive/refs/tags/v$portVersion.tar.gz" +CHECKSUM_SHA256="6149c05e30d87e61ee480d7ead082224cf9f32fea61a3820c0f7225ae8a8a616" +SOURCE_DIR="whatsie-$portVersion" +PATCHES="whatsie-$portVersion.patchset" +ADDITIONAL_FILES="whatsie.rdef.in" + +ARCHITECTURES="all !x86_gcc2" +SECONDARY_ARCHITECTURES="x86" + +PROVIDES=" + whatsie$secondaryArchSuffix = $portVersion + app:WhatSie + " +REQUIRES=" + haiku$secondaryArchSuffix + lib:libGL$secondaryArchSuffix + lib:libQt5Core$secondaryArchSuffix + lib:libQt5Gui$secondaryArchSuffix + lib:libQt5Network$secondaryArchSuffix + lib:libQt5Positioning$secondaryArchSuffix + lib:libQt5PrintSupport$secondaryArchSuffix + lib:libQt5Qml$secondaryArchSuffix + lib:libQt5QmlModels$secondaryArchSuffix + lib:libQt5Quick$secondaryArchSuffix + lib:libQt5WebChannel$secondaryArchSuffix + lib:libQt5WebEngine$secondaryArchSuffix + lib:libQt5WebEngineCore$secondaryArchSuffix + lib:libQt5WebEngineWidgets$secondaryArchSuffix + lib:libQt5Widgets$secondaryArchSuffix + " + +BUILD_REQUIRES=" + haiku${secondaryArchSuffix}_devel + devel:libQt5WebEngine$secondaryArchSuffix + " +BUILD_PREREQUIRES=" + cmd:gcc$secondaryArchSuffix + cmd:make + cmd:qmake$secondaryArchSuffix >= 5 + " + +BUILD() +{ + cd $sourceDir/src + qmake PREFIX=$prefix + + make $jobArgs +} + +INSTALL() +{ + cd $sourceDir/src + make install + + # Generate the rdef + local MAJOR="`echo "$portVersion" | cut -d. -f1`" + local MIDDLE="`echo "$portVersion" | cut -d. -f2`" + local MINOR="`echo "$portVersion" | cut -d. -f3`" + local LONG_INFO="$SUMMARY" + local APP_SIGNATURE="application/x-vnd.whatsie" + sed \ + -e "s|@MAJOR@|$MAJOR|" \ + -e "s|@MIDDLE@|$MIDDLE|" \ + -e "s|@MINOR@|$MINOR|" \ + -e "s|@LONG_INFO@|$LONG_INFO|" \ + -e "s|@APP_SIGNATURE@|$APP_SIGNATURE|" \ + $portDir/additional-files/whatsie.rdef.in > whatsie.rdef + + addResourcesToBinaries whatsie.rdef $sourceDir/src/whatsie + mkdir -p $appsDir && cp $sourceDir/src/whatsie $appsDir/WhatSie + addAppDeskbarSymlink $appsDir/WhatSie +}