Testing out jhbuild



To me, the criterion for success is that someone can start from scratch,
without knowing much about Linux development and have a working build
within an hour or so, without having to babysit it. Any sort of
babysitting makes things much longer for everybody, and basically
impossible for the novice.

Here are notes from trying a pretty much from-scratch build of
meta-gnome-core-shell. (I made an effort to remove as many
development packages as possible from my system before doing
this.)

* I'm a bit skeptical of the existence of meta-gnome-core-shell,
  which, as I understand it, is supposed to contain the set of things
  that need to be built for gnome-shell to work at runtime - so,
  e.g., dconf is just a run-time dependency, since the build-time
  depdendency is just gsettings. But what if I wanted to hack on
  nautilus or gnome-control-center rather than gnome-shell? Shouldn't we
  shoot for:

   jhbuild build <X>
   jhbuild run <X>

  working?
  
* I think we need to work on our setup process; if you get jhbuild
  installed, typing jhbuild produces:

   jhbuild: could not load config file, /home/otaylor/.jhbuildrc is
missing

  With no help about how to create it. You have figure out to go to
  the jhbuild source tree and copy sample.jhbuildrc into the right
  place. Shouldn't we offer to create a .jhbuildrc if it doesn't
  exist or alternatively, just run without one?

* The defaults for checkout and installation directory are:

   checkout - ~/checkout/gnome
   install - /opt/gnome

  these seem rather random and incoherent to me. Is there a reason
  to do the install into a system directory by default?

* Before I even tried to build, I ran a modified version of the
  gnome-shell build-setup script to install a number of system
  dependencies that I knew would cause failures. This made sure
  that the following packages were installed (on Fedora)

    binutils curl gcc gcc-c++ make  automake bison flex gettext git
    gperf libtool pkgconfig jasper-devel libffi-devellibjpeg-devel
    libpng-devel libtiff-devel mesa-libGL-devel pam-devel
    python-devel readline-devel libXdamage-devel
    icon-naming-utils libtool-ltdl-devel libvorbis-devel
    libusb1-devel cups-devel db4-devel  sane-backends-devel
    xcb-util-devel

* I then ran jhbuild sysdeps. When you just run jhbuild sysdeps
  and it displays a report, it really should make it clear that
  by running 'jhbuild sysdeps --install' it can install these
  system dependencies. It installed:

    libpulse dbus-1 nspr cairo dbus-glib-1 unique-3.0 mozjs185
    webkitgtk-3.0 libnl-1 libproxy-1.0 sqlite3 libxslt nss libdaemon
    libxml-2.0

* I still was missing quite a few packages needed for a successful
  build. Things I needed to install were:

  libffi-devel (glib)
  texinfo (libIDL)
  libcurl-devel (liboauth)
  openssl-devel (liboauth)
  libacl-devel (gudev)
  libudev-devel (gudev)
  libicu-devel (webkit)
  libXt-devel (webkit)
  libgdbm-devel (avahi)
  udisks-devel (gnome-disk-utility)
  wireless-tools-devel (NetworkManager)
  libuuid-devel (NetworkManager)
  ppp-devel (NetworkManager)
  libXtst-devel (mousetweaks)

* 99 modules

  *** Checking out gnome-common *** [1/99]

  (~44 for gnome-shell. 66 in main moduleset if I just list gnome-shell)

* Stuff I had to add


* #!$!@ update conflict in gdk-pixbuf

* http://live.gnome.org/Jhbuild

  Is far too detailed and text-y, and "you can do this or you can do
that"

  And probably should not recommend bootstrap under any circumstances

* Problems with result
  - Ugly cursors
  - Couldn't connect to GVC
  - Doesn't seem to be picking up appointments




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]