6 ms·
Yes, it's not open-source by that definition. It was fully open-source until v3: https://github.com/alin23/Lunar/tree/lunar3 https://github.com/alin23/Lunar/tr
by alin23 5y ago
Yes, it's not open-source by that definition.
It was fully open-source until v3: https://github.com/alin23/Lunar/tree/lunar3 https://github.com/alin23/Lunar/tree/lunar3
I've kept that around, it's still compilable, but probably not that useful.
When making Lunar paid in v4, I didn't want to remove the possibility of sharing knowledge, so I kept the non-paid parts open-source.
This allowed other apps like MonitorControl [1] and DisplayBuddy [2] to port some Lunar features (like DDC on M1) to their own code. So I'd say it's still useful enough.
[1] https://github.com/MonitorControl/MonitorControl https://github.com/MonitorControl/MonitorControl
[2] https://displaybuddy.app https://displaybuddy.app
- datapolitical 5y agoYour software looks amazing, unfortunately I use a Windows computer at work. What’s the best equivalent?
- alin23 5y agoThanks! Monitorian is the closest thing on Windows.
- prashnts 5y ago> This allowed other apps like MonitorControl [1] and DisplayBuddy [2] to port some Lunar features (like DDC on M1) to their own code. So I'd say it's still useful enough. When I was trying to do some iOS dev, I basically noticed that having open source or even open core projects accessible for free helped a lot. It ranged from some hard-to-google things, like "how should I structure this part of the code", to fulfilling the utter lack of good documentation. So, thank you for releasing this! I'm not sure if it still holds, but Blink app (for ssh, €21) could be built yourself, but I still paid for it because it seemed easiest. So there is some possibility to keep source open while offering a paid app. Not everyone is going to bother to build it.
- orlp 5y agoJust to clarify, I am okay with paid software existing. It is even better if you share (parts of) the source code to the community in a permissive license. But unless your incentives are aligned with community, I would be crystal-clear and not advertise it as open-source. Your incentives aren't aligned with the community. Should a free, open-source alternative to Lunar exist with all its features, your sales would go down. It is in your best interest to: 1. Create the best possible product that works the fastest, smoothest, without bugs, etc. 2. Create a minimal viable free product maximizing the amount of new trial users for Lunar. 3. Maximize the difference between the free and premium product to convert the most users from #2. Open source contributors shares incentive #1 with you. They don't share incentive #2, but there's no conflict here. But incentive #3 directly clashes with those of an open source contributor if only the free product is open source. I want to assume good intentions here, because the malicious interpretation would be that one wants to take advantage of the open source community by getting free work done on incentive #1 while rejecting anything that would cross incentive #3. So what is your goal? You obviously want to make money - we all do. What else? Is your goal to give to the open-source community for similar applications that wouldn't directly compete with you? It's noble, but risky, as you can't enforce that. If your goal is to conduct a 'business transaction' with the open-source community: "access to my source code in exchange for potential contributions under conditions w.r.t. incentive #3", that's fine too. But that is not open-source. If you simply publish the source code explicitly stating that parts of the source code of Lunar is available under a permissive license, that you only merge contributions that fix bugs or add pre-approved features, but otherwise people are free to do with it what they want, I don't have a problem with it. But calling it open-source is misleading in my opinion.
- alin23 5y agoThe goal for having the non-paid parts open source, is to share knowledge. I have to reverse engineer a lot of macOS internals and some hardware too to make some features possible. I don’t want to keep that for myself. This XDR thing makes an exception because it required a lot more RE work than I expected I’d like to get some publicity for it before open-sourcing and writing it up. I don’t think I can take advantage of the open source community here. The OSS community has largely chosen MonitorControl since it is fully open source, free and accepts contributions. I couldn’t have started Lunar without the open source ddcctl [0] project, and I want to give back as much as I can without jeopardizing sales and having to go back to a 9-to-5 job. [0] https://github.com/kfix/ddcctl https://github.com/kfix/ddcctl
- orlp 5y agoThat is all fair. Again, I don't have a problem with you, your project or the code you shared at all. I think it looks fantastic, and I applaud sharing the reverse engineering efforts. I only take issue with the choice of words, in calling Lunar open-source.
- alin23 5y agoI admit I wasn’t aware open-source was such a strict term. I always used it where the source code was available. I’ll fix this wording where I can, thanks for letting me know!
- teddyh 5y ago> I admit I wasn’t aware open-source was such a strict term. I always used it where the source code was available. The term you want is “source-available”: https://en.wikipedia.org/wiki/Source-available_software https://en.wikipedia.org/wiki/Source-available_software
- dessant 5y agoIt could be specified that only the free version is open source. You may also experiment with open sourcing some paid features too, possibly with some delay after the release if you're concerned about forks eating into your profit. I think the fear of forks is often overblown in this context, especially with consumer facing software. You have a huge advantage in terms of expertise and an established user base, and people will tend to pick your project over a fork, even if you open source everything and publish a paid package from the open source code. Those who are usually willing to pay for software will buy it for the convenience of not having to fiddle with the source code after every update, and to support the development of the project.
- sharikous 5y agoThrowing my 2 cents my issue is with that >> Lunar can't be built from this repo yet as the source code for the paid features is hidden This is where I feel a bit insulted. As long as you have stubs (as you say you will write) for the non-free parts, I can accept the reasoning. But an unbuildable repo is not a repo, in my view. I am not going to argue semantics here but this is the problematic part, for me. I think that after you publish the stubs it can be called an "open source Lite version" - but before that, it's just "unbuildable code taken from your real code"
- samatman 5y agoThis is from the MIT license, feel free to swap from most of the others: THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. That includes being able to build it. It's in yelling case for a reason.
- sharikous 5y agoThat's the law, you're right, I am not denying that. But being able to build something is a courtesy that is important to me.