I'm new to Linux, particularly the distributions I'm using - Ubuntu and openSUSE.

I've looked on the Internet for how to install software on these operating systems, but I can't seem to understand the terms used, such as:

  • Repository
  • Package
  • Source code

Can anyone explain these terms to me? What other terms should a newbie be aware of?

  • Please at least attempt to use proper capitalization and punctuation in your question(s). That would make them a lot more readable. Sep 13, 2011 at 14:39

2 Answers 2


To begin with, Ubuntu and openSUSE are similar on the grounds that they are Linux, but have some deep down differences.

As for the terms you want to know:

  • A repository is like a library.

  • A package is like a book.

  • Source code is like ... a slightly different book!

To go on further,

A repository is something you can set up which is basically a database of different packages.

A package is basically nothing more than a list of files and procedures/scripts to be run. This can be anything from downloading and copying a few files to huge system wide changes. It is most commonly used for installing applications (and updates to those applications).

Source code (at a basic level, and the non movie sort!) is the code that is compiled in order for you to run applications. Wikipedia gives the best explanation. Basically, there are packages available which installs the source code to an application rather than the application itself.

In addition, as some builds of Linux are significantly different, an application that runs on one may not run on another. To combat this, some places would rather give you the source code to compile yourself instead of building it many times for each release themselves.


Best option is to read these, and then ask about anything specific you don't understand.

  • Software repository
    (Any place that packages are stored so that people can retrieve them to install them.)

  • Software package
    (This is software "packaged up" into a bundle for distribution and installation.)

  • Source code
    (Basically, this is the code written by the programmer/s. Sometimes software is distributed as source code that then needs to be compiled into an executable program.)

Not the answer you're looking for? Browse other questions tagged or ask your own question.