-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
Yocto, devtool modify #13554
Comments
The same cockpit problem occurs in meta-intel-aero: https://layers.openembedded.org/layerindex/recipe/89197/ recipe: lines 76 - 78: |
The TAR.XZ file of version 211 is taken as source. The following files are installed to the wrong path: /usr/share/cockpit/sources/cockpit/dist/apps/default.png All other files are installed correctly. I can't see the connection of the wrong files. Thank you for every hint. |
I'm afraid I can't follow. I don't know about yocto, but the given recipe file does not have any configure arguments or otherwise that look weird/wrong at first sight. The bit that I can't see is where it actually calls I. e. can you give some more information about how the build process looks like, if the installed tree in |
Yocto takes some getting used to :-)
Extract from the environment:
Extract from "log.do_configure":
I was able to narrow down the misconduct to "make install". At this step the wrong paths occur with the files listed above (previous message). |
Hi, @hoinmic is your recipe building properly WITHOUT using devtool modify? Just try:
|
Hi
@jsolla Could I take a look at your cockpit recipe? Is cockpit starting correctly and all plugins are available? |
@hoinmic About the recipe, I tried to contact you by email... no luck. Anyway, what cockpit packages are you installing? |
Thank you. I have just received the e-mail and replied :-)
|
@martinpitt Do I need to assign the merge request/ qull request to someone or does this happen periodically without my action? |
@hoinmic : No need to assign anything, we'll get to it. Sorry, this is rather obscure, and needs some diving into our build system, as well as preparing some intelligent questions why this does not work with Yocto in the first place. I didn't find the time to do that yet. |
@martinpitt Sorry, no rush. I'm more familiar with Gitlab (merge requests) and GitHub is not so familiar :-) |
The PR (#13781) too ad-hoc, I'm afraid -- if possible, I'd rather fix this more generically. It means that files installed by webpack.config.js land in the wrong place, and (1) we don't want to duplicate all these in Makefile, and (2) we will break this again in the future as long as we don't run into this problem in our CI and local processes. For example, webpack.config.js also ships docker/images/drive-harddisk-symbolic.svg, and that doesn't appear in your list. Now, maybe you just don't build docker, but it's still completely non-obvious why pkg/shell/index.html needs special treatment, but every other page's index.html doesn't. What do you mean with "where the Makefile steps are independent"? This comment sounds like yocto would do essentially the same configure/make/make install steps as we do everywhere else. In short, I'm looking for a series of configure/make invocations that reproduces the bug. Hopefully yocto has some kind of verbose mode where it shows the exact commands that it runs? Also, perhaps commit fc7734e fixed this as a by-product? |
In other words, is that still a problem with version 215? |
To make the bug visible (with the focus on the "Makefile.am" with the lines):
Note the path of file hammer.gif in the verbose outputs Verbose output with the fix: Verbose output without the fix: I am very sure that the paths in your environment will not be uniform either. But probably --strip-components=1 often covers up the problem. A generic solution would be great. But currently the COPY rule is designed only for one source and one target. |
Currently I am building version 214, I will try to change to version 215. |
The mentioned Docker File drive-harddisk-symbolic.svg is different. See the ending in docker_INSTALL (.gz).
vs
|
@martinpitt I have tested version 215 and 216. The problem is still the same. |
Closed with #13781 |
Closing the PR was ok, but this issue should still be kept open. |
It might be worthwhile merging this recipe into the primary package repository for yocto/openembedded [1] they already have webmin. I feel devices running systemd would benefit having cockpit as an option over webmin. [1] https://github.com/openembedded/meta-openembedded/tree/master/meta-webserver |
@PMaynard I completely agree with you. I just need a little tweaking of the recipe, then I'll try to give it upstream. |
@PMaynard Started openembedded pull request for cockpit 218 recipe :-) openembedded/meta-openembedded#218 |
Great, I will try it out asap. |
@martinpitt Cockpit recipe is now available on the master branch of openembedded |
Amazing! RDEPENDS_${PN}-storaged = "udisks2" Any reason for this? |
@jsolla Thank you :-) Side note: udisks2 has a dependence on Polkit |
@hoinmic I submited a PR to the openembedded repo, is now merged :) |
Is there still anything left to do here? Current cockpit got a lot of build system fixes/cleanups, the docker page is gone entirely, etc. The above few comments sound like it's working now? I am closing this issue as I don't see anything actionable from our side. Please shout if there is still something missing. Thanks! |
Cockpit version: 211
OS: Yocto 3.0
Page: shell, .... (WEBPACK_PACKAGES)
When I compile Cockpit with yocto (devtool modify) the plugins are installed in the wrong place.
Plugins like shell, ... are placed in the wrong folder (/usr/share/cockpit/sources/cockpit/dist). On the webserver only the login is displayed.
When I move the files in the recipe everything works:
cp -al ${D}${pkgdatadir}/sources/cockpit/dist/* ${D}/${pkgdatadir}
rm -rf ${D}${pkgdatadir}/sources/cockpit/dist
I could not find the cause in the Make File. Any ideas?
The text was updated successfully, but these errors were encountered: