How to distribute a compiled addon?

Hi,
I would like to hide the source code of my addons. I have open source projects, but in this case the purpose is to produce comercial addons, or develop addons for others who don’t want to put the source code in a way that is visible by other businesses.
I see that Blender compiles the addon files once it runs them. I also know how to compile my Python source.
But how to make an addon that can be installed by others who download it, without providing the source code?
Can a .pyc addon be installed? How? Or run the .pyc from a .py file? How?
Thank you very much.

1 Like

Which license are you planning to use for your code?

Copyright. Just the right to use the plugin in commercial or personal projects is what is going to be sold.

Do you know how to hide or compile the code and still be able to install? Or are all Blender plugins code visible always?

Thank you.

Blender is GPL, therefore all Blender plugins must have a GPL compatible license. (Practically it means they also need to be GPL, but IANAL)

We have had a discussion on a similar subject recently. You might find it useful.

1 Like

Yes I just read Blender’s official docs, and it seems the API is also GPL. It leaves no doubts. It means the code has to be put on GPL too. So no sense in doing addons for sale.
We will still try maybe. If the community is interested in buying to help develop more, we will do more.
It is not comfortable at all, as it leaves work unprotected, and little profit in making commercial work. I think they should have used special permissions so we don’t have to release addons as GPL. I hope they consider this in the future, as it would boost what is done for Blender, which is a great platform.
I think I will focus on developing other kind of contents for Blender that don’t require to license as GPL as the addons do.
Thank you very much for the answers. Hope the Blender community appreciates when someone does content for them an are willing to pay for encouraging it, and not distributing things everywhere for free. If we get enough in return, we will do lots of addons. I suppose this requires faith in the good faith and support of the whole community, which I think will happen.

By the nature of how Blender is distributed, this is a issue yes.
What you could do is sell support for the addon, like Redhat does for instance.

Also, a lot of Blender users got used to low pricing of addons, training and models, so things might not go well in that department from the get go.

I also think this will restrict certain parties to develop for Blender as a whole.
That said, the guys from Redshift3D are building a addon for their renderer. The addon code might be GPL, the renderer is not.
Maybe you have to look in that direction, to keep some areas out of the GPL?

1 Like

I will just see how things go, and adapt to what happens.
I think anyway that the community looks supportive.
We will also give full customer support as we always did, and I’m sure people will appreciate it.

Cool!

Can you show something you guys did already, to show what’s coming? :wink:

1 Like

We did not do anything for Blender yet. But we did for ZBrush on Artsation:

1 Like

Nice stuff!
Looking forward what you can bring to Blender :slight_smile:

1 Like

Thank you so much Rob! :slight_smile:

AFAIK you can have a compiled, closed-source executable and have an open-source python add-on as the glue communicating with it. I think VRay did this using ports so it is pretty fast.

2 Likes

Yes but that is because the addon in that case runs a external renderer. But if I want to do something using the Blender API inside Blender, it would be GPL anyway, and need to be open source.

True, it might depend on your use case, I am not a programmer. I though you have some kind of proprietary kernel, UV Packmaster also does this for example. Is it necessary to do everything in the Blender API?
Anyway, I wish you success, always good to see some commercial development interest.

1 Like

Hi.
You ask in the following forum where blender developers live:

1 Like

Keep in mind that most of the time what you want is not possible. There are many other software options where you can, so you should choose those other software if they better meet your need.
As a side note, there are a lot of people selling GPL addons for blender, some of them are even published on github. And if the addon is good enough and they provide good support, the developers are making decent income.
If you close the code you are also not free of falling into piracy and the addon being distributed on warez sites.

1 Like

Thank you.

Yes I know, I noticed that too. I think the community is supportive so we will try.
I myself have some open source projects, and have seen through the years that people are willing to support.

Amd Radeon ProRender Blender addon is Apache 2 license, so is Cycles.

1 Like

Yes that is because of the same: they are renderers, and the only thing that does the addon is to load data on them.