Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I don't understand. Are you afraid of being able to see the source code of the program you are going to use? You are not forced to look at it, if you don't want to.


I've worked on a number of embedded systems for clients that prefer not to allow for user modification of libraries or system code. You know, that TiVo-ization stuff. Many of them are more than happy to comply with GPL2, but have banned GPL3 code from their companies altogether.

My current bane is BlueZ, which used to allow for a compile-time removal of readline but no more.


That's fair enough, though OP was referring to command-line tools, not libraries.

He was basically saying that seeing readline pulled as one of the dependencies gives him confidence that the tool won't suck. He said nothing about building tools with readline support (implicit or otherwise).


Do they actually use features like ARM trustzone and encrypt the firmware? I'm trying to get my router to do things it should be able to do and it seems like they mostly concentrated on making getting serial accesss more annoying but the rest is just an ancient BSP linux distro with minor changes using none of the actual security features of the SoC.


Ah, sure. Yeah, I could see how GPLv3 code would be inconvenient for a company that wants to ship it without complying with the license. The companies I've worked had a different profit model so it never affected me. In my case, seeing readline just means that the development tool I'm using will be more pleasant to work with.


good. also very nice to hear you did write a replacement for blueZ and released it as some copy left license.

... you did write and release a replacement in the license you like, right? right?


It's not BlueZ's license that is the problem, it's readline's license which BlueZ unconditionally pulls in. I wonder if they considered just stubbing out the functions, or if any of the more liberally licensed libraries (editline, tecla) have compatibility headers?


This is about using readline as a dependency in your own software. Because readline is GPL3, your software must also be GPL3.


It's super easy not to download it and import it into your own code.


No, you can bring GPLv3 code into software with other licenes such as the MIT license.


Depends heavily on how you define "bring into", AFAICS.


Yeah, you don't.

GPLv3 means that you can't use it with the code you write for your job. And there are cases where readline can sneak into the codebase through unintended routes.


GPLv3 means you can't use it with code that you distribute outside your organization without complying with its license. It's not an issue for internal tooling.

I know you get the distinction, but I hear too often that "we can't use GPLv3 software at work" from people who aren't clear on it.


> GPLv3 means you can't use it with code that you distribute outside your organization without complying with its license. It's not an issue for internal tooling.

It is. E.g. if you have a contractor working with your company, then giving software can be considered "distribution". And the contractor can gain the right to re-distribute your internal software.

It's OK to use GPL for software that runs in separate processes (e.g. GDB), but readline is really sneaky because it's a library.


Real talk: if a company's contractor agreements don't strictly circumscribe how a contractor can only use the company's resources on a limited basis to perform their work on the company's behalf, the GPLv3 is far, far down their list of concerns. Do they also get to keep the rest of the company's code? Their emails? Marketing materials? Laptop? The OS on that laptop?

I've never been tempted to think I had any right whatsoever to my employers' internal materials. That would be a highly unusual, maybe unprecedentedly so, situation.


Except that GPLv3 overrides the contracts. If you violate it, you lose the right to use the GPLv3 software.

Technically, a litigious-happy contractor can use that to cause a lot of damage to the company. So that's why many companies (e.g. Apple) just ban as much GPLv3 software as they can.


you're right; i had a vague memory that they had perhaps included language in the license to clarify questions like this, but apparently not. this is all it says

> To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying.

in their faq about gplv2, the fsf explicitly takes the side of your hypothetical 'litigious-happy contractor' https://www.gnu.org/licenses/gpl-faq.en.html#InternalDistrib...

> Is making and using multiple copies within one organization or company “distribution”? (#InternalDistribution)

> No, in that case the organization is just making the copies for itself. As a consequence, a company or other organization can develop a modified version and install that version through its own facilities, without giving the staff permission to release that modified version to outsiders.

> However, when the organization transfers copies to other organizations or individuals, that is distribution. In particular, providing copies to contractors for use off-site is distribution.

note that this is talking about gplv2 ('distribution'), so presumably contractors can already sue apple for this if apple uses gplv2 code in internal tools; they might not win, but the fsf thinks they should


What the license allows and what the company rules say are often not the same


Sounds like a company problem then; not a license problem.


Meanwhile my (very small) company delivers as GPL v3 by default. So I can use all the cool libraries!


> It's a relief seeing readline pulled in as a dependency for some command line tool

(emphasis mine)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: