this post was submitted on 18 May 2024
49 points (98.0% liked)

Open Source

31393 readers
257 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

Hey there.

Im working on a project for some software I want in the world. But I'm such a hobbyist that I've never thought of publishing any of my projects, but after doing so much work in it I kind of want other to have access to it after I feel its ready.

Whats the process of distribution? I guess I typically use github when interacting with FOSS community, but its still confusing for me to navigate as an end user sometimes, let alone being an uploader.

FWIW its simply a few python modules and other supporting txt and jsons. Targeting mostly Windows because that's what I use.

Thanks! (If this isn't the right place to ask please let me know!)

you are viewing a single comment's thread
view the rest of the comments
[–] ipacialsection@startrek.website 9 points 6 months ago
  1. Create a source control repository containing all your code, and publish it to an online code forge. GitHub's docs might help with this: https://docs.github.com/en/get-started/start-your-journey
  2. Choose an open-source license and add it to the repository as a LICENSE file. If you want to require any projects that build upon yours to be open-source too, the GNU GPL is a good choice. If you want to allow proprietary programs to include your library without releasing any source code other than that which is directly based on yours, the GNU LGPL is good for that. If you want to allow people to do whatever they want, even use all your code as the basis of a proprietary program without credit, the Unlicense is a good choice. There are a lot of licenses with different degrees of "copyleft" and attribution requirements in between. Technically publishing with a license file is all you need to do, but there are more things you should do.
  3. Create a README text file describing what your program does, and instructing users on how to compile and run it. Consider including more detailed documentation on how to use it, as well.
  4. Clean up your code and file layout so that it's as easy as is feasible for other programmers to understand.
  5. Promote your project to whoever you think might find it useful!