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

Fix location of metadata for F-Droid #7709

Open
cketti opened this issue Mar 11, 2024 · 9 comments · Fixed by #7715 or #7748
Open

Fix location of metadata for F-Droid #7709

cketti opened this issue Mar 11, 2024 · 9 comments · Fixed by #7715 or #7748
Assignees
Labels
type: task General tasks or to-dos

Comments

@cketti
Copy link
Member

cketti commented Mar 11, 2024

See https://gitlab.com/fdroid/fdroiddata/-/issues/3210

@cketti cketti added the type: task General tasks or to-dos label Mar 11, 2024
@wmontwe
Copy link
Collaborator

wmontwe commented Mar 12, 2024

It should pick up the location relative to the subdir directory. But it could be limited to the app build.

A quick fix could be to change the ´fdroiddata´ config to create a link to the fastlane folder ln -s app-k9mail/fastlane fastlane (not tested).

There are other apps using the same approach, but I checked and they are also broken.

@wmontwe
Copy link
Collaborator

wmontwe commented Mar 12, 2024

A consequence of this not working is to have two distinct repositories for K9-Mail and Thunderbird

@cketti
Copy link
Member Author

cketti commented Mar 12, 2024

Compatible locations are listed here: https://gitlab.com/-/snippets/1895688#locations

Using /metadata/<packageName>/<locale> should work for having multiple apps in one repo.

Edit: I'm assuming packageName means application ID.

@wmontwe
Copy link
Collaborator

wmontwe commented Mar 12, 2024

https://gitlab.com/-/snippets/1895688#locations is not an official documentation and from fastlane docs, I don't see how that would work. But /metadata/<packageName>/<locale> is the data structure used for fdroiddata so maybe it also works in other repositories.

@wmontwe
Copy link
Collaborator

wmontwe commented Mar 13, 2024

Okay, it seems like /metadata/<packageName>/<locale> is supported: source. I'll go with that.

@wmontwe wmontwe self-assigned this Mar 13, 2024
@wmontwe
Copy link
Collaborator

wmontwe commented Mar 14, 2024

With the change to /metadata/<packageName>/ structure it is possible to move the whole metadata into a submodule to not polute the repository with screenshots. This is even more needed when we're going to add the thunderbird app and it's variations.

@cketti
Copy link
Member Author

cketti commented Mar 14, 2024

Are you sure /metadata/<packageName>/ in the app repository is working? The way I read the Python code it doesn't. It looks like /metadata/<packageName>/ is only there to support the data from the fdroiddata repository.

@wmontwe
Copy link
Collaborator

wmontwe commented Mar 14, 2024

I tested it and it works because of the os.walk, but I guess that this is not how it is supposed to work.
The issue for us is, that fdroid update does not use the subdir property to search for the metadata. Which prevents us from having multiple apps in the same repository. I created a second app to validate the behaviour and found other issues.

The easiest solution is to create a symbolic link to place the metadata where fdroidserver expects it. I'm about to modify the fix to allow that and also the move of the metadata to another repository.

@cketti
Copy link
Member Author

cketti commented Apr 7, 2024

Apparently our current solution doesn't work due to the way F-Droid builds its index: https://gitlab.com/fdroid/fdroiddata/-/merge_requests/14815#note_1849173016

I suggest for now we update our realease instructions to manually add a symlink to the appropriate metadata directory and commit that change when doing a release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: task General tasks or to-dos
Projects
None yet
2 participants