Hello
I am using Ubuntu 20.04 and I am new to it. See the image below:
I can see here a main PPA and an additional main PPA (Source Code). What's the difference between them? Are both required? Thank you.
Hello
I am using Ubuntu 20.04 and I am new to it. See the image below:
I can see here a main PPA and an additional main PPA (Source Code). What's the difference between them? Are both required? Thank you.
Edit: At the time this answer was written, the question's original title read:
What's a source code?
This answer was composed to address that form of the question.
When humans write software, they need to design the coding language such that it makes a lot of sense; it's easy enough to grasp what is going on, thus it's easy enough to work with it.
But such code:
Solving both of these challenges involves running the original, human-friendly code through a sort of "converter" (often called "compiler"), that takes in the original written by people, and outputs something that:
There may be various degrees of differences between the variants. The original human-optimized code is always readable to you and to other humans, containing words and logical constructs that you can recognize; machine-optimized code however, at its most extreme, may indeed consist just of 0
s and 1
s; just by looking at it, you would have no chance forming an idea what it does.
From the aforementioned variants, the first, human-optimized one is called the "source code".
The compiled, machine- and distribution-optimized variants sometimes fall into a category that's called a "binary".
The interesting impact is that when someone gives you only the machine/distribution-optimized variant (e.g. binaries), then you can use the software, but cannot change how it works or what it does. (And creating copeies of it might also be challenging.) Often it's a lot of work even for experts to look into it somehow and figure out how it works (called reverse-engineering).
But when somebody lets you have the human-optimized source-code as well, along with the compiler that's necessary to compile it into its final, machine-optimized form, then you may have full control over that software: from then on, it only depends on the rights that the enclosed license grants you (which is usually pretty permissive in open-source projects).
In Ubuntu repositories, the source code of various software you use may be offered to you. But you need to download it only when you intend to change aspects of the software, and then compile a modified variant of it yourself. If you don't want to get into that, the source code is of little use to you.