Immich upgrade failing HexOS #7983

Closed
opened 2026-02-05 13:26:58 +03:00 by OVERLORD · 2 comments
Owner

Originally created by @Bigbuster153 on GitHub (Dec 3, 2025).

I have searched the existing issues, both open and closed, to make sure this is not a duplicate report.

  • Yes

The bug

When trying to upgrade from either HexOS UI or TrueNAS UI upgrade from 1.10.15 to 1.10.16 fails

The OS that Immich Server is running on

TrueNAS Community 25.04.2.6

Version of Immich Server

1.10.15

Version of Immich Mobile App

N/A

Platform with the issue

  • Server
  • Web
  • Mobile

Device make and model

N/A

Your docker-compose.yml content

unknown, cannot find.

Your .env content

unknown, cannot find.

Reproduction steps

  1. select 'update/upgrade' in either truenas or hexos webui
  2. fails

Relevant log output

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 515, in run
    await self.future
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 562, in __run_body
    rv = await self.middleware.run_in_thread(self.method, *args)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 627, in run_in_thread
    return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 624, in run_in_executor
    return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/concurrent/futures/thread.py", line 58, in run
    result = self.fn(*self.args, **self.kwargs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/api/base/decorator.py", line 101, in wrapped
    result = func(*args)
             ^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/upgrade.py", line 133, in upgrade
    update_app_config(app_name, upgrade_version['version'], new_values)
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py", line 60, in update_app_config
    render_compose_templates(
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py", line 51, in render_compose_templates
    raise CallError(f'Failed to render compose templates: {cp.stderr}')
middlewared.service_exception.CallError: [EFAULT] Failed to render compose templates: Traceback (most recent call last):
  File "/usr/bin/apps_render_app", line 33, in <module>
    sys.exit(load_entry_point('apps-validation==0.1', 'console_scripts', 'apps_render_app')())
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 48, in main
    render_templates_from_path(args.path, args.values)
  File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 19, in render_templates_from_path
    rendered_data = render_templates(
                    ^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/catalog_templating/render.py", line 31, in render_templates
    rendered_templates[i.name] = env.get_template(i.name).render(
                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1301, in render
    self.environment.handle_exception()
  File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 936, in handle_exception
    raise rewrite_traceback_stack(source=source)
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/docker-compose.yaml", line 12, in top-level template code
    {% set postgres = tpl.deps.postgres(values.consts.pgvecto_container_name, "pgvecto_image", pg_config, perm_container) %}
    ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps.py", line 36, in postgres
    return PostgresContainer(self._render_instance, name, image, config, perms_instance)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps_postgres.py", line 105, in __init__
    c = self._render_instance.add_container(name, image)
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/render.py", line 49, in add_container
    container = Container(self, name, image)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/container.py", line 105, in __init__
    self.deploy: Deploy = Deploy(self._render_instance)
                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deploy.py", line 15, in __init__
    self.resources: Resources = Resources(self._render_instance)
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 24, in __init__
    self._auto_add_gpus_from_values()
  File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 55, in _auto_add_gpus_from_values
    raise RenderError(f"Expected [uuid] to be set for GPU in slot [{pci}] in [nvidia_gpu_selection]")
base_v2_1_65.error.RenderError: Expected [uuid] to be set for GPU in slot [0000:01:00.0] in [nvidia_gpu_selection]

 FAILED
[EFAULT] Failed to render compose templates: Traceback (most recent call last): File "/usr/bin/apps_render_app", line 33, in sys.exit(load_entry_point('apps-validation==0.1', 'console_scripts', 'apps_render_app')()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 48, in main render_templates_from_path(args.path, args.values) File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 19, in render_templates_from_path rendered_data = render_templates( ^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/catalog_templating/render.py", line 31, in render_templates rendered_templates[i.name] = env.get_template(i.name).render( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1301, in render self.environment.handle_exception() File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 936, in handle_exception raise rewrite_traceback_stack(source=source) File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/docker-compose.yaml", line 12, in top-level template code {% set postgres = tpl.deps.postgres(values.consts.pgvecto_container_name, "pgvecto_image", pg_config, perm_container) %} ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps.py", line 36, in postgres return PostgresContainer(self._render_instance, name, image, config, perms_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps_postgres.py", line 105, in __init__ c = self._render_instance.add_container(name, image) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/render.py", line 49, in add_container container = Container(self, name, image) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/container.py", line 105, in __init__ self.deploy: Deploy = Deploy(self._render_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deploy.py", line 15, in __init__ self.resources: Resources = Resources(self._render_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 24, in __init__ self._auto_add_gpus_from_values() File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 55, in _auto_add_gpus_from_values raise RenderError(f"Expected [uuid] to be set for GPU in slot [{pci}] in [nvidia_gpu_selection]") base_v2_1_65.error.RenderError: Expected [uuid] to be set for GPU in slot [0000:01:00.0] in [nvidia_gpu_selection]

Additional information

No response

Originally created by @Bigbuster153 on GitHub (Dec 3, 2025). ### I have searched the existing issues, both open and closed, to make sure this is not a duplicate report. - [x] Yes ### The bug When trying to upgrade from either HexOS UI or TrueNAS UI upgrade from 1.10.15 to 1.10.16 fails ### The OS that Immich Server is running on TrueNAS Community 25.04.2.6 ### Version of Immich Server 1.10.15 ### Version of Immich Mobile App N/A ### Platform with the issue - [x] Server - [ ] Web - [ ] Mobile ### Device make and model N/A ### Your docker-compose.yml content ```YAML unknown, cannot find. ``` ### Your .env content ```Shell unknown, cannot find. ``` ### Reproduction steps 1. select 'update/upgrade' in either truenas or hexos webui 2. fails ### Relevant log output ```shell Traceback (most recent call last): File "/usr/lib/python3/dist-packages/middlewared/job.py", line 515, in run await self.future File "/usr/lib/python3/dist-packages/middlewared/job.py", line 562, in __run_body rv = await self.middleware.run_in_thread(self.method, *args) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/main.py", line 627, in run_in_thread return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/main.py", line 624, in run_in_executor return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs)) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3.11/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, **self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/api/base/decorator.py", line 101, in wrapped result = func(*args) ^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/upgrade.py", line 133, in upgrade update_app_config(app_name, upgrade_version['version'], new_values) File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py", line 60, in update_app_config render_compose_templates( File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py", line 51, in render_compose_templates raise CallError(f'Failed to render compose templates: {cp.stderr}') middlewared.service_exception.CallError: [EFAULT] Failed to render compose templates: Traceback (most recent call last): File "/usr/bin/apps_render_app", line 33, in <module> sys.exit(load_entry_point('apps-validation==0.1', 'console_scripts', 'apps_render_app')()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 48, in main render_templates_from_path(args.path, args.values) File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 19, in render_templates_from_path rendered_data = render_templates( ^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/catalog_templating/render.py", line 31, in render_templates rendered_templates[i.name] = env.get_template(i.name).render( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1301, in render self.environment.handle_exception() File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 936, in handle_exception raise rewrite_traceback_stack(source=source) File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/docker-compose.yaml", line 12, in top-level template code {% set postgres = tpl.deps.postgres(values.consts.pgvecto_container_name, "pgvecto_image", pg_config, perm_container) %} ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps.py", line 36, in postgres return PostgresContainer(self._render_instance, name, image, config, perms_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps_postgres.py", line 105, in __init__ c = self._render_instance.add_container(name, image) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/render.py", line 49, in add_container container = Container(self, name, image) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/container.py", line 105, in __init__ self.deploy: Deploy = Deploy(self._render_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deploy.py", line 15, in __init__ self.resources: Resources = Resources(self._render_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 24, in __init__ self._auto_add_gpus_from_values() File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 55, in _auto_add_gpus_from_values raise RenderError(f"Expected [uuid] to be set for GPU in slot [{pci}] in [nvidia_gpu_selection]") base_v2_1_65.error.RenderError: Expected [uuid] to be set for GPU in slot [0000:01:00.0] in [nvidia_gpu_selection] FAILED [EFAULT] Failed to render compose templates: Traceback (most recent call last): File "/usr/bin/apps_render_app", line 33, in sys.exit(load_entry_point('apps-validation==0.1', 'console_scripts', 'apps_render_app')()) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 48, in main render_templates_from_path(args.path, args.values) File "/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py", line 19, in render_templates_from_path rendered_data = render_templates( ^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/catalog_templating/render.py", line 31, in render_templates rendered_templates[i.name] = env.get_template(i.name).render( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 1301, in render self.environment.handle_exception() File "/usr/lib/python3/dist-packages/jinja2/environment.py", line 936, in handle_exception raise rewrite_traceback_stack(source=source) File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/docker-compose.yaml", line 12, in top-level template code {% set postgres = tpl.deps.postgres(values.consts.pgvecto_container_name, "pgvecto_image", pg_config, perm_container) %} ^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps.py", line 36, in postgres return PostgresContainer(self._render_instance, name, image, config, perms_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deps_postgres.py", line 105, in __init__ c = self._render_instance.add_container(name, image) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/render.py", line 49, in add_container container = Container(self, name, image) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/container.py", line 105, in __init__ self.deploy: Deploy = Deploy(self._render_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/deploy.py", line 15, in __init__ self.resources: Resources = Resources(self._render_instance) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 24, in __init__ self._auto_add_gpus_from_values() File "/mnt/.ix-apps/app_configs/immich/versions/1.10.16/templates/library/base_v2_1_65/resources.py", line 55, in _auto_add_gpus_from_values raise RenderError(f"Expected [uuid] to be set for GPU in slot [{pci}] in [nvidia_gpu_selection]") base_v2_1_65.error.RenderError: Expected [uuid] to be set for GPU in slot [0000:01:00.0] in [nvidia_gpu_selection] ``` ### Additional information _No response_
Author
Owner

@bo0tzz commented on GitHub (Dec 3, 2025):

The truenas/hexos package is not managed by us and we can't provide support for it.

@bo0tzz commented on GitHub (Dec 3, 2025): The truenas/hexos package is not managed by us and we can't provide support for it.
Author
Owner

@Bigbuster153 commented on GitHub (Dec 3, 2025):

Do you know who does?

@Bigbuster153 commented on GitHub (Dec 3, 2025): Do you know who does?
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: immich-app/immich#7983