Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How do I get the source code of the operating system? How do I run the modified code? What programming languages ​​are used to modify the code?

share|improve this question

Here's the link to the original post

The source code for ubuntu is divided up by package - from a running ubuntu system you can easily retreive the source for any package by doing:

apt-get source (package name)

Otherwise, go to launchpad, and search up the package in question. For example, here's the download page for the source code for a specific version of curl:

That said, it's a lot easier if you're on a Linux system already - the package sources are divided into an original source tarball plus ubuntu patches, so if you don't use apt-get source, you'll need to manually apply the patch to the source code. And new-style packages are even divided into multiple packages.

What's more, the packages are generally not designed to be cross-compiled from a non-Linux system. Even if you download them and open them in VS, you won't be able to build them from a Windows system.

Finally, note that not everything is in C and C++ - there are packages in just about any language you can imagine. But I suppose most of them could be opened in VS as text files :)

Note: If you really, really want all of it, and I can't stress enough how silly it would be to download everything just to start learning about the system, you can use the debmirror tool, available in ubuntu, to do this:

debmirror -a none \
          --source \
          -s main \
          -d lucid,lucid-security,lucid-updates \
          -r /ubuntu \ 
          --progress \
          -e http \
          -h \ ## or other ubuntu archive mirror

This will be an absolutely huge download. Have several tens of GBs of space available. Note that this downloads only core packages - replace -s main with -s main,universe,multiverse,restricted to get everything.

Once you have the package files, you can extract the source by running dpkg-source -x on a .dsc file of interest.

share|improve this answer

You need to add some server of Debian/Ubuntu too into list of this file - before you are able to use the command apt-get source :


sources.list is explained in man of Ubuntu:

man sources.list

Add into /etc/apt/sources.list (only in case it is not written already there) after :

sudo gedit /etc/apt/sources.list

this one line:

deb-src main restricted universe multiverse

Then after saving and closing gedit, do:

sudo apt-get update

After this you should be able to use command with any package:

sudo apt-get source


share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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