blue-build / modules

BlueBuild standard modules used for building your Atomic Images
Apache License 2.0
21 stars 27 forks source link

Missing gschemas for extension installed with gnome-extensions module #243

Closed shdwchn10 closed 1 month ago

shdwchn10 commented 1 month ago

Enabling Fly-Pie extension gives this error:

GLib.FileError: Failed to open file “/usr/share/gnome-shell/extensions/flypie@schneegans.github.com/schemas/gschemas.compiled”: open() failed: No such file or directory

Screenshot from 2024-06-01 20-53-29

Neither the old nor new syntax works:

  - type: gnome-extensions
    install:
      - flypieschneegans.github.com.v26
  - type: gnome-extensions
    install:
      - Fly-Pie
xynydev commented 1 month ago

@fiftydinar

fiftydinar commented 1 month ago

We currently only copy schema xml's, since compiled schema resides in /usr/share/glib-2.0/schemas, but it seems that some rare extensions like this are hard-coded to follow specific compiled schema directory.

I will fix this.

fiftydinar commented 1 month ago

Hello, the fix for this extension is merged:

https://github.com/blue-build/modules/pull/244 https://github.com/blue-build/modules/pull/245

Please rebuild the image & report if it works. If it still doesn't work, then please reopen the issue.

shdwchn10 commented 1 month ago

Thank you for your fast response! But now build is failing with legacy syntax:

#14 FROM ghcr.io/blue-build/modules:latest@sha256:2f9ae6b1a1c225f2fe8be75512fcbe8160ccbbd62125c40404222534833ab655
#14 resolve ghcr.io/blue-build/modules:latest@sha256:2f9ae6b1a1c225f2fe8be75512fcbe8160ccbbd62125c40404222534833ab655 0.0s done
#14 sha256:2f9ae6b1a1c225f2fe8be75512fcbe8160ccbbd62125c40404222534833ab655 346B / 346B done
#14 sha256:462ab22afe57e7e5388dbbb7d35f820347b02d1648a0114bacc69126e1e6c7c4 499B / 499B done
#14 sha256:3c0ddb728eb380a2937f58f272081e224b634992daa816b22bd4e94edfe805fa 74.98kB / 74.98kB 0.1s done
#14 extracting sha256:3c0ddb728eb380a2937f58f272081e224b634992daa816b22bd4e94edfe805fa 0.0s done
#14 DONE 0.3s

...skip

#29 0.266 =========================================== Start 'gnome-extensions' Module ===========================================
#29 2.979 Gnome version: 46
#29 2.980 ATTENTION: This is the legacy method of installing extensions.
#29 2.980            Change the install entry to literal name of the extension
#29 2.980            Please see the latest docs of gnome-extensions module for more details:
#29 2.980            https://blue-build.org/reference/modules/gnome-extensions/
#29 2.984 Installing flypieschneegans.github.com.v26 Gnome extension with version v26
#29 4.011 [0] Downloading 'https://extensions.gnome.org/extension-data/flypieschneegans.github.com.v26.shell-extension.zip' ...
#29 4.011 Saving '/tmp/flypieschneegans.github.com.v26/flypieschneegans.github.com.v26.shell-extension.zip'
#29 4.011 HTTP response 200  [https://extensions.gnome.org/extension-data/flypieschneegans.github.com.v26.shell-extension.zip]
#29 4.014 Extracting ZIP archive
#29 4.064 Removing archive
#29 4.066 Reading necessary info from metadata.json
#29 4.135 Installing main extension files
#29 4.160 Installing schema extension file
#29 4.160 /tmp/modules/gnome-extensions/gnome-extensions.sh: line 89: INSTALL_EXT: unbound variable
#29 ERROR: process "/bin/sh -c /tmp/scripts/run_module.sh 'gnome-extensions' '{\"type\":\"gnome-extensions\",\"install\":[\"flypieschneegans.github.com.v26\",\"reorder-workspacesjer.dev.v23\",\"task-widgetjuozasmiskinis.gitlab.io.v20\",\"VitalsCoreCoding.com.v67\"]}'   && ostree container commit" did not complete successfully: exit code: 1
------
 > [os  7/12] RUN --mount=type=bind,from=stage-config,src=/config,dst=/tmp/config,rw --mount=type=bind,from=stage-modules,src=/modules,dst=/tmp/modules,rw --mount=type=bind,from=ghcr.io/blue-build/cli:5e7524918f69451dae9fb47890c23c7f02cead8d-build-scripts,src=/scripts/,dst=/tmp/scripts/   --mount=type=cache,dst=/var/cache/rpm-ostree,id=rpm-ostree-cache-os-40,sharing=locked   /tmp/scripts/run_module.sh 'gnome-extensions' '{"type":"gnome-extensions","install":["flypieschneegans.github.com.v26","reorder-workspacesjer.dev.v23","task-widgetjuozasmiskinis.gitlab.io.v20","VitalsCoreCoding.com.v67"]}'   && ostree container commit:
2.984 Installing flypieschneegans.github.com.v26 Gnome extension with version v26
4.011 [0] Downloading 'https://extensions.gnome.org/extension-data/flypieschneegans.github.com.v26.shell-extension.zip' ...
4.011 Saving '/tmp/flypieschneegans.github.com.v26/flypieschneegans.github.com.v26.shell-extension.zip'
4.011 HTTP response 200  [https://extensions.gnome.org/extension-data/flypieschneegans.github.com.v26.shell-extension.zip]
4.014 Extracting ZIP archive
4.064 Removing archive
4.066 Reading necessary info from metadata.json
4.135 Installing main extension files
4.160 Installing schema extension file
4.160 /tmp/modules/gnome-extensions/gnome-extensions.sh: line 89: INSTALL_EXT: unbound variable
------
Dockerfile:70
--------------------
  69 |       && ostree container commit
  70 | >>> RUN \
  71 | >>> --mount=type=bind,from=stage-config,src=/config,dst=/tmp/config,rw \
  72 | >>> --mount=type=bind,from=stage-modules,src=/modules,dst=/tmp/modules,rw \
  73 | >>> --mount=type=bind,from=ghcr.io/blue-build/cli:5e7524918f69451dae9fb47890c23c7f02cead8d-build-scripts,src=/scripts/,dst=/tmp/scripts/ \
  74 | >>>   --mount=type=cache,dst=/var/cache/rpm-ostree,id=rpm-ostree-cache-os-40,sharing=locked \
  75 | >>>   /tmp/scripts/run_module.sh 'gnome-extensions' '{"type":"gnome-extensions","install":["flypieschneegans.github.com.v26","reorder-workspacesjer.dev.v23","task-widgetjuozasmiskinis.gitlab.io.v20","VitalsCoreCoding.com.v67"]}' \
  76 | >>>   && ostree container commit
  77 |     RUN \
--------------------
ERROR: failed to solve: process "/bin/sh -c /tmp/scripts/run_module.sh 'gnome-extensions' '{\"type\":\"gnome-extensions\",\"install\":[\"flypieschneegans.github.com.v26\",\"reorder-workspacesjer.dev.v23\",\"task-widgetjuozasmiskinis.gitlab.io.v20\",\"VitalsCoreCoding.com.v67\"]}'   && ostree container commit" did not complete successfully: exit code: 1

I'm testing new syntax now, but it will take some time

shdwchn10 commented 1 month ago

The new configuration style works. Now all that's left is a fix for the legacy configuration: #246

P.S. I can't reopen the issue :c

shdwchn10 commented 1 month ago

@xynydev @fiftydinar Correct me if I'm wrong. But it seems like all the old configurations are broken right now, and since the :latest modules are hardcoded in the Containerfile template, for all those who install extensions the old way, CI won't work.

fiftydinar commented 1 month ago

Correct me if I'm wrong. But it seems like all the old configurations are broken right now, and since the :latest modules are hardcoded in the Containerfile template, for all those who install extensions the old way, CI won't work.

That was true, but since the fix is merged now, that's not true any longer :D