this post was submitted on 11 Jun 2025
20 points (88.5% liked)

Linux

11134 readers
272 users here now

Welcome to c/linux!

Welcome to our thriving Linux community! Whether you're a seasoned Linux enthusiast or just starting your journey, we're excited to have you here. Explore, learn, and collaborate with like-minded individuals who share a passion for open-source software and the endless possibilities it offers. Together, let's dive into the world of Linux and embrace the power of freedom, customization, and innovation. Enjoy your stay and feel free to join the vibrant discussions that await you!

Rules:

  1. Stay on topic: Posts and discussions should be related to Linux, open source software, and related technologies.

  2. Be respectful: Treat fellow community members with respect and courtesy.

  3. Quality over quantity: Share informative and thought-provoking content.

  4. No spam or self-promotion: Avoid excessive self-promotion or spamming.

  5. No NSFW adult content

  6. Follow general lemmy guidelines.

founded 2 years ago
MODERATORS
 

I feel super dumb asking this. But what actually is and how does github (or similar sites) work? Are they all just source files one needs to manually compile? I am always confused when I look at a github page. I know some have directions but they still go way over my head sometimes. Im not a total noob but some of this stuff seems like you need to be in programming and have an IDE just to run a program.

all 12 comments
sorted by: hot top controversial new old
[–] BakedCatboy@lemmy.ml 20 points 1 day ago* (last edited 1 day ago)

It completely depends on the project and the maintainer. Lots of repos are just source files, some include instructions on how to compile, some have no instructions. Some post releases with a pre compiled executable that you can download and run, others post releases that just have a zip of the source code. Some projects use GitHub pages to host detailed manuals, tutorials, etc.

If you share a link to a specific project, people may be able to help you get it running. Whether or not you need a bunch of tools like an IDE just depends on the project.

[–] cyborganism@piefed.ca 12 points 1 day ago

It's mainly a developer tool based on Git, a version control system. You know how to can go back to a previous version of a document in Google Docs for example? It's kinda like that, but more powerful.

Github adds a whole layer around Git with issue tracking and other project management tools, as well as automation tools to name a few.

It's mostly used to track progress and change history of source code. So when you clone a Github repo to your local machine, you essentially get a copy of the files and their entire change history along with it.

So yes, you might need to compile the source code, depending on the programming language used.

[–] just_another_person@lemmy.world 8 points 1 day ago (1 children)

At its simplest, it's just a hosted service for git.

Check this out: https://agripongit.vincenttunru.com/

[–] SidewaysHighways@lemmy.world 3 points 1 day ago

that was informative!

[–] sxan@midwest.social 4 points 1 day ago

You're getting a bunch of good, accurate answers, but I want to give it a shot, too. Keep is mind I'm grossly generalizing.

Computer programs are compiled from source code. Programmers keep track of the history of the changes they make, the different versions of the software, with version control systems. Github is a centralized place developers can upload their source code so that other developers can use it.

It's not really intended for end users to use directly. It's a file sharing service, but for source code. That said, github has the capability to compile programs if there developers set it up, and then you get compiled programs you can download from it.

I would suggest not trying to use github directly, unless you're looking to get into programming, or if there's software there you want to try that isn't available from your distribution's official software channels. It's not really an "app store;" it's a Microsoft-owned software service for developers that is sometimes used to host readable documents, because it can be used for collaborative sharing of versioned text files.

There are a great many exceptions to what I said, but that was essentially how github started life, even if it's used for other things and has more features now.

[–] catloaf@lemm.ee 6 points 1 day ago

GitHub is a site that hosts git repos. Git is primarily for source code, but you can put just about any kind of project in it.

Most of them will have precompiled releases.

[–] plantsmakemehappy@lemmy.world 6 points 1 day ago* (last edited 1 day ago)

The most basic level is GitHub, Gitlab, etc are used to store version controlled files which can be anything from like a wiki, an apps source files, your random collection of scripts, etc.

They have added features like the ability to offer artifacts which could be an already compiled exe or rpm, or just the source code for you to self compile. Which option they give is dependent on which repo and usually that repo maintainer will have directions for how you install their thing.

[–] MangoPenguin@piefed.social 5 points 1 day ago

Most programs on github will have a release you can just download and run, if you click on the releases section you should see some files for each version.

[–] double_quack@lemm.ee 2 points 1 day ago* (last edited 1 day ago)

Just came to say don't feel embarrassed, that's actually an interesting question!

[–] hendrik@palaver.p3x.de 2 points 1 day ago* (last edited 1 day ago)

Technically, a project can upload all kinds of files there. But the main point is use for development purposes. Developers share the resources and program code there and use it to collaborate. It's often not aimed at the end-user.

If you're lucky, you'll find a link to the project website either in the README further down, or in the description at the right, close to the top. That website is usually meant for the general public. Some projects also release binaries / executable files. It's also on the right in the "About" description or if you click on "Tags" and then "Releases".

Other than that, a lot of open source projects don't provide executable files. You'll have to install it with the package manager of your Linux distribution, or follow the instructions to build it yourself.

[–] Tarquinn2049@lemmy.world 1 points 1 day ago

If you do come across something you really want to try on github, and it doesn't have a pre-compiled version. It's actually not that scary to compile it yourself. If they don't give any instructions for compiling it, that generally means you can leave everything as default on the compiler. You can change any optional settings to tailor it to your use case. Generally just looking at the options and reading the helpful hints, it all ends up being pretty self-explanatory. But of course, if anything gives you trouble, there are plenty of places to get help too.