Compare commits

...

5 Commits

Author SHA1 Message Date
Alexandre
326c39f8e8 fix: emit addon options before env_vars so env_vars can override them 2026-05-18 11:55:11 +02:00
github-actions
86e7f97d87 GitHub bot: changelog [nobuild] 2026-05-18 05:26:46 +00:00
Alexandre
75ed663602 Merge pull request #2716 from ToledoEM/manyfold
Manyfold version bump
2026-05-18 07:24:56 +02:00
ToledoEM
afdf95a16c Updated readme with better optimization for small footprint machine 2026-05-17 17:39:36 +01:00
ToledoEM
ba3c43975e Bump version manyfold3d to 0.140.1 2026-05-17 17:34:13 +01:00
4 changed files with 48 additions and 22 deletions

View File

@@ -180,6 +180,7 @@ export_var() {
################################################################################
# JSON parsing (jq bug fixed: use "? //", not "?//")
# Order: 1) top-level addon options first, 2) env_vars second (can override)
################################################################################
while IFS= read -r -d $'\0' k && IFS= read -r v; do
export_var "$k" "$v"
@@ -189,7 +190,15 @@ done < <(
. as $root
| (
# 1) env_vars[] (supported shapes)
# 1) top-level scalar options excluding env_vars (processed first)
$root
| to_entries[]
| select(.key != "env_vars")
| select((.value|type) != "object" and (.value|type) != "array" and (.value|type) != "null")
| emit(.key; .value)
),
(
# 2) env_vars[] (processed second, overrides addon options if same key)
($root.env_vars? // [])[] as $e
| if ($e|type) == "object" then
if ($e|has("name") and has("value")) then
@@ -205,14 +214,6 @@ done < <(
| emit($m.k; $m.v)
else empty end
end
),
(
# 2) top-level scalar options excluding env_vars
$root
| to_entries[]
| select(.key != "env_vars")
| select((.value|type) != "object" and (.value|type) != "array" and (.value|type) != "null")
| emit(.key; .value)
)
' "$JSONSOURCE"
)

View File

@@ -1,11 +1,23 @@
## 0.139.3 (11-05-2026)
- Minor bugs fixed
## 0.138.0 (24-04-2026)
- Minor bugs fixed
## 0.137.0 (13-04-2026)
## 0.140.1 (18-05-2026)
- Minor bugs fixed
# Changelog
## 0.140.1
- Bump version to 0.140.1
- Detailed changes https://github.com/manyfold3d/manyfold/compare/v0.139.3...v0.140.1
## 0.139.3 (11-05-2026)
- Minor bugs fixed
## 0.138.0 (24-04-2026)
- Minor bugs fixed
## 0.137.0 (13-04-2026)
- Minor bugs fixed
## 0.137.0
- Bumped upstream Manyfold image to `ghcr.io/manyfold3d/manyfold-solo:0.137.0` for both `amd64` and `aarch64`.

View File

@@ -65,20 +65,33 @@ Local development alternative on the HA host:
- `max_file_upload_size`: Max uploaded archive size in bytes.
- `max_file_extract_size`: Max extracted archive size in bytes.
## Small server tuning
### Raspberry Pi (single-user) example
For low-memory HAOS hosts, start with:
For a Raspberry Pi 4 or Pi 5 running a single-user Manyfold instance with modest library sizes:
```yaml
puid: 1000
pgid: 1000
multiuser: false
library_path: /share/manyfold/models
thumbnails_path: /config/thumbnails
log_level: info
web_concurrency: 1
rails_max_threads: 5
default_worker_concurrency: 2
rails_max_threads: 4
default_worker_concurrency: 1
performance_worker_concurrency: 1
max_file_upload_size: 268435456
max_file_extract_size: 536870912
max_file_upload_size: 134217728
max_file_extract_size: 268435456
```
Then restart the add-on and increase gradually only if needed.
**Rationale:**
- `web_concurrency: 1` — Single Puma worker (one process) saves RAM on Pi.
- `rails_max_threads: 4` — Four threads per worker is sufficient for single-user browsing.
- `default_worker_concurrency: 1` — Serial background job processing (indexing, thumbnail generation).
- `performance_worker_concurrency: 1` — Single performance worker to avoid CPU thrashing during STL processing.
- `multiuser: false` — Disable authentication/multiuser features for personal use.
- `max_file_upload_size: 128 MB` — Reasonable limit for Pi storage and network.
- `max_file_extract_size: 256 MB` — Extracted archives stay manageable.
## Fix root warning (PUID/PGID)

View File

@@ -1,7 +1,7 @@
name: "Manyfold"
slug: manyfold
description: "Manyfold 3D model manager as a Home Assistant add-on, using the upstream image with configurable library/index paths."
version: "0.139.3"
version: "0.140.1"
url: "https://github.com/alexbelgium/hassio-addons/tree/master/manyfold"
image: ghcr.io/alexbelgium/manyfold-{arch}
arch: