Questions about safe_core and safe_launcher

Couple of simple questions.

  1. The API in safe_core for messaging appears to block on read. This means that I have to eat up a thread to listen to a message, correct? Are there plans to support a non-blocking optional get?
  2. Will there ever be something like a “classpath” or “linking” exception to safe_core’s GPL? Or if I use it I too will be infected by the GPL? I saw LICENSING: Are you dead set on GPL3? but I don’t really want this to devolve discussion on license choice, I just need to know before I start coding against one of the libs.
  3. Same question for safe_launcher. More specifically, is basically everyone expected to use the launcher-as-an-HTTP-service if they don’t want their apps as GPL (assuming y’all don’t AGPL that)? Or maybe an alternative safe client will emerge, so hopefully the details of the protocol are documented so someone can make a clean room version without accidentally reading the GPL source.



Bump. Sorry to push this back to the top of the list, but I was afraid asking on a weekend was getting it buried. Is there another outlet for communication that is preferred over the forum? This is only my second top-level forum post (made another over a year ago) and neither were responded to. Hope I’m not shadow banned somehow!

1 Like

Your posts appear, they are not blocked.

The questions are important and I can see the issues.

But the development is full on to get a MVP very soon and they are the best to answer this. I would expect though that an answer today may not be true when the APIs are updated again.

Maybe @Ross who posts the dev updates can get some answers for you.


I think the safe_core API is still being wrapped up. Until then things are subject to change. Non-blocking get would indeed make things more efficient. This team strives for efficiency so it’ll likely happen.

Sorry, only the team can address this.

There have been several discussion on the matter. It has been stated that you can customize things as you wish. Rebranding and monetizing are the only issues I’m aware of. I’m not sure how the license affects individual apps. Something to look into.

Sorry, I missed this one - I shall try and grab the right people for these questions


If you are intending to use the messaging service from application, then it would depend on how the launcher is exposing the mechanism to listen.

But if you are specific about the internal module itself, then, probably it might be tweaked in the future based on the launcher’s requirement


Apologies for not seeing this thread, answers below. [quote=“cretz, post:1, topic:7032”]
Will there ever be something like a “classpath” or “linking” exception to safe_core’s GPL? Or if I use it I too will be infected by the GPL?
Our licensing strategy has been discussed a lot internally and I imagine will continue to be so, nothing is set in stone. However. as things stand right now all our libs are dual license, those tying in directly with the libs would need to be GPL V3 or opt for a commercial license. Alternatively, a developer may opt to use the launcher, which brings me to your second question (below).

At present we don’t have any immediate plans for an alternative launcher, very focussed on getting software into the community and plenty to keep us busy at the moment. We have chosen a http gateway to be generic and a wide range of app devs will be familiar with this approach. This also helps with our immediate focus of scaling it to various platforms. It’s something we can certainly look into if desirable down the line once we cover the basic requirements.

Thanks everyone for the responses. I am one of those planning to write an app shortly. I am wanting to avoid GPL’ing all of my code so I may have to use the local web server (or IPC server if its use is clear). I also look forward to the non-blocking get. Once I have a github repo up w/ my code, I’ll share it.