NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
18.17k stars 14.19k forks source link

Bug on floorp browser (workspaces and keyboard shortcuts) #312383

Closed Alyuu closed 6 months ago

Alyuu commented 6 months ago

Describe the bug

I'm trying to set up workspaces and keyboard shortcuts in the floorp browser but the options don't appear in the settings menu, I opened an issue in the floorp repo but they told me it's because there's a "private component" that it's not activated.

Steps To Reproduce

Steps to reproduce the behavior:

  1. Install Floorp via home manager
  2. Open floorp
  3. Go to the settings
  4. There's no workspaces nor keyboard shortcuts tabs

Expected behavior

I should be able to enable and use workspaces and also configure custom keyboard shortcuts

Screenshots

image image image

Additional context

I'm using NixOS with a flake referencing the unstable branch of nixpkgs and installing floorp via home manager in "home.packages"

Notify maintainers

@christoph-heiss

Metadata

Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.

[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
output here

Add a :+1: reaction to issues you find important.

jopejoe1 commented 6 months ago

Related: #311924

Alyuu commented 6 months ago

thx, that's useful

christoph-heiss commented 6 months ago

Related: #311924

Yep, we only ship the free components of Floorp, so NOTABUG. The linked PR above explains everything a bit more in depth. You can also see #299183 and https://github.com/Floorp-Projects/Floorp-core/issues/62 for a bit more information on the initial discussion.

I'll close it with above reason, but feel free to re-open if you think there is anything else to discuss.

TheChilledBuffalo commented 5 months ago

@christoph-heiss Floorp is now open-source again. The Floorp-private-components repository is now public. (Has been for the past two months). The repo is not "open-source" as defined by GNU, and has a custom license (details below). However, the code is publicly visible and anyone is free to fork the repo and use or modify the code for personal use cases. The only restriction, as far as I understand, is the use of their code for profitability purposes. Which means Floorp is not proprietary software anymore. Please consider building Floorp fully for NixOS.

From their README:

Floorp Shared Source License (Based on the Microsoft Shared Source CLI, C#, and JScript License)

https://github.com/Floorp-Projects/Floorp-private-components?tab=License-1-ov-file

christoph-heiss commented 5 months ago

Floorp is now open-source again. The Floorp-private-components repository is now public.

Never said anything opposite. Actually, I was the one that raised the issue there.

Which means Floorp is not proprietary software anymore. Floorp Shared Source License (Based on the Microsoft Shared Source CLI, C#, and JScript License)

Open source != Proprietary. Something can be open-source (or more often in such cases, open-core), but still be unfree software.

But they seem to have changed their license, that is right.

As for the Microsoft Shared Source license - there are several variants of them, some which have been apparently classified as free by OSI. But they do specify which one, so we cannot be sure. And trusting that company with goodwill w.r.t open-source is a whole other matter furthermore.

From their current (23-05-2024) README:

Use of Private Components Irrespective of License (Applicable Only for Commercial Use)

You are allowed to use private components without being bound by the license terms, provided these private components are not distributed to others.

The application of this repository's license depends on whether or not you redistribute the software in any form.

If you do not redistribute the software, the license does not apply, granting you the freedom to use the software or source code as desired. Conversely, any redistribution of the software, regardless of its form, must comply with the specified license terms.

As an exception, groups, organizations, and individuals authorized by Floorp or Ablaze have permission to use the source code in this repository beyond the constraints of the license, as permitted.

The Mozilla Foundation and Mozilla Corporation are also permitted to use the source code from this repository under the MPL 2.0 License.

While this cannot be really classified as commercial use - this does not bring me particular confidence that we really are allowed to redistribute these components. As long as we do not have written permission from them (such as the last paragraph w.r.t Mozilla), I'm not willing to risk anything. And after all, IANAL - so I'm not really in position to provide 100% clearance on that matter too.

I have already had to deal enough with all these licensing shenigangs and pretty fed up at this point, if I'm honest. Because, who knows really, that they don't change the license again in a month or so.

In the end, my comment from above and esp. #311924 still stands. I'm - personally - still not willing to support/maintain (potentially) unfree software in any capacity.

But if you do, we can work something out I guess - I'm also available on Matrix.

ghost commented 5 months ago

The repo is not "open-source" as defined by GNU

A little push back on this. GNU doesn't recognize the term "open-source" to describe what they consider free software. Floorp is unfree software when it is compiled with floorp-private-components because one is prohibited from redistributing the software unless they follow the additional license restrictions of Floorp and their company (Unless your name is Mozilla)

The apparent main developer behind Floorp (Surapuyousei) has tried to mislead its users into thinking that Floorp is free software when it is actually not and has used their non-native English and machine translation as an excuse for miscommunication [1].

From the project's homepage: https://floorp.app/en/

The source code for Floorp is mostly public, allowing anyone to view it and contribute to Floorp. Not only is the browser itself open to the public, but the build environment is also open source.

This could easily fool unsuspecting users into believing the project is FOSS. Placing a limit on commercial use is an attack on a basic software freedom of being able to redistribute software without restrictions. Open source does not include the power to set arbitrary privileges to certain groups but not others.

Floorp is not "potentially unfree", it is unfree software when compiled with these components. The maintainers and team behind Floorp want to capitalize on the open source branding but also want undue control of how their software is distributed. It's amusing considering they only exist because of Mozilla's commitment to software freedom.

TheChilledBuffalo commented 5 months ago

@christoph-heiss Sorry for bothering you yet again, but I just wanted to inform you that Floorp is now FOSS again. The private components repository has been archived and all the code has been moved back to the Floorp-core repository and re-licensed under MPL 2.0

Can we expect a Floorp build with all the features in the next release, that is, 11.15.0?

christoph-heiss commented 5 months ago

The private components repository has been archived and all the code has been moved back to the Floorp-core repository and re-licensed under MPL 2.0

Can we expect a Floorp build with all the features in the next release, that is, 11.15.0?

From a look over the changes - yes. There doesn't seem to be any (hidden) restrictions w.r.t the licensing somewhere, so it looks fine.

All that code should then be automatically built with the next release.

And just to quote myself from about a month ago:

I have already had to deal enough with all these licensing shenigangs and pretty fed up at this point, if I'm honest. Because, who knows really, that they don't change the license again in a month or so.

Didn't I know, did I. At least it's for the better this time ..