Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== Calendar ====== http://fridge.ubuntu.com/calendars/fridge/ ====== setting up the latest development environment ====== (see also http://developer.ubuntu.com/packaging/html/getting-set-up.html) sudo apt-get install gnupg pbuilder ubuntu-dev-tools bzr-builddeb apt-file sudo apt-get install packaging-dev gnupg – GNU Privacy Guard contains tools you will need to create a cryptographic key with which you will sign files you want to upload to Launchpad pbuilder – a tool to do a reproducible builds of a package in a clean and isolated environment ubuntu-dev-tools (and devscripts, a direct dependency) – a collection of tools that make many packaging tasks easier bzr-builddeb (and bzr, a dependency) – distributed version control with Bazaar, a new way of working with packages for Ubuntu that will make it easy for many developers to collaborate and work on the same code while keeping it trivial to merge each others work apt-file provides an easy way to find the binary package that contains a given file (apt-file search <file>). Another way to find the package a file belongs to is dpkg -S <file> (for installed packages). apt-cache (part of the apt package) provides even more information about packages on Ubuntu gpg --gen-key GPG will first ask you which kind of key you want to generate. Choosing the default (RSA and DSA) is fine. Next it will ask you about the keysize. The default (currently 2048) is fine, but 4096 is more secure. Afterward, it will ask you if you want it to expire the key at some stage. It is safe to say “0”, which means the key will never expire. The last questions will be about your name and email address. Just pick the ones you are going to use for Ubuntu development here, you can add additional email addresses later on. Adding a comment is not necessary. ssh-keygen -t rsa pbuilder-dist <release> create where <release> is for example precise, oneiric, natty, maverick, lucid or in the case of Debian maybe sid. This will take a while as it will download all the necessary packages for a “minimal installation”. These will be cached though. (see also http://wiki.awn-project.org/HowToUseBzr) bzr whoami "Bob Dobbs <subgenius@example.com>" bzr launchpad-login subgenius With launchpad-login you set your Launchpad ID. This way code that you publish in Launchpad will be associated with you. Similar to Bazaar, the Debian/Ubuntu packaging tools need to learn about you as well. Simply open your ~/.bashrc in a text editor and add something like this to the bottom of it: export DEBFULLNAME="Bob Dobbs" export DEBEMAIL="subgenius@example.com" You can paste your public SSH key (the public one is fine, not the secret one) into https://launchpad.net/~/+editsshkeys. Insert the contents of your public key (usually ~/.ssh/id_dsa.pub or ~/.ssh/id_rsa.pub) into the text box and submit. gpg --fingerprint <email@address.com> gpg --send-keys <KEY ID> Once all of this is done, you can register your GPG key at https://launchpad.net/~/+editpgpkeys - ====== finding bugs to work on ====== [[http://developer.ubuntu.com/packaging/html/fixing-a-bug.html|Fixing a bug in Ubuntu]] http://harvest.ubuntu.com [[https://bugs.launchpad.net/ubuntu/+source/linux?field.searchtext=arm&search=Search&field.status%3Alist=NEW&field.status%3Alist=INCOMPLETE_WITH_RESPONSE&field.status%3Alist=INCOMPLETE_WITHOUT_RESPONSE&field.status%3Alist=CONFIRMED&field.status%3Alist=TRIAGED&field.status%3Alist=INPROGRESS&field.status%3Alist=FIXCOMMITTED&field.assignee=&field.bug_reporter=&field.omit_dupes=on&field.has_patch=&field.has_no_package=|ARM bugs]] identify package to which a program belongs: apt-cache showsrc tomboy | grep ^Package: to get the source code for package, you run bzr branch lp:ubuntu/<packagename> (for the latest development release, 'precise' in our case) or bzr branch lp:ubuntu/<release>/<packagename> (for any other release) bzr commit bzr push lp:~<yourlpid>/ubuntu/<release>/<package>/<branchname> e.g bzr push lp:~emmaadams/ubuntu/natty/specialpackage/fix-for-123456, then you can run "bzr lp-open", which will open the corresponding page on Launchpad, where you can click on “(+) Propose for merging” link, to get the change reviewed by somebody and included in Ubuntu. Try Ubuntu ARM for your use case. See the __**[[https://wiki.ubuntu.com/ARMTeam|Ubuntu ARM wiki]]**__. Fix anything that doesn't work. Submit the patches for upload. https://wiki.ubuntu.com/ARM/FTBFS. See "Missing or incorrect platform specific code". If you have ARM hardware to test on you can fix bugs as with any other package. Upstreaming and sending fixes to Debian is usually a good idea. Even if they do not yet have the issue (Ubuntu using newer toolchain, built for ARMv7, has different configuration and packaging choices) they may need it soon. Bug triaging can be done even without trying any builds. * Close invalid bugs: Some bugs may get out of date if they are filed automatically on FTBFS but then are forgotten and not closed when a new build succeeds. * Check the issue with Debian/upstreams and forward upstream or link to upstream bugtracker patches * Tag them for easier retrieval: they all have the ftbfs and arm-porting-queue tags, but there can be other good ways to tag (arm-build-timeout , qt-opengl-arm, etc) Some ideas: - Use an SMP kernel, compiling code with SMP defined - Turn on kernel preemption configuration option on single processor machine (shows some SMP bugs) ====== Development ====== [[https://help.ubuntu.com/community/CompilingSoftware|Compiling software]] in Ubuntu. [[http://omappedia.org/wiki/Ubuntu_kernel_for_OMAP4|Ubuntu kernel for OMAP4]] http://omappedia.org/wiki/Development_With_Ubuntu [[https://wiki.ubuntu.com/PackagingGuide/HandsOn|Ubuntu packaging guide]] (see also [[http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.html|Debian manual]] or the [[http://www.debian.org/doc/manuals/maint-guide/build.en.html|Debian maintainer guide]]). apt-get source foo cd foo-* sudo apt-get build-dep foo dch -l local 'Blah blah blah' debuild -us -uc #debug options #export DEB_BUILD_OPTIONS=debug,nostrip,noopt dpkg-buildpackage -rfakeroot -us -uc -nc https://help.ubuntu.com/community/CompilingSoftware [[https://wiki.ubuntu.com/HelpingWithBugs|Helping with bugs]]. See also [[https://wiki.ubuntu.com/Bugs/HowToTriage|how to triage a bug]]. [[https://wiki.ubuntu.com/Kernel/BuildYourOwnKernel|Building your own kernel]] ===== Setting up a root filesystem ===== https://wiki.ubuntu.com/ARM/RootfsFromScratch [[http://cdimage.ubuntu.com/ubuntu-core/daily/|Ubuntu Core]] is the current up-to-date minimal root filesystem. See [[https://wiki.ubuntu.com/Core|Ubuntu Core wiki]] and [[http://omappedia.org/wiki/OMAP_Ubuntu_Core|Omappedia Ubuntu Core]]. ====== Precise ====== https://launchpad.net/ubuntu/precise [[http://cdimage.ubuntu.com/releases/12.04/alpha-2/|Alpha-2 images]] **[[http://qa.ubuntuwire.org/ftbfs/primary-precise-armhf.html|armhf build failures on precise]]**. http://ports.ubuntu.com/ubuntu-ports/dists/precise/main/installer-armel/current/images/omap4/cdrom/ ===== ARM issues ===== [[https://wiki.ubuntu.com/ARM/Thumb2#Assembler%20errors|Thumb2]] reference pages. ===== NFS ===== http://morschi.com/2011/08/17/booting-the-pandaboard-over-nfs/ ====== Kernel issues ====== http://www.kernel.org/pub/linux/docs/lkml/reporting-bugs.html [[http://lwn.net/Articles/365835/|LWN - Debugging with ftrace(1)]] [[http://lwn.net/Articles/366796/|LWN - Debugging with ftrace(2)]] [[https://wiki.ubuntu.com/Kernel/KernelDebuggingTricks|Ubuntu - Kernel debugging tricks]] http://www.igloocommunity.org/support/Gdb_inline_command_usage [[Investigating crashes]] https://wiki.ubuntu.com/Kernel/FAQ https://wiki.ubuntu.com/KernelCustomBuild http://ports.ubuntu.com/ubuntu-ports/pool/main/l/linux-ti-omap4/linux-ti-omap4_3.2.0-1411.14.tar.gz ====== Interesting links ====== [[https://wiki.ubuntu.com/Bugs/HowToFix|Fixing a bug]] [[http://old.nabble.com/ubuntu-devel-f12733.html|ubuntu-devel mailing list]] [[http://doc.bazaar.canonical.com/latest/en/mini-tutorial/index.html|Bazaar]] http://doc.bazaar.canonical.com/bzr.2.4/en/mini-tutorial/index.html https://wiki.ubuntu.com/Classroom http://developer.ubuntu.com/packaging/html/ [[https://wiki.ubuntu.com/UsingDevelopmentReleases|Using development releases]] ubuntu.txt Last modified: 12 years agoby admin