Commit Graph

28179 Commits

Author SHA1 Message Date
Ken Mixter
88aaf818cb Reenable upstart now that we can build it reliably.
Review URL: http://codereview.chromium.org/551021
2010-01-14 17:05:49 -08:00
Ken Mixter
de780c41c3 Record the production rootfs size for tracking with autotest
Review URL: http://codereview.chromium.org/536057
2010-01-14 15:29:22 -08:00
Will Drewry
d2f8c15613 Bump gtest to 1.4.0 and add gmock 1.4.0
Review URL: http://codereview.chromium.org/536056
2010-01-14 14:10:08 -08:00
Colin Watson
a2400d48ca Native build import script
Add a script to import all binary packages for a given source package
from ports.ubuntu.com, convert and install them using 'chromiumos-build
--convert', and write out a fake .changes file so that chromiumos-build
doesn't try to re-import them.  Use it like this:

  ./import_native_build.sh anthy libchewing

For the moment, there are a number of source packages that won't
cross-build successfully but that can be imported from native Ubuntu
builds, and this wraps up the process of doing so.

Review URL: http://codereview.chromium.org/543059
2010-01-14 20:49:12 +00:00
Colin Watson
555b147cc3 Add optional chromiumos-build support to build_platform_packages
This makes it possible to attempt a build using chromiumos-build by
running './build_platform_packages.sh --new-build', with an -a option to
select the architecture (e.g. -a armel).

Right now, this uses --apt-source to build all build-dependencies as
well, since that usually ends up being what you want when
cross-compiling.  I'd appreciate feedback from buildbot-oriented folks
on whether this is an acceptable load in general.  For the meantime,
this is mainly for the convenience of people working on the cross-build
project.

Review URL: http://codereview.chromium.org/546042
2010-01-14 00:13:01 +00:00
Sean O'Connor
c922fc09a5 Re-work automation setup scripts.
Review URL: http://codereview.chromium.org/542058
2010-01-13 11:07:52 -08:00
tedbo
47cac17a50 Fix i386 hardcode.
Review URL: http://codereview.chromium.org/536045
2010-01-13 10:33:00 -08:00
Ken Mixter
48afd4898f Disable upstart builds until we find a proper build reliability fix
Review URL: http://codereview.chromium.org/545037
2010-01-12 20:13:57 -08:00
tedbo
e8d9fd5a16 A script to manage the whitelist of package maintainer scripts.
The package_script_whitelist.sh is intendended to make it easy
to make passes through the set of packages that have preinst
or postinst maintainer scripts and add them to the whitelist.
The audit mode will use the PAGER to show non-whitelisted preinst
and postinst scripts and ask you if you want to whitelist them,
create a template alternative maintainer script, skip, etc.

There are also commands to add individual scripts or check to
see if they are in the whitelist.

Review URL: http://codereview.chromium.org/543027
2010-01-12 18:43:22 -08:00
Chris Sosa
083e781e9c Add chromeos=1 to build_chrome.sh
Review URL: http://codereview.chromium.org/545031
2010-01-12 15:14:19 -08:00
David McMahon
5d589a6cf7 Created branch release_28. Update CHROMEOS_VERSION_BRANCH=29 2010-01-12 12:02:41 -08:00
Daniel Erat
5e36dd8aec build: Get rid of manually-maintained lists of tests.
BUG=chromium-os:1245
TEST=ran scripts/build_tests.sh and scripts/run_tests.sh

Review URL: http://codereview.chromium.org/541020
2010-01-12 10:31:14 -08:00
Ken Mixter
7b3b9d76fb Build and install a Chromium OS specific version of upstart.
Review URL: http://codereview.chromium.org/525046
2010-01-12 09:05:37 -08:00
tedbo
3d9b18913c Always use our dpkg wrapper when mastering an image.
This changes install_packages to always have apt use our dpkg
wrapper when building an image. The dpkg_no_scripts.sh has been
modified to check if a package's maintainer scripts have been
whitelisted. If so, it will install without maintainer scripts.
If any relevant maintainer script has not been whitelisted it
will fall back to standard dpkg which will process the
maintainer scripts.

This will allow us to transition to installing packages without
maintainer scripts in batches rather than all at once. Once
everything is switched over we will have dpkg_no_scripts.sh
throw an error if it encounters a package with maintainer
scripts that have not been whitelisted.

Move postinst stuff from install_packages.sh to actual postinst
scripts.

Review URL: http://codereview.chromium.org/549017
2010-01-11 17:34:44 -08:00
Eric Li
55d1c59a58 Since now those packages are build with autotest pre build.
This CL should be submitted after 531001.

Review URL: http://codereview.chromium.org/537009
2010-01-11 10:47:54 -08:00
tedbo
4f44d9e104 Use local apt cache instead of local_repo when mastering an image.
This change switches to mastering an image without using debootstrap.
We turn on the previously experimental bits that install a small
set of packages manually before handing things over to apt. In both
cases we use apt to download the packages so that it can populate
it's local package cache.

With this change we will no longer depend on the local_repo when
mastering an image. Developers will not have to rebuild their
local repo when repo_list_image.txt changes. Instead we will use
and lazy-fill the local apt-cache. The first time you build_image.sh
it will be slow since it needs to download the packages. Subsequent
runs should be as before since it will use the local cache. If
packages are added they should be lazily fetched in the next image
build.

Until we have a fully populated external mirror, developers will
still have to add packages to repo_list_image.txt. Also, until
make_chroot is switched over to use the external repo then
developers will have to redo their local repo when the
repo_list_dev.txt changes.

Review URL: http://codereview.chromium.org/521073
2010-01-08 17:26:11 -08:00
tedbo
58e02408a6 Changes to make the resulting image mostly functional when skipping debootstrap.
Review URL: http://codereview.chromium.org/523159
2010-01-07 20:00:46 -08:00
Ken Mixter
689b9ee48e Simple way to run client/server autotest(s) from server.
This is a script to run client or server autotests on a live Chromium OS instance, collect results, and optionally upload the to an autotest database.  This includes functional and performance tests.  We assume the remote instance is running an appropriate image installed (one created using mod_image_for_test.sh and possibly installed using image_to_live.sh).

An example run might be

run_remote_tests.sh --remote=192.168.1.5 BootPerfServer -o results.txt

This example will run src/platform/testing/server_tests/system_BootPerfServer
5 times on instance at 192.168.1.5 and collect results in result.txt.

Also refactors and improves readability in image_to_live.sh.

Review URL: http://codereview.chromium.org/519041
2010-01-07 18:23:52 -08:00
David McMahon
8e0816ece0 Created branch release_26. Update CHROMEOS_VERSION_BRANCH=27 2010-01-07 18:15:04 -08:00
tedbo
5a9457f2f8 Switch install_packages.sh to re-use the apt cache across runs.
This change also switches us to pre-populate the apt cache with
the set of packages needed to run apt and install them from there
rather than referring to the soon-to-be-defunct local repo.

Review URL: http://codereview.chromium.org/523146
2010-01-07 16:22:18 -08:00
tedbo
1fda17446e Decrease the number of bootstrap packages in install_packages.sh.
We use apt to install the majority of our packages. In order to
get apt running where it can install packages we first need to
force install a small set of packages that have cyclic dependencies.
This CL reduces the required set quite a bit and fixes a bug where
we were installing a few wrong packages than what we were attempting
to install due to a bad glob.

Review URL: http://codereview.chromium.org/519075
2010-01-07 12:48:24 -08:00
Colin Watson
3a3566b51f Reduce noise in buildbot logs
Set LANG=C also when providing a command to enter_chroot.sh. Should make
buildbot logs quite a bit shorter.

Review URL: http://codereview.chromium.org/521053
2010-01-07 07:36:32 +00:00
Yusuke Sato
c1d3332aed Run dbus-uuidgen on system startup (again).
A few weeks ago, dbus-uuidgen command was removed from the platform/init/dbus.conf script, but after the "upgrade-everything-to-Karmic" change, I think generating the uuid has become mandatorty again.
Without the uuid file (/var/lib/dbus/machine-id), ibus-daemon which uses D-Bus as its IPC channel does not work at all. I'm not sure but possibly the same is true for dbus-daemon?

chronos@localhost:/home/chronos$ ibus-daemon
process 2254: D-Bus library appears to be incorrectly set up; failed to read machine uuid: Failed to open "/var/lib/dbus/machine-id": No such file or directory
See the manual page for dbus-uuidgen to correct this issue.

BUG=1127
TEST=On xterm, run /usr/bin/ibus-setup and verify the command does not show an error like "ibus-daemon is not working."

Review URL: http://codereview.chromium.org/508018
2010-01-07 15:36:35 +09:00
tedbo
ccd326b84d Changes to install_packages.sh so that we can master an image without
running maintainer scripts.

This is a work-in-progress. If you build_image like:

EXPERIMENTAL_NO_DEBOOTSTRAP=1 ./build_image.sh

it will skip debootstrap and install the base required packages
without running maintainer scripts. This is about 68 packages that
have lots of interleaved dependencies so it is nasty to trim down.

If you build like:

EXPERIMENTAL_NO_MAINTAINER_SCRIPTS=1 ./build_image.sh

it will install all packages skipping maintainer scripts.

Using these we can try and get things in a state where we can
create an image built of cross-compiled packages.

This is obviously not finished but in this case I prefer to commit
early so others can poke at it.

Review URL: http://codereview.chromium.org/527015
2010-01-06 18:23:50 -08:00
Colin Watson
be6ebfaf89 Build and install dh-chromeos before doing anything else
src/third_party/chrome/ needs dh-chromeos. Fortunately at least
dh-chromeos doesn't need anything else from our tree, so let's build and
install it really early.

Review URL: http://codereview.chromium.org/518051
2010-01-07 00:46:48 +00:00
Colin Watson
ef0667f327 Install libchrome-dev and libchromeos-dev packages
Add make_pkg.sh for src/third_party/chrome/ (a.k.a. libchrome-dev) and
src/common/ (a.k.a. libchromeos-dev) and (ab)use it to install those
packages once built.

Installing the packages from make_pkg.sh isn't very clean. However, this
gives us a migration path to future use of chromeos-build, which will
need these headers and libraries to be built as packages in order to
support cross-building cleanly.

Review URL: http://codereview.chromium.org/523109
2010-01-07 00:09:56 +00:00
David Moore
9d59051b65 Allow chronos user to renice back to 0
allow the chronos user to renice processes

Review URL: http://codereview.chromium.org/518049
2010-01-06 13:18:27 -08:00
David McMahon
1830686c8f Revert branch version change to 27. Back to 25. 2010-01-05 18:14:53 -08:00
David McMahon
4c117e4caa Merge branch 'master' of ssh://chromiumos-git/chromeos 2010-01-05 18:13:57 -08:00
David McMahon
83ee7bbbd1 Created branch 26. Update CHROMEOS_VERSION_BRANCH=27 2010-01-05 18:07:52 -08:00
Sean O'Connor
29ffbc3097 add script to drive setup and execution of autotest suites from dev environment
Review URL: http://codereview.chromium.org/502009
2010-01-05 15:33:28 -08:00
Colin Watson
8fe80a30e1 Build dh-chromeos
dh-chromeos was originally intended for use once we switch to
chromiumos-build, but it turns out that it would be useful to be able to
use it beforehand to correct some cross-build problems. Accordingly,
give it a make_pkg.sh file and add it to build_platform_packages.sh.

Review URL: http://codereview.chromium.org/525030
2010-01-05 20:37:35 +00:00
Sam Leffler
fae2db8c2d rename connman and move it to it's own repo
Review URL: http://codereview.chromium.org/525015
2010-01-04 16:06:33 -08:00
David McMahon
de3f4d64b4 Fix bug introduced by http://codereview.chromium.org/520004 in archive_build.sh step.
Review URL: http://codereview.chromium.org/525014
2010-01-04 15:30:13 -08:00
David McMahon
10bb453c0f Fix bug introduced by http://codereview.chromium.org/520004 in archive_build.sh step. 2010-01-04 15:22:21 -08:00
David McMahon
46607f063a Merge branch 'master' of ssh://chromiumos-git/chromeos 2010-01-04 15:17:05 -08:00
Daniel Erat
afc9c8d0b9 Make image_to_usb.sh warn if given a partition.
Review URL: http://codereview.chromium.org/522014
2009-12-27 17:55:29 -08:00
David McMahon
d2b224e41b Merge branch 'master' of ssh://chromiumos-git/chromeos 2009-12-23 17:30:28 -08:00
tedbo
6fd336afe2 Moved debootstrap phase from build_image.sh to install_packages.sh.
This puts all package installation for the rootfs in one place. It
also makes it so that you can run install_packages.sh --root="foo"
outside of the build_image.sh script if you want to test something
without going through the full image build. With this change
build_image basically:
 - Sets up a loopback mounted rootfs
 - Calls install_packages.sh on rootfs
 - Calls customize_rootfs on rootfs
 - Makes the rootfs bootable

Review URL: http://codereview.chromium.org/520004
2009-12-23 15:59:37 -08:00
David McMahon
42cd589a18 Merge branch 'master' of ssh://chromiumos-git/chromeos 2009-12-23 14:37:32 -08:00
tedbo
551a0d0278 Fix issue where debconf was asking about the kernel config.
The chroot's apt.conf.d has a debconf file which tells apt
to run dpkg-preconfigure on all packages before installing.
We don't want to do this, especially with an automated build.
This CL changes the apt config used by install_packages.sh to
be self-contained and skip including the default configs by
using the APT_CONFIG evnironement variable.

The CL also cleans up some of the apt command lines as well
as getting rid of some ugly "$ROOT_FS_DIR/..".

Review URL: http://codereview.chromium.org/522003
2009-12-23 13:01:00 -08:00
David McMahon
f8b5b4bdf2 Merge branch 'master' of ssh://chromiumos-git/chromeos 2009-12-23 12:34:45 -08:00
Daniel Erat
54fd4a350f Make more build scripts barf when run as root.
Review URL: http://codereview.chromium.org/518004
2009-12-23 12:15:23 -08:00
Yusuke Sato
24f6456a2c Adding third_party/ibus-hangul/ to the Chromium OS build.
ibus-hangul provides an input method for Korean.

- third_party/ibus-hangul/libhangul_0.0.10-1.diff.gz
- third_party/ibus-hangul/libhangul_0.0.10.orig.tar.gz

These files are source package of libhangul for Ubuntu Lucid (10.04 LTS) at http://packages.ubuntu.com/en/lucid/libhangul0-data.
Since Karmic's libhangle (0.0.9) is too old to build ibus-hangul trunk, we'll build libhangul packages ourselves.

- third_party/ibus-hangul/make_pkg.sh

This script first builds and installs libhangul debian packages, then builds ibus-hangul.

- third_party/ibus-hangul/ibus-hangul_1.2.0.20090617-2.diff.gz

Copied from the Ubuntu Karmic's ibus-m17n package just like as third_party/clutter/clutter-1.0_1.0.4-0ubuntu1.diff.gz.

- third_party/ibus-hangul/ibus-hangul_remove_python_deps.diff

Patch for third_party/ibus-hangul/debian/rules which removes setup tools written in Python from the ibus-hangul debian package.

Review URL: http://codereview.chromium.org/501150
2009-12-24 00:29:21 +09:00
Yusuke Sato
fbf8a99ab7 Adding third_party/ibus-m17n/ to the Chromium OS build.
ibus-m17n provides input method engines for many languages such as Thai.

- third_party/ibus-m17n/make_pkg.sh

Copied from third_party/ibus-anthy/make_pkg.sh, then slightly modified.

- third_party/ibus-m17n/ibus-m17n_1.2.0.20090930-1.diff.gz

Copied from the Ubuntu Karmic's ibus-m17n package just like as third_party/clutter/clutter-1.0_1.0.4-0ubuntu1.diff.gz.

Review URL: http://codereview.chromium.org/502089
2009-12-23 23:42:12 +09:00
tedbo
2cfa925e59 Add --no-install-recommends when we install most of our components.
Given this we need to explicitly install xterm and lsof, but
otherwise it is a net reduction of about 45 packages, which is nice.

Review URL: http://codereview.chromium.org/515009
2009-12-22 21:44:28 -08:00
tedbo
4f3c95b241 Add a helper script to be able to run "apt-get install" without running
the maintainer scripts on installed packages.

I've experimented with using this in the install_packages.sh that
runs from outside the targetfs. It is able to extract packages and
make them appear to be installed (for the most part) without
running the maintainer scripts.

This will allow us to start figuring out what problems we will
have when we no longer run the maintainer scripts.

In the long run it would be nice to add an option to "dpkg" to
skip maintainer scripts.

Review URL: http://codereview.chromium.org/517004
2009-12-22 21:23:05 -08:00
tedbo
06c4dcf4c9 Change install_packages.sh to run from outside of the target rootfs
and install debs into the target rootfs.

This will still run the maintainer scripts, but it is a step in
the right direction to being able to create a cross-compiled image.
This will allow us to experiment with disabling the maintainer
scripts and attempt to get that working. It also makes it easier
to modify the install_packages script since it now has access to
shflags and the source tree properly.

This CL also cleans up stuff doing in build_image.sh to bind mount
the trunk into the target rootfs, set up packages for install there,
etc.

The next step is to experiment with disabling maintainer scripts.
One possible way to do that would be to put a shim in place of dpkg
so that when apt calls dpkg it install a package we call dpkg-deb
with a simple unpack instead. This would allow us to continue to
use the good nice features that apt provides.

Review URL: http://codereview.chromium.org/517003
2009-12-22 21:20:24 -08:00
Daniel Erat
4112bcd7f9 Clean up chromiumos-build build files and update .gitignore.
Review URL: http://codereview.chromium.org/516004
2009-12-22 18:22:01 -08:00
Ken Mixter
4d8e50a4de Create a method to push an image to a live running Chromium OS machine provided you have root ssh access with a local private key (which is the case for test builds). Updates the running instance and reboots it.
Review URL: http://codereview.chromium.org/512003
2009-12-22 17:24:49 -08:00