Skip to content
View in the app

A better way to browse. Learn more.

Armbian Community Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Clarification on GPL 2.0 License Applicability

Featured Replies

As someone not familiar with all the ins and outs of GPL specifically, how does GPL in the armbian/build project play with userpatches? Is it expected that a commercial hardware device using Armbian would need to open-source the customize-image.sh script?

 

Thanks!

Edited by Clark McCauley

This seems like an excellent question for a lawyer.

 

That said, the Armbian Build system is GPL v2, which Wikipedia has an excellent Article on, and has the following to say:

 

Quote

Use of licensed software

 

Software under the GPL may be used for any purposes, including commercial ones, and even as a tool for creating proprietary software, such as when using GPL-licensed compilers.[52] Users or companies who distribute GPL-licensed works (e.g., software), may charge a fee for copies or provide them free of charge. This distinguishes the GPL from two other kinds of license: shareware software licenses that allow copying for personal use but prohibit commercial distribution, and proprietary licenses where copying is prohibited by copyright law. The FSF asserts that freedom-respecting free software should not restrict commercial use and distribution (including redistribution):[51][53]

 

In purely private (or internal) use—with no sales and no distribution—the software code may be modified and parts reused without requiring the source code to be released. For sales or distribution, the entire source code needs to be made available to end users, including any code changes and additions—in that case, copyleft is applied to ensure that end users retain the freedoms defined above.

 

That said, even if you're not distributing modifications of the build system, the final image still has GPL components.

  • Author

Thank you for the resources, and you're right, I should probably be asking a lawyer.

 

That said, the thing that's been throwing me off is that the GPL FAQ specifically states that

Quote

...the copyright on the editors and tools does not cover the code you write. Using them does not place any restrictions, legally, on the license you use for your code.

and uses GCC as an example. Using GCC to build a binary does not make the binary subject to GPL. It seems like there's a similarity here to armbian/build which is a tool that produces an artifact and the code within customize-image.sh is my own code.

 

This question really came up for me when I was modifying a DTS file to disable a peripheral on my device and was investigating whether that change would need to be open sourced. I found that the parent DTS file that I was patching was licensed under GPL 2.0 OR MIT, so if I'm reading everything correctly, it seems like neither the customize-image.sh script nor my DTS patches need to published and licensed under GPL 2.0.

 

But I'm posing here in case I've egregiously misunderstood something. If there's nuance and subtlety here, where my assumptions above might be correct, or might not be depending on other factors, then I may need to get an attorney involved.

Quote

it seems like neither the customize-image.sh script nor my DTS patches need to published and licensed under GPL 2.0.

 

GPL requires source code be offered for any software distributed. Changes to the build system probably aren't covered, but a modified DTB probably is. The final image also has the Linux kernel and other GPL components, so that definitely is.

 

Bottom line is that GPL is supposed to be permissive. DTS is easily gotten from DTB. And you're probably good as long as you're not being a jerk about it.

 

If that bothers you, you could also make a overlay (dtbo) and just patch the DTB on boot. You'd avoid the custom image and also make it more clear that your DTB is tweaked.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.