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

"Potential License Violation" #1032

Closed
R3Skako opened this issue Jun 18, 2024 · 20 comments · Fixed by #1035
Closed

"Potential License Violation" #1032

R3Skako opened this issue Jun 18, 2024 · 20 comments · Fixed by #1035

Comments

@R3Skako
Copy link

R3Skako commented Jun 18, 2024

I did not modify anything in the code...
Yet i get

Potential License Violation

This instance is a public-facing instance that has been modified without the changes published. You may be in violation of the [GNU Affero General Public License v3.0](https://github.com/LBPUnion/project-lighthouse/blob/main/LICENSE).

If you believe this is an error, please create an issue with the output of git status ran from the root of the server source code in the description on our [issue tracker](https://github.com/LBPUnion/project-lighthouse/issues).

If not, please publish the source code somewhere accessible to your users.

Here is the git status

On branch main
Your branch is up to date with 'origin/main'.

Untracked files:
  (use "git add <file>..." to include in what will be committed)
        data/

nothing added to commit but untracked files present (use "git add" to track)

Considering that if i would ever like to edit the website, where should i publish the changes?

@R3Skako
Copy link
Author

R3Skako commented Jun 18, 2024

However, if that helps, i installed PHPMyAdmin alongside lighthouse so that may be the cause but i don't really know...

@m88youngling
Copy link
Contributor

Ah yes, you have found one of the most notorious 'features' of Project Lighthouse: uncompromising compliance!

Here's a relevant line from the Project Lighthouse 2 goals post:

Customization: at the moment, Project Lighthouse is monolithic and ruthless when it comes to customization. Trying to change something as simple as an icon on the webpage might force an angry popup to appear. That’s unacceptable.

I don't really know for sure how to help with this issue, but I can reflect a bit about why Project Lighthouse is like this. At first glance it seems like it's to maintain license compliance. However, I can say that one of the primary reasons that we were motivated to support that 'feature' was because Lighthouse was early in development in 2021 and 2022 and it was being used in a public environment for the Catbox instance. We strongly advised against this because we weren't sure of the security threats that a public instance could cause back then at that stage of Lighthouse's development. So, the team felt that making it difficult to modify the software without throwing up annoying errors was good for the purposes of warning users that they might be getting themselves into a bit of a pickle by not using the trusted, unmodified version of the software.

So, tl;dr it was a combination of fear and pettiness. In all fairness, no one knew what custom servers were capable of back then. However, that fear does more harm than good these days. This feature is now just annoying and makes your life harder, especially since you didn't even intend to trip it! I have a feeling it is quite sensitive, so I would retrace your steps to see if there's anything you might have touched that might have set it off.

@R3Skako
Copy link
Author

R3Skako commented Jun 18, 2024

i do believe i modified the docker compose a bit to include phpmyadmin

@m88youngling
Copy link
Contributor

LOL yeah it's so dumb that it's doing that to you...what you could do instead is create a fork of Project Lighthouse and publish the entire source code there. There are probably best practices to do this (you know, that involve not exposing your lighthouse.yml configurations and phpmyadmin credentials) so definitely do some research or more asking around about that. But if you had the source code out there, it would prevent the message from appearing. Plus, you might help someone else in case they need to run Lighthouse with phpmyadmin.

@R3Skako
Copy link
Author

R3Skako commented Jun 18, 2024

how can i publish the sc (source code) without leaking any private information? yk the mysql details etc

@m88youngling
Copy link
Contributor

that is a great question....

turns to audience

.....do you know how to fork project lighthouse?

(I don't know how to use git 💀 (yet))

@R3Skako
Copy link
Author

R3Skako commented Jun 18, 2024

the point is, i know how to fork etc etc... just the problem is... with that method ill probably leak everything lmfao

@jackcaver
Copy link
Contributor

You don't have to make forks or push commits to GitHub, you can just make a commit and the thing will disappear from what i remember

@R3Skako
Copy link
Author

R3Skako commented Jun 18, 2024

where should i make a commit? to a private repo maybe?

@jackcaver
Copy link
Contributor

You can make it locally, no need to make it somewhere outside of your device

@R3Skako
Copy link
Author

R3Skako commented Jun 18, 2024

could you maybe tell me how to do it? i only know how to push to github tbh

@jackcaver
Copy link
Contributor

Type git add . and then git commit and that should be everything you need to do

@Slendy
Copy link
Contributor

Slendy commented Jun 18, 2024

This should probably be in the root .gitignore of our repository, but to make Git not recognize your stored data folder locally you need to modify the .git/info/exclude folder to include data. You can either do this by editing the text file manually or by running this in the root of the repository:

echo "data" >> .git/info/exclude

After that, running git status should no longer show the data directory as modified and your Lighthouse instance shouldn't have the license violation error.

@R3Skako
Copy link
Author

R3Skako commented Jun 20, 2024

dosen't work :/

@Slendy
Copy link
Contributor

Slendy commented Jun 20, 2024

Does git status still show the data folder? If not then you may just need to rebuild the docker image with docker compose up -d —build

@jvyden
Copy link
Contributor

jvyden commented Jun 22, 2024

Figured I'd chime in on this because I wrote that aspect originally.

However, I can say that one of the primary reasons that we were motivated to support that 'feature' was because Lighthouse was early in development in 2021 and 2022 and it was being used in a public environment for the Catbox instance

This was done because of Fridinator (we were all unsure of his behavior), but yes. I believe he had some modifications to the website that weren't anywhere on GitHub, which does infact violate the AGPLv3 license, in that your source code must be available to all users (including users interacting via network use, e.g. a website). So I added that as a "hey, we're serious about this," because I firmly believe that custom servers should be fully copyleft.

I wanted to make this verifiable for users too, which is why version pages exist in both Refresh and Lighthouse (though Refresh does not include Git information)

Customization: at the moment, Project Lighthouse is monolithic and ruthless when it comes to customization. Trying to change something as simple as an icon on the webpage might force an angry popup to appear. That’s unacceptable.

I don't see why you need a total rewrite to remove 19 lines of HTML... A lot of the problems mentioned on that page are mentality/culture issues but those don't really apply to Lighthouse as a codebase, because the codebase can always be changed.

However, that fear does more harm than good these days. This feature is now just annoying and makes your life harder, especially since you didn't even intend to trip it!

If the anti-feature has outlived its purpose, then why not remove it? I'm just trying to understand the hesitation 😅

@m88youngling
Copy link
Contributor

Fridinator totally slipped my mind. Yes, you're right

@sudokoko
Copy link
Member

sudokoko commented Jun 22, 2024

If the anti-feature has outlived its purpose, then why not remove it? I'm just trying to understand the hesitation 😅

Exactly right.

Going to end this debacle. Expect a PR momentarily

--

Edit: #1035 exists. Going to merge that forcibly once review comments are handled as it seems we are all in agreement in removing the banner.

@R3Skako
Copy link
Author

R3Skako commented Jun 22, 2024

ig ill just wait until this message will get removed ¯_(ツ)_/¯

@TorutheRedFox
Copy link
Contributor

ig ill just wait until this message will get removed ¯_(ツ)_/¯

unescaped backslash detected 👀

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 a pull request may close this issue.

7 participants