Open m-roberts opened 3 years ago
Hi Mike,
You are missing the npm install
step as described here:
https://github.com/JoseExposito/touche/blob/master/HACKING.md#compilation
Long story short, I needed an XML parsers and GJS doesn't have one... But npm does.
If you check how the package is generated by CI: https://github.com/JoseExposito/touche/blob/master/.github/workflows/release.yml#L42
You'll notice that with every stable release, I distribute an archive.tar.gz
that you can use to build the package without npm.
Let me know if that works for you.
In an ideal world, these additional steps would be captured in debian/rules
so that dpkg-buildpackage
actually invokes these extra commands.
See here for an example of how we handle some npm dependencies from within the Debian packaging system.
I think that adding that rule will be affected by https://github.com/pi-top/action-debian-package/issues/19
So this worked for me:
diff --git a/debian/rules b/debian/rules
index 2d33f6a..15c531a 100755
--- a/debian/rules
+++ b/debian/rules
@@ -2,3 +2,12 @@
%:
dh $@
+
+
+override_dh_auto_build:
+ npm ci
+ dh_auto_build
+
+override_dh_clean:
+ rm -rf node_modules
+ dh_clean
Note that we are no longer using the action that you have for building - see here for an example.
This is the repo that handles the build action. I recommend that you give it a try, as we are using it across our entire codebase with much success.
Instead of uses: pi-top/debian-package-build-action@master
, I would suggest uses: pi-top/debian-package-build-action@7377e3b0f0e86813246273c35516bda5707e42df
or something instead, so that you get repeatable behaviour. Our tooling is still developing, and so from time to time we have breaking changes...
Anyway, hope this helps! We are simply patching touche's source to achieve this same effect until (if?) it is resolved upstream. Note, for some reason we also need to replace npm (>= 3)
with npm
in the control file, but I'm not sure why.
Describe the bug
Full output here: https://pastebin.com/PQJycDe5 Relevant output:
The main part:
I am not very experienced in this area, so I'm not sure what is required.
Environment