[ostree] yocto: Various misc cleanups to install scripts



commit 82847bba244ac1faff44704b78a8ff9e227b4fc5
Author: Colin Walters <walters verbum org>
Date:   Fri Feb 24 15:18:51 2012 -0500

    yocto: Various misc cleanups to install scripts
    
    Add a new gnomeos-update-branches.sh script which just does the work
    of checking out roots.  This is useful if you e.g. make a local
    modification.
    
    Rename scripts to gnomeos-*.sh consistently.
    
    Tweak gnomeos-clone-qemu.sh script to support command line arguments
    (again).

 gnomeos/yocto/gnomeos-clone-qemu.sh                |    5 ++-
 gnomeos/yocto/gnomeos-install.sh                   |   24 ++++--------
 .../yocto/{ostree-setup.sh => gnomeos-setup.sh}    |    0
 gnomeos/yocto/gnomeos-update-branches.sh           |   39 ++++++++++++++++++++
 gnomeos/yocto/make-gnomeos-fs.sh                   |   17 ---------
 5 files changed, 50 insertions(+), 35 deletions(-)
---
diff --git a/gnomeos/yocto/gnomeos-clone-qemu.sh b/gnomeos/yocto/gnomeos-clone-qemu.sh
index 4e893d0..e87332e 100755
--- a/gnomeos/yocto/gnomeos-clone-qemu.sh
+++ b/gnomeos/yocto/gnomeos-clone-qemu.sh
@@ -79,7 +79,7 @@ if ! test -d ostree; then
     $SRCDIR/ostree-setup.sh $(pwd)/ostree
 fi
 
-rsync -a -H -v ${WORKDIR}/repo ${WORKDIR}/modules ${WORKDIR}/gnomeos-3.4-* ./ostree
+rsync -a -H -v ${WORKDIR}/repo ${WORKDIR}/current ${WORKDIR}/modules ${WORKDIR}/gnomeos-3.4-* ./ostree
 
 current_uname=$(uname -r)
 
@@ -89,8 +89,9 @@ sync
 umount fs
 rmdir fs
 
+ARGS="$@"
 if ! echo $ARGS | grep -q 'ostree='; then
-    ARGS="ostree=${BRANCH_PREFIX}runtime-current $ARGS"
+    ARGS="ostree=current $ARGS"
 fi
 ARGS="rd.plymouth=0 root=/dev/sda $ARGS"
 KERNEL=/boot/vmlinuz-${current_uname}
diff --git a/gnomeos/yocto/gnomeos-install.sh b/gnomeos/yocto/gnomeos-install.sh
index 051b5d6..d66c16f 100755
--- a/gnomeos/yocto/gnomeos-install.sh
+++ b/gnomeos/yocto/gnomeos-install.sh
@@ -45,7 +45,7 @@ cd /ostree
 if ! test -d /ostree/repo/objects; then
     mkdir -p /ostree
 
-    $SRCDIR/ostree-setup.sh /ostree
+    $SRCDIR/gnomeos-setup.sh /ostree
 fi
 
 ostree --repo=repo remote add origin http://ostree.gnome.org/repo
@@ -54,17 +54,7 @@ ostree-pull --repo=repo origin gnomeos-3.4-i686-devel
 
 uname=$(uname -r)
 
-for branch in runtime devel; do
-    rev=$(ostree --repo=$(pwd)/repo rev-parse ${BRANCH_PREFIX}${branch});
-    if ! test -d ${BRANCH_PREFIX}${branch}-${rev}; then
-        ostree --repo=repo checkout ${rev} ${BRANCH_PREFIX}${branch}-${rev}
-        ostbuild chroot-run-triggers ${BRANCH_PREFIX}${branch}-${rev}
-    fi
-    rm -f ${BRANCH_PREFIX}${branch}-current
-    ln -s ${BRANCH_PREFIX}${branch}-${rev} ${BRANCH_PREFIX}${branch}-current
-done
-rm -f current
-ln -s ${BRANCH_PREFIX}runtime-current current
+$SRCDIR/gnomeos-update-branches.sh
 
 cd -
 
@@ -87,8 +77,9 @@ fi
 cp -ar /lib/modules/${uname} /ostree/modules/${uname}
 
 initrd_name=initramfs-ostree-${uname}.img
-initrd_tmpdir=$(mktemp -d '/tmp/gnomeos-dracut.XXXXXXXXXX')
-linux-user-chroot \
+if ! test -f "/boot/${initrd_name}"; then
+    initrd_tmpdir=$(mktemp -d '/tmp/gnomeos-dracut.XXXXXXXXXX')
+    linux-user-chroot \
     --mount-readonly / \
     --mount-proc /proc \
     --mount-bind /dev /dev \
@@ -97,5 +88,6 @@ linux-user-chroot \
     --mount-bind /ostree/modules /lib/modules \
     /ostree/${BRANCH_PREFIX}devel-current \
     dracut -f /tmp/${initrd_name} "${uname}"
-mv "${initrd_tmpdir}/${initrd_name}" "/boot/${initrd_name}"
-rm -rf "${initrd_tmpdir}"
+    mv "${initrd_tmpdir}/${initrd_name}" "/boot/${initrd_name}"
+    rm -rf "${initrd_tmpdir}"
+fi
diff --git a/gnomeos/yocto/ostree-setup.sh b/gnomeos/yocto/gnomeos-setup.sh
similarity index 100%
rename from gnomeos/yocto/ostree-setup.sh
rename to gnomeos/yocto/gnomeos-setup.sh
diff --git a/gnomeos/yocto/gnomeos-update-branches.sh b/gnomeos/yocto/gnomeos-update-branches.sh
new file mode 100755
index 0000000..eb73d48
--- /dev/null
+++ b/gnomeos/yocto/gnomeos-update-branches.sh
@@ -0,0 +1,39 @@
+#!/bin/sh
+#
+# Copyright (C) 2011,2012 Colin Walters <walters verbum org>
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the
+# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
+# Boston, MA 02111-1307, USA.
+
+set -e
+set -x
+
+ARCH=i686
+BRANCH_PREFIX="gnomeos-3.4-${ARCH}-"
+
+test -d repo || exit 1
+
+for branch in runtime devel; do
+    rev=$(ostree --repo=$(pwd)/repo rev-parse ${BRANCH_PREFIX}${branch});
+    if ! test -d ${BRANCH_PREFIX}${branch}-${rev}; then
+        ostree --repo=repo checkout ${rev} ${BRANCH_PREFIX}${branch}-${rev}
+        ostbuild chroot-run-triggers ${BRANCH_PREFIX}${branch}-${rev}
+        cp -ar /lib/modules/${uname} ${BRANCH_PREFIX}${branch}-${rev}/lib/modules/${uname}
+    fi
+    ln -sf ${BRANCH_PREFIX}${branch}-${rev} ${BRANCH_PREFIX}${branch}-current.new
+    mv ${BRANCH_PREFIX}${branch}-current{.new,}
+done
+ln -sf ${BRANCH_PREFIX}runtime-current current.new
+mv current.new current



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