Compare commits

...

8 commits

Author SHA1 Message Date
7122efda87 joplin: prepare 2023-09-01 00:33:10 +00:00
a959a255de lint 2023-09-01 00:33:10 +00:00
bee8a89443 remove install 2023-09-01 00:33:10 +00:00
175d83009f lint 2023-09-01 00:33:10 +00:00
3572424321 lint 2023-09-01 00:33:10 +00:00
3be6a2d1e5 user/joplin: new aport 2023-09-01 00:33:10 +00:00
1fc4159ed2 Fix build 2023-09-01 00:32:12 +00:00
acf90fdbbe backports/freecad: upgrade to 0.20.1 2023-09-01 00:32:12 +00:00
8 changed files with 202 additions and 118 deletions

View file

@ -1,8 +1,8 @@
# Contributor: Aiden Grossman <agrossman154@yahoo.com>
# Maintainer: Aiden Grossman <agrossman154@yahoo.com>
pkgname=freecad
pkgver=0.20.2
pkgrel=4
pkgver=0.21.0
pkgrel=0
pkgdesc="Free and open source 3D parametric modeler"
url="https://freecadweb.org/"
license="LGPL-2.0-or-later"
@ -44,14 +44,11 @@ makedepends="
vtk-dev
xerces-c-dev
"
options="!check" # Failing test units upstream as well
checkdepends="xvfb-run mesa mesa-dri-gallium font-opensans"
source="https://github.com/FreeCAD/FreeCAD/archive/$pkgver/freecad-$pkgver.tar.gz
$pkgname-python3.11-1.patch::https://github.com/FreeCAD/FreeCAD/commit/fe02d63c8c9b1280978be841d04e68a0a55cceb9.patch
numpy-1.20.patch
$pkgname-cstdint.patch::https://github.com/FreeCAD/FreeCAD/commit/f8f02f089537497a1bf46bc1057f01659b6636c1.patch
no-execinfo.patch
no-workaround-spnav.patch
resourceDirectory.patch
tests.patch
"
builddir="$srcdir/FreeCAD-$pkgver"
@ -93,11 +90,7 @@ package() {
}
sha512sums="
c3acd77dd2bb9a2a23ac354da3b6102effb89c95d675e91421d65486414dfe8cc0188a7212245e0deb63f17b9c5df76133017be09e4cd14b833be8cbec52a08d freecad-0.20.2.tar.gz
75a237f7ed7a89a98c0e5bdb3d3f0788749602daf718089aa0814e05f93ced1e15ad5867c7c87f170b48c5984f9ace1bbc95c4f386ce72bfb8d616323b47f1e5 freecad-python3.11-1.patch
80b08b031810fce7b6d698c662f64fa4f8a904f283f46b478b1d718529164c0ee61ce190f633abf04e03212720480f3f0603b0c1e160af79d7b6bb82da3bd0e4 numpy-1.20.patch
f5b4428217d9abd18aed1dcd8a5c77132b90173d07627ff9164919a87f04d242f9d616e9655751ec06ff57fc3e242090cc4d7e1d7045fdae9bc2e281e7855281 freecad-0.21.0.tar.gz
27dffdbb124096e7fcbec3589cdcfc587ea09bf039c1c1108edb68a9a4fd1278f66a39642636f98b8759a44da92485fd748f8b3d615b0625bc37fc717130e237 freecad-cstdint.patch
73aaba7015dce7048eb7d2456131b5b5ba4673cc980503331987be54d99daed5f61db015ca33d7d2ef0f02bd3192da8ce122c103c3b93f9959927deb4f0b933e no-execinfo.patch
15696bdaaf77482f1b5d3806535a8004c8cec7d598d62092d9f0394b4ca9e2ad6cedd77c4b86a83a06324d16678c1c6bbf3a390b807729717a2f513e858afd50 no-workaround-spnav.patch
8ba13b17bad66316757d180c1b9e9e72a24382627eac7c43a2264b3b5101e6e8f701775f2b805ed733f500fbcd8b0e8e422ec58a9ab3d948d613b666157d4c52 resourceDirectory.patch
5db19e0aa2ca1fd21f4c56afc9db54390a799262aaa0a741704c2c304b0068fd6ca1dcc086465e12e9c0cfe06aac750aaf9b8f5f4db324539af4dd3394803ff9 tests.patch
"

View file

@ -1,69 +0,0 @@
Patch-Source: https://github.com/FreeCAD/FreeCAD/commit/7b377a216b9185960e4cee980a6504dc1a755f50
fixes stderr reassignment
--
From 7b377a216b9185960e4cee980a6504dc1a755f50 Mon Sep 17 00:00:00 2001
From: wmayer <wmayer@users.sourceforge.net>
Date: Wed, 29 Jun 2022 15:19:18 +0200
Subject: [PATCH] Gui: remove workaround for spnav 0.23 due to build failure
with musl libc
---
src/Gui/3Dconnexion/GuiNativeEventLinux.cpp | 27 ---------------------
1 file changed, 27 deletions(-)
diff --git a/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp b/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp
index 7f0ddd75d262..455ece0b36bd 100644
--- a/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp
+++ b/src/Gui/3Dconnexion/GuiNativeEventLinux.cpp
@@ -21,42 +21,17 @@
***************************************************************************/
#include <FCConfig.h>
-#include <cstdio>
#include "GuiNativeEventLinux.h"
#include "GuiApplicationNativeEventAware.h"
#include <Base/Console.h>
-#include <Base/FileInfo.h>
#include <QMainWindow>
#include <QSocketNotifier>
#include <spnav.h>
-namespace {
-class RedirectStdErr
-{
-public:
- RedirectStdErr()
- : fi(Base::FileInfo::getTempFileName())
- , file(stderr)
- {
- stderr = fopen(fi.filePath().c_str(), "w");
- }
- ~RedirectStdErr()
- {
- fclose(stderr);
- fi.deleteFile();
- stderr = file;
- }
-
-private:
- Base::FileInfo fi;
- FILE* file;
-};
-}
-
Gui::GuiNativeEvent::GuiNativeEvent(Gui::GUIApplicationNativeEventAware *app)
: GuiAbstractNativeEvent(app)
{
@@ -72,8 +47,6 @@ Gui::GuiNativeEvent::~GuiNativeEvent()
void Gui::GuiNativeEvent::initSpaceball(QMainWindow *window)
{
- // tmp. redirect stderr to a file to suppress an error message from spnav_open()
- RedirectStdErr err;
Q_UNUSED(window)
if (spnav_open() == -1) {
Base::Console().Log("Couldn't connect to spacenav daemon. Please ignore if you don't have a spacemouse.\n");

View file

@ -1,25 +0,0 @@
Patch-Source: https://github.com/FreeCAD/FreeCAD/commit/8b0df1dc936b544091f6a2d68df1c1a14ae3de5b
--
From 8b0df1dc936b544091f6a2d68df1c1a14ae3de5b Mon Sep 17 00:00:00 2001
From: lorenz <looooo@users.noreply.github.com>
Date: Tue, 27 Dec 2022 04:59:35 +0100
Subject: [PATCH] FEM: femmesh: fix AttributeError: module 'numpy' has no
attribute 'int'
---
src/Mod/Fem/femmesh/meshtools.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/Mod/Fem/femmesh/meshtools.py b/src/Mod/Fem/femmesh/meshtools.py
index dd8671b..d2e2b0a 100644
--- a/src/Mod/Fem/femmesh/meshtools.py
+++ b/src/Mod/Fem/femmesh/meshtools.py
@@ -485,7 +485,7 @@ def get_femelement_sets(
# fem_objects = FreeCAD FEM document objects
# get femelements for reference shapes of each obj.References
count_femelements = 0
- referenced_femelements = np.zeros((max(femelement_table.keys())+1,),dtype=np.int)
+ referenced_femelements = np.zeros((max(femelement_table.keys())+1,),dtype=int)
has_remaining_femelements = None
for fem_object_i, fem_object in enumerate(fem_objects):
obj = fem_object["Object"]

View file

@ -1,11 +0,0 @@
--- ./cMake/FreeCAD_Helpers/ConfigureCMakeVariables.cmake.orig
+++ ./cMake/FreeCAD_Helpers/ConfigureCMakeVariables.cmake
@@ -23,7 +23,7 @@
"Path to the directory containing PyCXX's cxxextensions.c source file")
# used as compiler defines
- set(RESOURCEDIR "${CMAKE_INSTALL_DATADIR}")
+ set(RESOURCEDIR "../../share/freecad")
set(LIBRARYDIR "${CMAKE_INSTALL_LIBDIR}")
set(DOCDIR "${CMAKE_INSTALL_DOCDIR}")

164
user/joplin/APKBUILD Normal file
View file

@ -0,0 +1,164 @@
# Maintainer: Antoine Martin (ayakael) <dev@ayakael.net>
# Contributor: Antoine Martin (ayakael) <dev@ayakael.net>
pkgname=joplin
pkgver=2.9.17
pkgdesc="A note taking and to-do application with synchronization capabilities"
pkgrel=0
depends="
electron
gtk+3.0
nodejs>=17.3
nss
orc
rsync
coreutils
"
arch="x86_64"
makedepends="
npm
yarn
python3
rsync
p7zip
jq
yq
electron
libgsf-dev
libexif-dev
libjpeg-turbo-dev
libwebp-dev
libxscrnsaver-dev
libappindicator-dev
vips-dev
libsecret-dev
"
url="https://joplinapp.org/"
subpackages="$pkgname-desktop"
license="MIT"
source="
joplin-$pkgver.tar.gz::https://github.com/laurent22/joplin/archive/v$pkgver.tar.gz
joplin.desktop
joplin-desktop.sh
joplin.sh
"
_yarn_cache="$srcdir"/yarn-cache
prepare() {
default_prepare
msg "Disabling husky (git hooks)"
sed -i '/"husky": ".*"/d' "$srcdir"/joplin-$pkgver/package.json
msg "Tweaking .yarnrc"
yq -i ".cacheFolder=(\"$_yarn_cache\")" "$srcdir"/joplin-$pkgver/.yarnrc.yml
msg "Tweaking lerna.json"
local tmp_json="$(mktemp --tmpdir="$srcdir")"
local lerna_json="$srcdir"/joplin-$pkgver/lerna.json
msg "Deleting app-mobile"
rm -r "$srcdir"/joplin-$pkgver/packages/app-mobile
rm -r "$srcdir"/joplin-$pkgver/packages/app-clipper
if [ $pkgver = 2.9.17 ]; then
# Temporary fix for 2.9.17
# Let yarn resolve version ^2.12.1 of nan package to 2.17.0 instead of 2.15.0 (https://github.com/nodejs/nan/pull/943)
local package_json="$srcdir"/joplin-$pkgver/package.json
cp $package_json $package_json.bak
jq '. + {"resolutions": {"nan@^2.12.1": "2.17.0"}}' $package_json.bak > $package_json
fi
}
build() {
# Force Lang
# INFO: https://github.com/alfredopalhares/joplin-pkgbuild/issues/25
export LANG=en_US.utf8
export ELECTRON_SKIP_BINARY_DOWNLOAD=1
msg "Installing dependencies through Yarn 3..."
# FSevents is on the optinal dependencies and its Mac Only
yarn
msg "Building the workspace"
yarn workspace @joplin/lib install
yarn workspace @joplin/renderer install
yarn workspace @joplin/app-desktop install
yarn workspace @joplin/app-desktop run electron-builder build --linux
}
check() {
npm run test || exit 0
}
package() {
msg "Packaging CLI with Repo Gulp"
cd "$builddir"/packages/app-cli/
_gulp_bin=$(yarn bin gulp)
msg2 "Using gulp: $_gulp_bin"
$_gulp_bin build
yarn pack
msg2 "Installing package"
mkdir -p "$pkgdir"/usr/share/joplin/
mv package.tgz "$pkgdir"/usr/share/joplin/
cd "$pkgdir"/usr/share/joplin/
yarn init
# FIXME: The repo wran crashed
# You also need to pipe yes, for depeendy
yes | yarn add ./package.tgz
msg "Fixing Directories Permissions"
# Non-deterministic race in npm gives 777 permissions to random directories.
# See https://github.com/npm/cli/issues/1103 for details.
find "$pkgdir/usr" -type d -exec chmod 755 {} +
msg "Removing References to \$pkgdir"
find "$pkgdir" -name package.json -print0 | xargs -0 sed -i "/_where/d"
msg "Fixing Permissions set by npm"
# npm gives ownership of ALL FILES to build user
# https://bugs.archlinux.org/task/63396
chown -R root:root "$pkgdir"
msg "Installing files"
install -Dm644 "$builddir"/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname/
install -Dm755 "$srcdir"/joplin.sh "$pkgdir/usr/bin/joplin"
}
desktop() {
# ./generateSha512.js fails if AppImage is not built
mkdir -p "$builddir"/packages/app-desktop/dist/
touch "$builddir"/packages/app-desktop/dist/AppImage
cd "$builddir"/packages/app-desktop/node_modules/@joplin/
ln -sf "../../../fork-uslug" "."
msg2 "Packaging the desktop..."
# TODO: Cleanup app.asar file
cd dist/linux-unpacked/
mkdir -p "$pkgdir"/usr/share/joplin-desktop
cp -R "." "$pkgdir"/usr/share/joplin-desktop
msg "Installing files"
install -Dm644 "$builddir"/LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname
install -Dm755 $srcdir/joplin-desktop.sh "$pkgdir"9/usr/bin/joplin-desktop
install -Dm644 $srcdir/joplin.desktop -t "$pkgdir"/usr/share/applications
local -r src_icon_dir="$builddir"/joplin-$pkgver/packages/app-desktop/build/icons
local -i size
for size in 16 22 24 32 36 48 64 72 96 128 192 256 512; do
[ -f "$src_icon_dir/${size}x$size.png" ] && install -Dm644 \
"$src_icon_dir/${size}x$size.png" \
"$pkgdir"/usr/share/icons/hicolor/${size}x$size/apps/joplin.png
done
}
sha512sums="
decf01d1dd51d6fdfdba7ffd7074d2d22d686e112064fd9232ae7d9947e4261e35c6b7ff30b086321f59adf9fe53f645cf41957216712e49e9ef104a62dc2e0f joplin-2.9.17.tar.gz
dd838bf77552bcd6a4b876ce0a21ab67f01f6462d89954017f7fa587fc0cda7607f92c4969f346c4bb08537f6ec7e62511965b62b65796517a6d29a3a78fe306 joplin.desktop
2e388b2446330ebfa299700969f4ca649a5cac8aac98e574503a7348084eda3741fe5017f35df5ad68a6c1a80bb28a9c1a7fdf4ff207fb8b20f42ac5c26a5ff7 joplin-desktop.sh
723f160523249541ba0f0045a7ddd81563bdaf1463bd64a745605573073b3c1869eb8489bd66cdcbc67a262629b8d5e0f2d021d178280804db4fd97d72937bd5 joplin.sh
"

View file

@ -0,0 +1,12 @@
#!/bin/bash
readonly joplin_dir="/usr/share/joplin-desktop/"
if [[ ! -d $joplin_dir ]]; then
echo "Cannot find /usr/share/joplin-desktop/"
exit 1
fi
cd $joplin_dir
./@joplinapp-desktop "$@"

View file

@ -0,0 +1,8 @@
[Desktop Entry]
Name=Joplin
Comment=Joplin - a note taking and to-do application with synchronization capabilities for Windows, macOS, Linux, Android and iOS.
Exec=/usr/bin/joplin-desktop
Icon=/usr/share/joplin-desktop/resources/build/icons/128x128.png
Terminal=false
Type=Application
Categories=Application;Office;

12
user/joplin/joplin.sh Normal file
View file

@ -0,0 +1,12 @@
#!/bin/bash
readonly joplin_dir="/usr/share/joplin/node_modules/joplin/app/"
if [[ ! -d $joplin_dir ]]; then
echo "Cannot find ${joplin_dir}"
exit 1
fi
cd $joplin_dir
node main.js ${@}