Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use debhelper tools for dependency compilation and packaging #408

Open
wants to merge 14 commits into
base: master
Choose a base branch
from

Conversation

robin-reckmann
Copy link
Contributor

Use debhelper tools for creation of the .deb packages rather than old checkinstall.

@robin-reckmann robin-reckmann changed the title Use debhelper tools for dependency compilation and packaging [WIP] Use debhelper tools for dependency compilation and packaging Nov 18, 2024
@robin-reckmann robin-reckmann changed the title [WIP] Use debhelper tools for dependency compilation and packaging Use debhelper tools for dependency compilation and packaging Nov 20, 2024
@robin-reckmann robin-reckmann marked this pull request as ready for review November 20, 2024 15:57
@adeebshihadeh
Copy link
Contributor

What does this get us over checkinstall? Looks a bit messier if anything

@robin-reckmann
Copy link
Contributor Author

robin-reckmann commented Nov 29, 2024

What does this get us over checkinstall? Looks a bit messier if anything

Hmm. The package build of qtwayland5 silently fails with the most recent docker versions (buildx > 0.15.1):

#21 188.1 /usr/lib/qt5/bin/qmake -install qinstall -exe ../../lib/libQt5WaylandClient.so.5.12.9 /usr/lib/aarch64-linux-gnu/libQt5WaylandClient.so.5.12.9
#21 188.1 Error copying ../../lib/libQt5WaylandClient.so.5.12.9 to /usr/lib/aarch64-linux-gnu/libQt5WaylandClient.so.5.12.9: Cannot create /usr/lib/aarch64-linux-gnu/libQt5WaylandClient.so.5.12.9 for output
#21 188.1 make[2]: [Makefile:1939: install_target] Error 3 (ignored)

These errors don't lead to a failed docker build, but just result in a empty .deb file that's installed, ultimately causing a segfault on device and no working UI.

Rather than debugging and fixing checkinstall, I would prefer to move to a more recent and tested way of building the deb files. (Checkinstall was last updated in 2017).

I cleaned up the PR a bit.

# avoid makeinfo: error parsing ./doc/t2h.pm: Undefined subroutine &Texinfo::Config::set_from_init_file called at ./doc/t2h.pm line 24.
# with --disable-htmlpages
# --disable-doc works too, disables building documentation completely
# https://gist.github.com/omegdadi/6904512c0a948225c81114b1c5acb875
# https://github.com/7Ji/archrepo/issues/10
./configure --enable-shared --disable-static --disable-htmlpages
make -j$(nproc)
echo -e "override_dh_auto_configure:\n\t./configure --enable-shared --disable-static --disable-htmlpages" >> debian/rules
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

anything else we can do here? it's really not clear what's going on here scanning this file

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

like I see it starts with echo and skip it

Copy link
Contributor Author

@robin-reckmann robin-reckmann Dec 5, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the next step dpkg-buildpackage reads from the debian/rules files and overrides the configure step. You could also commit the file directly to the repo, then we could skip this echo steps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants