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

Remove junrar from F-Droid build #699

Closed
linsui opened this issue Mar 11, 2022 · 13 comments
Closed

Remove junrar from F-Droid build #699

linsui opened this issue Mar 11, 2022 · 13 comments
Assignees
Labels
bug Something isn't working
Milestone

Comments

@linsui
Copy link

linsui commented Mar 11, 2022

Could you please remove junrar from F-Droid build? It's licensed under UnRAR, which is not an open source license. https://fedoraproject.org/wiki/Licensing:Unrar Not sure how file roller do that. Thanks!

@zhanghai
Copy link
Owner

zhanghai commented Mar 11, 2022

I agree unrar doesn't have a good license despite being open-sourced, but I also want to be pratical here - there are users who do prefer the functionality, and the usage of unrar in this app is definitely not a direct inclusion of unrar source code, but indirect and as an unmodifiable dependency, which is a bit inherently vague in terms of copyright similar to classpath & linking.

So if there is an F-Droid ban on junrar, similar to the one on cloudrail because it turned proprietary that prevented Amaze from being updated, I'll surely go ahead and remove junrar from F-Droid build - otherwise I'd prefer keeping the situation as-is.

@linsui
Copy link
Author

linsui commented Mar 12, 2022

Yes, I'm also a user of that function. :( It's better if there is an alternative. But I guess it's pretty difficult to find an FOSS rar lib. File roller uses unarchiver for rar files. But it has some problems with some rar files and I'm not sure if there is a java wrapper.

Since F-Droid is featured as an FOSS app store, we'll ban junrar. I'm going to add junrar into the scanner list. Before we finally ban junrar we will wait until most affected apps updated, i.e. when a new version of MaterialFiles without junrar in the F-Droid build ready. Thanks!

@zhanghai zhanghai self-assigned this Mar 12, 2022
@zhanghai zhanghai added the bug Something isn't working label Mar 12, 2022
@zhanghai zhanghai added this to the v1.5.0 milestone Mar 12, 2022
@zhanghai
Copy link
Owner

Got it - I'll exclude junrar from F-Droid build in the next version.

I did some research and it seems file-roller is using libarchive, which has a clean room implementation of unrar. I don't think anyone will write a Java port or wrapper for it in the near future though.

@linsui
Copy link
Author

linsui commented Mar 12, 2022

Thanks!

@zhanghai
Copy link
Owner

Tested locally that the app builds fine after the existing magic in F-Droid build metadata removes junrar.

@linsui
Copy link
Author

linsui commented Mar 15, 2022

Thanks!

@linsui
Copy link
Author

linsui commented Mar 15, 2022

JFI, Seeneva use libarchive for CBR. But it's wrapped in seeneva-lib with libarchive-rs.

@zhanghai
Copy link
Owner

Hi @linsui , I'm planning to do a patch release to resolve a relatively frequent app crash in the upcoming days, so I'm wonder if the junrar ban has been implemented on F-Droid? If not, I would like to temporarily revert this change to avoid breaking functionality with patch releases if possible. However if it has been enforced, I'll also be fine.

@linsui
Copy link
Author

linsui commented Mar 19, 2022

https://gitlab.com/fdroid/fdroidserver/-/merge_requests/1091 My MR has been merged so junrar is already banned in F-Droid.

@zhanghai
Copy link
Owner

I see, thanks for the info!

@linsui
Copy link
Author

linsui commented Mar 30, 2022

On what legal basis do you say that you should not block applications using the Unrar code?

Do you want to say "On what legal basis do you say that you should not block applications using the Unrar code?"

I'm not a lawyer. F-Droid only regards licenses approved by FSF/OSI/Debian as open source licenses.

@zhanghai
Copy link
Owner

Hi @linsui, I'm considering sevenzipjbinding in #141, however I found your comments at junrar saying it's frowned upon as well due to unrar code usage. If this app ever switch to sevenzipjbinding for archive support, will that mean I'll need to remove support for all archives on F-Droid build?

@linsui
Copy link
Author

linsui commented Mar 30, 2022

The 7-zip can be compiled without the unrar part (DISABLE_RAR_COMPRESS=true). I don't know about the binding. If the unrar part can't be disabled, we need to disable the whole 7zip.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants