add jasp-desktop

This commit is contained in:
Sukanka 2022-06-04 01:12:53 +08:00
parent c125bb4323
commit 5fc398f888
4 changed files with 206 additions and 0 deletions

View file

@ -0,0 +1,121 @@
#Maintainer: sukanka <su975853527 AT gmail.com>
_pkgname=jasp
_pkgver=0.16.2
pkgname=jasp-desktop
pkgver=${_pkgver//[:-]/.}
pkgrel=1
pkgdesc="A complete statistical package for both Bayesian and Frequentist statistical methods"
arch=('x86_64')
url="https://github.com/jasp-stats/jasp-desktop"
license=('AGPL3')
makedepends=("cmake" 'boost' 'jsoncpp'
'openssl'
'autoconf'
'zlib'
'bison'
'flex'
'jags'
'gcc-fortran'
'qtcreator'
)
depends=('r'
'qt6-5compat'
'readstat'
'libarchive'
'r-rinside'
'qt6-base'
'qt6-webengine'
# jaspBase
"r-jaspbase"
"r-jaspgraphs"
"r-jaspresults"
"r-jasptools"
#jaspCommon
"r-jaspdescriptives"
"r-jaspttests"
"r-jaspanova"
"r-jaspmixedmodels"
"r-jaspregression"
"r-jaspfrequencies"
"r-jaspfactor"
#jaspExtra
"r-jaspaudit"
"r-jaspbain"
"r-jaspbsts"
"r-jaspcircular"
"r-jaspcochrane"
"r-jaspdistributions"
"r-jaspequivalencettests"
"r-jaspjags"
"r-jasplearnbayes"
"r-jaspmachinelearning"
"r-jaspmetaanalysis"
"r-jaspnetwork"
"r-jaspprocesscontrol"
"r-jaspreliability"
"r-jaspsem"
"r-jaspsummarystatistics"
"r-jaspvisualmodeling"
"r-jaspprophet"
)
provides=($_pkgname)
source=("${pkgname}-${pkgver}.tar.gz::https://github.com/jasp-stats/jasp-desktop/archive/refs/tags/v${pkgver}.tar.gz"
"${_pkgname}".patch
'jasp.sh'
"jaspColumnEncoder::git+https://github.com/jasp-stats/jaspColumnEncoder.git"
'jaspResults::git+https://github.com/jasp-stats/jaspResults.git'
)
sha256sums=('6f62db1b2b0741c894a7937f413799887e0d443f25f1b85d59e914847b14fff1'
'3e359651595e76790ea287b57cfd629279f027a9934a36b95b2825c2ba3bf43d'
'e0714d980e7549b4c7dcbae50370e95b6ad2e7f0cf21a534ceb3a5a83ee583fd'
'SKIP'
'SKIP'
)
prepare(){
cd $srcdir/${pkgname}-${pkgver}
patch --strip=1 < ../${_pkgname}.patch
cp -rf $srcdir/jaspColumnEncoder/* Common/jaspColumnEncoder
cp -rf $srcdir/jaspResults/* R-Interface/jaspResults
find Tools/CMake -name *.cmake -print0 | xargs -0 sed -i "s|/usr/local|/usr|g"
}
build(){
cd $srcdir/${pkgname}-${pkgver}
mkdir -p ${srcdir}/usr/lib/R
cmake -S . -B build -DCUSTOM_R_PATH=/usr/lib/R -DLINUX_LOCAL_BUILD=OFF -DINSTALL_R_MODULES=OFF \
-DUSE_LOCAL_R_LIBS_PATH=",lib=\"${srcdir}/usr/lib/R\"" \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_INSTALL_PREFIX=/usr/lib/${pkgname} -DCMAKE_INSTALL_LIBDIR=lib
cmake --build build -- -j 5
}
package() {
cd $srcdir/${pkgname}-${pkgver}/build
make install DESTDIR=${pkgdir}
install -Dm755 $srcdir/jasp.sh ${pkgdir}/usr/bin/jasp
cd ${pkgdir}/usr/lib/${pkgname}
mv share ${pkgdir}/usr
mv Resources ${pkgdir}/usr/share/${pkgname}
ln -s /usr/share/${pkgname} ${pkgdir}/usr/lib/${pkgname}/Resources
rm -rf lib64
rm -rf Modules/{renv-cache,*.log}
# fix RPATH
patchelf --add-rpath /usr/lib/R/library/RInside/lib/ \
${pkgdir}/usr/lib/jasp-desktop/bin/JASPEngine
sed -i "s|^Exec.*|Exec=jasp %f|g" \
${pkgdir}/usr/share/applications/org.jaspstats.JASP.desktop
rm -rf ${pkgdir}/usr/lib/jasp-desktop/{renv-root,renv-cache}
}

View file

@ -0,0 +1,33 @@
diff --color --unified --recursive --text jasp-desktop-0.16.2/Tools/CMake/R.cmake jasp-desktop-0.16.21/Tools/CMake/R.cmake
--- jasp-desktop-0.16.2/Tools/CMake/R.cmake 2022-04-19 15:47:06.000000000 +0800
+++ jasp-desktop-0.16.21/Tools/CMake/R.cmake 2022-05-23 01:21:50.757847997 +0800
@@ -706,8 +706,9 @@
set(R_EXECUTABLE "${R_HOME_PATH}/bin/R")
set(RCPP_PATH "${R_LIBRARY_PATH}/Rcpp")
set(RINSIDE_PATH "${R_LIBRARY_PATH}/RInside")
-
- set(USE_LOCAL_R_LIBS_PATH ", lib='${R_LIBRARY_PATH}'")
+ if(NOT USE_LOCAL_R_LIBS_PATH)
+ set(USE_LOCAL_R_LIBS_PATH ", lib='${R_LIBRARY_PATH}'")
+ endif(NOT USE_LOCAL_R_LIBS_PATH)
message(CHECK_START "Looking for R.h")
set(R_INCLUDE_PATH "${R_HOME_PATH}/include")
diff --color --unified --recursive --text jasp-desktop-0.16.2/Tools/CMake/Modules.cmake jasp-desktop-0.16.21/Tools/CMake/Modules.cmake
--- jasp-desktop-0.16.2/Tools/CMake/Modules.cmake 2022-04-19 15:47:06.000000000 +0800
+++ jasp-desktop-0.16.21/Tools/CMake/Modules.cmake 2022-05-23 02:02:39.562203992 +0800
@@ -158,14 +158,6 @@
if ('jaspBase' %in% installed.packages()) {
cat(NULL, file='${MODULES_BINARY_PATH}/jaspBase-installed-successfully.log')
} else {
- install.packages(c('ggplot2', 'gridExtra', 'gridGraphics',
- 'jsonlite', 'modules', 'officer', 'pkgbuild',
- 'plyr', 'qgraph', 'ragg', 'R6', 'renv',
- 'rjson', 'rvg', 'svglite', 'systemfonts',
- 'withr', 'testthat',
- 'data.table', 'httr', 'lifecycle',
- 'pkgload', 'remotes', 'stringi', 'stringr',
- 'vdiffr'), type='${R_PKG_TYPE}', repos='${R_REPOSITORY}' ${USE_LOCAL_R_LIBS_PATH})
install.packages('${PROJECT_SOURCE_DIR}/Engine/jaspBase/', type='source', repos=NULL ${USE_LOCAL_R_LIBS_PATH}, INSTALL_opts='--no-multiarch --no-docs --no-test-load')
}
")

View file

@ -0,0 +1,12 @@
#!/usr/bin/env python3
from lilaclib import *
def pre_build():
for line in edit_file('PKGBUILD'):
if line.startswith('_pkgver='):
line = f'_pkgver={_G.newver}'
print(line)
update_pkgver_and_pkgrel(_G.newver.replace(':', '.').replace('-', '.'))
def post_build():
git_pkgbuild_commit()

View file

@ -0,0 +1,40 @@
maintainers:
- github: sukanka
email: su975853527@gmail.com
build_prefix: extra-x86_64
repo_depends:
- "r-rinside"
- "r-jaspbase"
- "r-jaspgraphs"
- "r-jaspresults"
- "r-jasptools"
- "r-jaspdescriptives"
- "r-jaspttests"
- "r-jaspanova"
- "r-jaspmixedmodels"
- "r-jaspregression"
- "r-jaspfrequencies"
- "r-jaspfactor"
- "r-jaspaudit"
- "r-jaspbain"
- "r-jaspcircular"
- "r-jaspcochrane"
- "r-jaspdistributions"
- "r-jaspequivalencettests"
- "r-jaspjags"
- "r-jasplearnbayes"
- "r-jaspmachinelearning"
- "r-jaspmetaanalysis"
- "r-jaspnetwork"
- "r-jaspprocesscontrol"
- "r-jaspreliability"
- "r-jaspsem"
- "r-jaspsummarystatistics"
- "r-jaspvisualmodeling"
- "r-jaspprophet"
pre_build: vcs_update
post_build: git_pkgbuild_commit
update_on:
- source: github
github: jasp-stats/jasp-desktop
use_latest_release: true