Открытый код linux ubuntu

Ubuntu Wiki

The kernel source for the Ubuntu kernel is based very closely on the upstream mainline kernel tree maintained by Linus. The Ubuntu-ness of this kernel is maintained as a git branch against the Linus tree.

Obtaining the source for an Ubuntu release

There are a number of different ways of getting the kernel sources. The two main ways will be documented here.

If you have installed a version of Ubuntu and you want to make changes to the kernel that is installed on your system, use the apt-get method (described below) to obtain the sources.

However, if you wish to get the most up to date sources for the Ubuntu release you are running and make changes to that, use the git method (described below) to obtain the sources.

Obtaining the kernel sources for an Ubuntu release using apt-get

apt-get source linux-image-unsigned-$(uname -r)
apt-get source linux-image-$(uname -r)

Obtaining the kernel sources for an Ubuntu release using git

The source for each release is maintained in its own git repository on Launchpad.

git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source//+git/

git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/cosmic
groovy git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/groovy
focal git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/focal
bionic git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/bionic

Replace your intended OS series in the above, and pull the source for the kernels you need.

The distro kernel is always on the master branch in these repositories. Each release also has a master-next branch containing the commits that will go onto the master branch and become the next release for that release.

A number of releases also have other source packages which represent other related but divergent kernels for other purposes. For example, there is a specialized AWS kernel available in the linux-aws source package. (Previously these sorts of things were done in Topic Branches and some older kernels and projects still use them.)

Obtaining a copy

To obtain a local copy you can simply git clone the repository for the release you are interested. The git command is part of the git package.

git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/bionic
git clone git://kernel.ubuntu.com/ubuntu/linux.git git clone --reference linux git://git.launchpad.net/~ubuntu-kernel/ubuntu/+source/linux/+git/groovy

In each case you will end up with a new directory ubuntu- containing the source and the full history which can be manipulated using the git command from within each directory.

$ git tag -l Ubuntu-* Ubuntu-5.4.0-47.51 Ubuntu-5.4.0-48.52 Ubuntu-5.4.0-49.53 Ubuntu-5.4.0-51.56 Ubuntu-5.4.0-52.57 $
git checkout -b temp Ubuntu-5.4.0-52.57

You may then manipulate the release - for example, by adding new commits.

Читайте также:  Astra linux установка принтера epson

Kernel/SourceCode (последним исправлял пользователь 85-210-146-14 2010-06-21 08:20:10)

The material on this wiki is available under a free license, see Copyright / License for details.

Источник

Где я могу найти исходный код Ubuntu?

Я хотел бы знать, где найти исходный код Ubuntu. Я хотел бы видеть, насколько далеко это "с открытым исходным кодом".

5 ответов

apt-get source linux-source-3.2.0 
sudo apt-get build-dep $package 
sudo apt-get build-dep abiword apt-get source abiword 

Исходный код для каждого пакета в основном и универсальном архивах находится на Launchpad, или вы можете получить его, включив Sources в Software Properties диалог, а затем делать apt-get source $packagename в терминале, после обновления информации о пакете.

Исходный код для пакетов в партнерских репозиториях обычно недоступен, так как они в основном не являются приложениями с открытым исходным кодом. Это верно и для некоторых элементов, доступных в Центре программного обеспечения.

Программное обеспечение в дистрибутивах Linux организовано в пакеты. Каждый пакет содержит пользовательское программное обеспечение, такое как Firefox, или библиотеки, такие как libasound2, которые требуются для Firefox. Если вы устанавливаете Firefox, apt Система выяснит, какие предварительные пакеты существуют, загрузит и установит их. Теперь эти пакеты обычно распространяются в виде двоичных файлов, которые уже были скомпилированы для данной архитектуры процессора, но точный источник, использованный для компиляции этой версии пакета, доступен через apt-get source firefox ,

Подавляющее большинство вещей в репозиториях пакетов Ubuntu с открытым исходным кодом. Но в Ubuntu есть список утвержденных проприетарных программ. Хотя это программное обеспечение не соответствует целям свободы Ubuntu, оно очень желательно для сообщества и представляет большую ценность. Примерами этого являются Skype или Sun Java (теперь удалены). Эти пакеты не перечислены на сайте пакетов Ubuntu.

Источник

Открытый код linux ubuntu

Ubuntu

Other repositories

Name Last Modified
lp:~lxle/ubuntu/+source/seamonkey/+git/trunk 24 minutes ago
lp:~libreoffice/ubuntu/+source/libreoffice 2 hours ago
lp:ubuntu/+source/magics++ 2 hours ago
lp:ubuntu/+source/wine 3 hours ago
lp:ubuntu/+source/ferret-vis 3 hours ago
lp:ubuntu/+source/toil 3 hours ago
lp:ubuntu/+source/python-biopython 3 hours ago
lp:ubuntu/+source/pcre-ocaml 3 hours ago
lp:ubuntu/+source/ocaml-shine 3 hours ago
lp:ubuntu/+source/wacomtablet 3 hours ago
lp:ubuntu/+source/ocaml-speex 3 hours ago
lp:ubuntu/+source/ocaml-samplerate 3 hours ago
lp:ubuntu/+source/ocaml-mad 3 hours ago
lp:ubuntu/+source/indi 3 hours ago
lp:ubuntu/+source/ocaml-domain-name 3 hours ago
lp:ubuntu/+source/ocaml-config-file 3 hours ago
lp:ubuntu/+source/ocaml-lame 3 hours ago
lp:ubuntu/+source/instaloader 3 hours ago
lp:ubuntu/+source/ocaml-mew-vi 3 hours ago
lp:ubuntu/+source/ocaml-graphics 3 hours ago
lp:ubuntu/+source/ocaml-gen 3 hours ago
lp:ubuntu/+source/libwfa2 3 hours ago
lp:ubuntu/+source/ocaml-result 3 hours ago
lp:ubuntu/+source/ocaml-ladspa 3 hours ago
lp:ubuntu/+source/ocaml-parany 3 hours ago
lp:ubuntu/+source/ocaml-bigarray-compat 3 hours ago
lp:ubuntu/+source/js-of-ocaml-ocamlbuild 3 hours ago
lp:ubuntu/+source/systemd 3 hours ago
lp:ubuntu/+source/donfig 3 hours ago
lp:ubuntu/+source/dose3 3 hours ago
lp:ubuntu/+source/biniou 3 hours ago
lp:ubuntu/+source/onetbb 4 hours ago
lp:ubuntu/+source/falkon 4 hours ago
lp:~demmmo/ubuntu/+source/openssl 6 hours ago
lp:~canonical-kernel/ubuntu/+source/linux-signed-uc22-intel-iotg/+git/jammy 6 hours ago
lp:~canonical-kernel/ubuntu/+source/linux-uc22-intel-iotg/+git/jammy 6 hours ago
lp:ubuntu/+source/libraw 6 hours ago
lp:ubuntu/+source/wireshark 8 hours ago
lp:ubuntu/+source/git-annex 8 hours ago
lp:ubuntu/+source/hcloud-python 8 hours ago
lp:ubuntu/+source/golang-github-census-instrumentation-opencensus-proto 8 hours ago
lp:ubuntu/+source/rust-defmt-parser 8 hours ago
lp:ubuntu/+source/cryptominisat 8 hours ago
lp:ubuntu/+source/golang-1.20 9 hours ago
lp:ubuntu/+source/sbcl 9 hours ago
lp:ubuntu/+source/golang-github-opencontainers-specs 9 hours ago
lp:ubuntu/+source/golang-github-containers-storage 9 hours ago
lp:~ubuntu-kernel-test/ubuntu/+source/linux/+git/linus--linux 9 hours ago
lp:ubuntu/+source/linux-gcp-5.19 10 hours ago
lp:ubuntu/+source/linux-signed-gcp-5.19 10 hours ago
lp:ubuntu/+source/linux-restricted-signatures-gcp-5.19 10 hours ago
lp:ubuntu/+source/linux-restricted-modules-gcp-5.19 10 hours ago
lp:ubuntu/+source/linux-meta-gcp-5.19 10 hours ago
lp:~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack 11 hours ago
lp:ubuntu/+source/drbl 12 hours ago
lp:ubuntu/+source/clonezilla 12 hours ago
lp:ubuntu/+source/gap-autodoc 12 hours ago
lp:ubuntu/+source/apache2 12 hours ago
lp:ubuntu/+source/marco 12 hours ago
lp:ubuntu/+source/linux-restricted-modules-media-fixup 13 hours ago
lp:ubuntu/+source/calibre 13 hours ago
lp:ubuntu/+source/cdo 13 hours ago
lp:ubuntu/+source/binutils-avr 13 hours ago
lp:ubuntu/+source/tifffile 13 hours ago
lp:ubuntu/+source/zenity 13 hours ago
lp:ubuntu/+source/openldap 13 hours ago
lp:ubuntu/+source/xkbset 13 hours ago
lp:ubuntu/+source/starpu-contrib 13 hours ago
lp:ubuntu/+source/starpu 13 hours ago
lp:ubuntu/+source/systemtap 13 hours ago
lp:ubuntu/+source/woof-doom 13 hours ago
lp:ubuntu/+source/draco 13 hours ago
lp:ubuntu/+source/tinygltf 13 hours ago
lp:ubuntu/+source/ruby-gitlab-fog-azure-rm 13 hours ago
lp:ubuntu/+source/rust-coreutils 13 hours ago
lp:ubuntu/+source/wasmedge 13 hours ago
lp:ubuntu/+source/prometheus-alertmanager 13 hours ago
lp:ubuntu/+source/ruby-saml 13 hours ago
lp:ubuntu/+source/freeipmi 13 hours ago
lp:ubuntu/+source/opm-common 13 hours ago
lp:ubuntu/+source/rust-netlink-packet-core 13 hours ago
lp:ubuntu/+source/rust-pyo3-log 13 hours ago
lp:ubuntu/+source/bomstrip 13 hours ago
lp:ubuntu/+source/prometheus 13 hours ago
lp:ubuntu/+source/crowdsec 13 hours ago
lp:ubuntu/+source/monty 13 hours ago
lp:ubuntu/+source/groff 13 hours ago
lp:ubuntu/+source/checker-framework-java 13 hours ago
lp:ubuntu/+source/chemeq 13 hours ago
lp:ubuntu/+source/golang-github-digitalocean-go-qemu 13 hours ago
lp:ubuntu/+source/gla11y 13 hours ago
lp:ubuntu/+source/grimripper 13 hours ago
lp:ubuntu/+source/aerc 13 hours ago
lp:ubuntu/+source/vte2.91 14 hours ago
lp:ubuntu/+source/golang-github-hhatto-gorst 14 hours ago
lp:ubuntu/+source/resource-agents 15 hours ago
lp:ubuntu/+source/dwarves 15 hours ago
lp:ubuntu/+source/cmake 15 hours ago
lp:ubuntu/+source/openafs 15 hours ago
lp:ubuntu/+source/binutils 15 hours ago
Читайте также:  Как создать service linux
1100 of 49750 results First • Previous • Next • Last

Источник

How do I get the Ubuntu source code? [closed]

Closed. This question is seeking recommendations for books, tools, software libraries, and more. It does not meet Stack Overflow guidelines. It is not currently accepting answers.

We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.

Where can I find the source code for the latest Ubuntu release? Also, how would I view the code? Would it just be lots of .cpp and .h files I could view in Visual Studio?

Thanks, was i right going for the dists subfolder? At this point i was presented with a massive number of sub-folders? Are each of these part of the OS?

3 Answers 3

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: https://launchpad.net/ubuntu/+source/curl/7.21.2-4ubuntu1

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.

Читайте также:  Linux как войти под postgres

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 archive.ubuntu.com \ ## or other ubuntu archive mirror destpath 

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.

Источник

Оцените статью
Adblock
detector