Python Forum
Working with open source software
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Working with open source software
#1
Hi I was wondering if you could help me understand working with open source software. As I understand its possible to make your own alterations to it, add extra functions and what not. My questions is how do you do it-I know its a bit out of my depth but still I would like to know how its done. So if you could tell me or direct me to some explanatory material I would really appreciate it.

I tired some research online- but maybe I'm not using the right technical words.

Thanks in advance.
Reply
#2
Without going into too many legal details:
Open source means that everyone can see/analyse the source code of the software (it doesn't matter if it is small script or huge software package/system). What you can do with it depends on the licenses. Theoretically you can have open source software and still need a commercial license (even to use it, not to change it). For example PyQt is dual licensed on all supported platforms under the GNU GPL v3 and the Riverbank Commercial License. RedHat Linux is example of OpenSource Software, but you need to purchase proper enterprise license.
Assuming you have access to the full source code you can make any changes you want (again if the license is permissible). Then you can distribute it. Based on the original license there might be certain restrictions and requirements (conditions) - e.g. acknowledge that it is derivative work, make the source code available. Here is nice comparison site to help choosing the open source license for your software. And here is full compare table

You may want to read the Open Source Definition developed by Open Source Initiative for in-depth explanation, with annotations.
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply
#3
Thanks, for the reply. Basically the specific software is called Artisian used for coffee roasting, its under GPL license. I would like to add a button with a custom event. I guess my question is how can I view the source code edit it and compile it?

Thanks
Reply
#4
Here is the github repository:
https://github.com/artisan-roaster-scope/artisan
It looks like a big project, so I guess you will need some time to review/get understanding of the software

I guess the docs - https://artisan-scope.org/docs/quick-start-guide/
and the community would be helpful - https://artisan-scope.org/docs/community/ -
Note that there is option to define user button and actions:
https://artisan-roasterscope.blogspot.co...ettes.html

i.e. look at this section first - probably you don't really need to work on source code
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply
#5
Thanks I've been looking at the github repository page. That's exactly where I'm stuck at. Potentially this is a very newbie question but how do I edit the source code, there are no .py files. I don't see anything which I'm familiar with. I am pretty much out of my depth however this is something I have always wondered.
Thanks for taking your time to reply
Reply
#6
First of all - check my edited answer - it's possible to define the user buttons and programmable actions

As to the github - look at https://github.com/artisan-roaster-scope...master/src
There is artisan.py file that looks like the entry point fro GUI
then there is artisanlib folder that looks like the backend (i.e. the internals of the software)
but this is just a quick look - take it as hints, I may be wromg
and then browse down into folders, files, etc. As I said - it's a big project, so it won't be trivial to make modifications before you are familiar with the project.

In order to make changes you will need to make fork of the repository (i.e. you cannot make changes directly in their repository, because you don't have permissions). Probably you also want to download the source code to your local computer for development. It sounds you are not familiar with git (version-control-system) and github. So you will benefit from a quick introduction tutorial to git/github.
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply
#7
(Feb-21-2019, 05:50 PM)buran Wrote: Probably you also want to download the source code to your local computer for development. It sounds you are not familiar with git (version-control-system) and github. So you will benefit from a quick introduction tutorial to git/github.
Oh yeah this was the point I was trying to make. I took 'artisian' as an example(this is where I first thought of this question).
Thanks so much for the help
Reply
#8
(Feb-21-2019, 05:54 PM)Yamin Wrote: Oh yeah this was the point I was trying to make. I took 'artisian' as an example(this is where I first thought of this question).
there is green button - Clone or download, top right corner - https://github.com/artisan-roaster-scope/artisan

There is also Fork button - if you want to fork it to your repository
But again - take a Tour on Git/GitHub
https://guides.github.com/
If you can't explain it to a six year old, you don't understand it yourself, Albert Einstein
How to Ask Questions The Smart Way: link and another link
Create MCV example
Debug small programs

Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  Open-source codes and concept ideas. sourceduty 0 778 Aug-11-2023, 02:11 AM
Last Post: sourceduty
  what stand-alone python-aware open-source editors are around? Skaperen 14 2,092 Jun-11-2023, 11:12 PM
Last Post: Skaperen
Video Bionic Blue: Free open-source action platformer game KennedyRichard 0 711 Jan-23-2023, 01:23 PM
Last Post: KennedyRichard
Lightbulb Open-source ML-based line completion IDE plugin Aekalix 0 1,173 Jun-08-2022, 02:28 PM
Last Post: Aekalix
  Looking for open source projects to contribute cavalcantelucas 2 1,959 Sep-30-2021, 05:55 PM
Last Post: buran
  New open-source Python SDK for NEO blockchain Marsum 0 2,130 Aug-28-2020, 09:16 AM
Last Post: Marsum
  invitation to an open source community discord server ronblue77 2 2,921 Aug-22-2020, 11:58 AM
Last Post: ronblue77
  Looking for contributors for a new open source coding education platform alexmojaki 0 25,349 Aug-01-2020, 12:43 PM
Last Post: alexmojaki
  Open source PyCharm Ben69ben 4 2,816 Jul-28-2020, 09:57 AM
Last Post: Ben69ben
  Learning through doing -- Where to get experience??? Open Source Volunteering. pav1983 2 2,224 May-28-2020, 05:53 PM
Last Post: buran

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020