Commit Graph

10 Commits

Author SHA1 Message Date
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
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
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
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
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
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
tedbo
d3ab617757 Remove pybootchartgui since it messes up our repo.
The mirroring process for the internal package repository puts
all mirrored packages into "main" for some reason. Since the Karmic
version of pybootchartgui is in "universe", when we use the internal
repository of packages we need to reference it based on "universe".
However, the external repo will have it at "main". We can't have it
both ways, so we'll need to give up on pybootchartgui until after we
fix up the repo mirroing.

Review URL: http://codereview.chromium.org/509010
2009-12-21 11:06:04 -08:00
tedbo
e016b13fe5 Install pybootchartgui so that we can get boot chart pngs on the target machine
again.

Note: This change will require you to rebuild your repo.

Review URL: http://codereview.chromium.org/502083
2009-12-18 19:08:16 -08:00
Bill Richardson
d26b8abee2 Here's the upgrade-everything-to-Karmic change. As promised, some fairly
important things break.

Here are some of the more noticable problems:

* The Karmic xscreensaver is newer than ours, so we're pulling and invoking
  the upstream version instead. It will prompt you for the "chronos"
  password but it really wants the password you used to log in. Or hit
  CTRL-ALT-F2, log in with chronos and "killall xscreensaver".

* I had to bump the rootfs size from 950M to 1024M to make room for
  everything (most likely xscreensaver).

* WiFi isn't working. No clue why not.

* The list of packages installed on the run-time image are different, almost
  certainly due to changes in the upstream dependencies. That may or may not
  have anything to do with the known failures.

That said, if you use a wired internet connection, you can log in and browse
the web, suspend, etc. and it doesn't crash.

FWIW, upgrading to Karmic causes these packages to be removed from the
run-time image:

  acpi
  cron
  gcj-4.4-jre-lib
  gob2
  icedtea-6-jre-cacao
  libcloog-ppl0
  libclutter-0.9-0
  libgmpxx4ldbl
  libmysqlclient15off
  libpcsclite1
  libpolkit-gobject-1-0
  libppl-c2
  libppl7
  libreadline5
  python-pkg-resources
  python-setuptools
  swig
  wpasupplicant

These packages are added:

  arora
  dictionaries-common
  hdparm
  ibus
  ibus-anthy
  ibus-chewing
  ibus-gtk
  insserv
  libbsd0
  libc-bin
  libclutter-1.0-0
  libcroco3
  libdrm-radeon1
  libgsf-1-114
  libgsf-1-common
  libibus1
  libjpeg-progs
  libmysqlclient16
  libpolkit-gobject-1-0
  libreadline6
  librsvg2-2
  librsvg2-common
  libx86-1
  miscfiles
  mountall
  pm-utils
  powermgmt-base
  python-ibus
  python-rsvg
  radeontool
  sash
  vbetool
  xscreensaver
  xscreensaver-data
  xserver-xorg-core
  xserver-xorg-input-vmmouse
  xserver-xorg-video-intel

Review URL: http://codereview.chromium.org/501071
2009-12-17 11:15:41 -08:00
tedbo@google.com
c0c8c69143 Split out installation of packages from customize_rootfs into a separate script.
The build_image script now calls install_packages.sh followed
by customize_rootfs.sh.

The current system installs packages and performs customization
fixups from within the rootfs it is building. In order to
cross-build properly we'll need to do these steps from outside
of the root. Splitting package installation and rootfs customization
will make it easier to do this. A follow-on change will modify
customize_rootfs to run from outside of the rootfs.

Review URL: http://codereview.chromium.org/414051

git-svn-id: svn://chrome-svn/chromeos/trunk@300 06c00378-0e64-4dae-be16-12b19f9950a1
2009-11-20 22:15:58 +00:00