summaryrefslogtreecommitdiff
path: root/artcraft-raveos/lightcraft
diff options
context:
space:
mode:
Diffstat (limited to 'artcraft-raveos/lightcraft')
-rw-r--r--artcraft-raveos/lightcraft/PKGBUILD16
1 files changed, 12 insertions, 4 deletions
diff --git a/artcraft-raveos/lightcraft/PKGBUILD b/artcraft-raveos/lightcraft/PKGBUILD
index 83b3f0a..5cf4d67 100644
--- a/artcraft-raveos/lightcraft/PKGBUILD
+++ b/artcraft-raveos/lightcraft/PKGBUILD
@@ -19,13 +19,21 @@ sha256sums=('a1273f4a9f68694ff1778b81d6e6e7e9de78f326c711ab57489770e8c6b76bff')
_srcenv() {
cd "$_archive"
- export CARGO_HOME="$srcdir"
+ export CARGO_HOME="${ARTCRAFT_CARGO_HOME:-$srcdir}"
export CARGO_PROFILE_RELEASE_OPT_LEVEL=3
- export CARGO_TARGET_DIR=target
+ export CARGO_TARGET_DIR="${ARTCRAFT_TARGET_DIR:-target}"
export RUSTUP_TOOLCHAIN=stable
CFLAGS+=' -fno-lto'
}
+_jobs() {
+ local mem cpu
+ mem=$(awk '/MemAvailable/ {print int($2 / 2097152)}' /proc/meminfo)
+ cpu=$(nproc)
+ (( mem < 1 )) && mem=1
+ echo $(( mem < cpu ? mem : cpu ))
+}
+
_icons=(512 256 128 64 48 32 16)
prepare() {
@@ -35,13 +43,13 @@ prepare() {
build() {
_srcenv
- cargo build --frozen --release -j2
+ cargo build --frozen --release -j"$(_jobs)"
}
package() {
depends+=(libgcc_s.so)
cd "$_archive"
- install -Dm0755 -t "$pkgdir/usr/bin/" "target/release/$pkgname"{,-cli}
+ install -Dm0755 -t "$pkgdir/usr/bin/" "${ARTCRAFT_TARGET_DIR:-target}/release/$pkgname"{,-cli}
install -Dm0644 -t "$pkgdir/usr/share/applications/" "packaging/linux/ai.storyteller.$pkgname.desktop"
install -Dm0644 -t "$pkgdir/usr/share/mime/packages/" "packaging/linux/ai.storyteller.$pkgname.mime.xml"
install -Dm0644 -t "$pkgdir/usr/share/icons/hicolor/scalable/" assets/app-icon/hicolor/scalable/apps/ai.storyteller.$pkgname.svg