-
-
Notifications
You must be signed in to change notification settings - Fork 3.8k
Description
Why is it worth to add this package?
Cool widget framework for creating desktop shells in x11.
Home page URL
Source code URL
https://github.com/quickshell-mirror/quickshell
Packaging policy acknowledgement
-
The project is actively developed.
-
The project has existing packages and is "well known".
-
Licensed under an open source license.
-
Not available through a language package manager: cargo, cpan, dotnet tool, gem, npm, pip, etc.
-
Not taking up too much disk space (< 100MiB per architecture, exceptions can be made)
-
Not duplicating the functionality of existing packages.
-
Not serving hacking, malware, phishing, spamming, spying, ddos functionality.
-
I certify that I have read Termux Packaging Policy and understand that my request will be denied if it is found lacking.
Additional information
I have compiled it thanks to the help of owokitty from the termux org and havent ran into non user error , error as of this moment.
how to build(very vague):
compile cli11:
https://github.com/CLIUtils/CLI11.git
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=$PREFIX -DCLI11_BUILD_TESTS=OFF
install quickshell deps(probably incomplete):
pkg i libglvnd-dev mesa-dev qt6-qt5compat qt6-qtbase-gtk-platformtheme qt6-qtbase qt6-qtcharts qt6-qtdeclarative qt6-qtimageformats qt6-qtlanguageserver qt6-qtmultimedia qt6-qtnetworkauth qt6-qtsvg qt6-qttools qt6-qttranslations qt6-qtwebsockets qt6-shadertools
patch it using the file owokitty provided:
git apply patch.diff
heres the patch
diff --git a/src/core/logging.cpp b/src/core/logging.cpp
index 5c809f6..01004c0 100644
--- a/src/core/logging.cpp
+++ b/src/core/logging.cpp
@@ -27,6 +27,8 @@
#include <qtmetamacros.h>
#include <qtypes.h>
#include <sys/mman.h>
+#include <sys/syscall.h>
+#include <unistd.h>
#include <sys/sendfile.h>
#include "instanceinfo.hpp"
@@ -296,6 +298,8 @@ void LoggingThreadProxy::initInThread() {
void LoggingThreadProxy::initFs() { this->logging->initFs(); }
+#define memfd_create(name,flags) syscall(SYS_memfd_create,name,flags)
+
void ThreadLogging::init() {
auto logMfd = memfd_create("quickshell:logs", 0);
diff --git a/src/core/paths.cpp b/src/core/paths.cpp
index 55beb87..dbc3229 100644
--- a/src/core/paths.cpp
+++ b/src/core/paths.cpp
@@ -64,7 +64,7 @@ QDir* QsPaths::baseRunDir() {
if (this->baseRunState == DirState::Unknown) {
auto runtimeDir = qEnvironmentVariable("XDG_RUNTIME_DIR");
if (runtimeDir.isEmpty()) {
- runtimeDir = QString("/run/user/$1").arg(getuid());
+ runtimeDir = QString("/data/data/com.termux/files/usr/var/run/user/$1").arg(getuid());
qCInfo(logPaths) << "XDG_RUNTIME_DIR was not set, defaulting to" << runtimeDir;
}
then build with:
note using multiple jobs for compile makes it fail for some reason, so use -j1
mkdir build
cd build
cmake .. -DCMAKE_SYSTEM_NAME=Linux -DCRASH_REPORTER=OFF -DSERVICE_POLKIT=OFF -DUSE_JEMALLOC=OFF -DSERVICE_PAM=OFF -DCMAKE_INSTALL_PREFIX=$PREFIX
make
make install