• Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login
UBports Robot Logo UBports Forum
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Register
  • Login

Ubports Recovery status.

Scheduled Pinned Locked Moved Porting
recovery
5 Posts 1 Posters 2.4k Views 2 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • A Offline
      apple.muncy
      last edited by apple.muncy 17 Nov 2016, 14:49

      Ubports Recovery is like a good habit. As soon as we get it working, the sooner we all benefit.
      Currently it has some nice features valuable to developers. In particular, viewing log files.

      But some features that install methods need are missing. "system-image-upgader" is needed by "ubuntu-device-flash".
      Another install method "rootstock-ng" also relies on a working recovery.
      I propose a ubports wide effort to improve Ubports recovery.

      1 Reply Last reply Reply Quote 0
      • A Offline
        apple.muncy
        last edited by apple.muncy 17 Nov 2016, 20:19

        Why is the 3rd
        LOCAL_MODULE_TAGS
        not working?

        This is from the recovery Android.mk file

        `# make_ext4fs
        include $(CLEAR_VARS)
        LOCAL_MODULE := libmake_ext4fs_static
        LOCAL_C_INCLUDES += external/lz4/lib
        **LOCAL_MODULE_TAGS := optional**
        LOCAL_CFLAGS := -Dmain=make_ext4fs_main
        LOCAL_SRC_FILES := ../../system/extras/ext4_utils/make_ext4fs_main.c
        include $(BUILD_STATIC_LIBRARY)
        
        include $(CLEAR_VARS)
        LOCAL_MODULE := system-image-upgrader
        **LOCAL_MODULE_TAGS := eng** 
        LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
        LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
        LOCAL_SRC_FILES := $(LOCAL_MODULE)
        include $(BUILD_PREBUILT)
        
        include $(CLEAR_VARS)
        LOCAL_MODULE := replace-system
        ***LOCAL_MODULE_TAGS := optional***
        LOCAL_MODULE_CLASS := RECOVERY_EXECUTABLES
        LOCAL_MODULE_PATH := $(TARGET_RECOVERY_ROOT_OUT)/sbin
        LOCAL_SRC_FILES := $(LOCAL_MODULE)
        include $(BUILD_PREBUILT)
        
        1 Reply Last reply Reply Quote 0
        • A Offline
          apple.muncy
          last edited by 28 Nov 2016, 12:10

          my commit to fix the missing "system-image-upgader" and others.

          Jenkins output seems to indict the commit has been propagated to Jenkins : )

          Using:
          $ubuntu-device-flash -v --server=http://system-image.ubports.com touch --channel=ubuntu-touch/devel_rc-proposed --device=hammerhead --bootstrap
          to install. It grabs verion 152 the fails with the usual

          error pushing: failed to copy '/home/apple/.cache/ubuntuimages/ubuntu-touch/devel_rc-proposed/hammerhead/version-152.tar.xz' to '/cache/recovery/': Is a directory
          

          Eventually I may breakdown and look inside the source code of ubuntu-device-flash to find an understanding of this error. That would be the equivalent of reading the instructions before one starts to assemble something : )

          So what seems to work is

          $adb shell
          # mkdir recovery
          # mount -a
          # exit
          

          then /cache/recovery is there.
          So reissue

          $ ubuntu-device-flash -v --server=http://system-image.ubports.com touch --channel=ubuntu-touch/devel_rc-proposed --device=hammerhead
          

          without --bootstrap this time.

          2016/11/28 05:36:54 Device is |hammerhead|
          2016/11/28 05:36:55 Flashing version 152 from ubuntu-touch/devel_rc-proposed channel and server http://system-image.ubports.com to device hammerhead
          2016/11/28 05:36:55 Start pushing /home/apple/.cache/ubuntuimages/pool/keyring-f812366ff5018823acd3918f65837f7ade9679431e6e5ca6627a4e48f8dd643b.tar.xz to device
          2016/11/28 05:36:55 Start pushing /home/apple/.cache/ubuntuimages/ubuntu-touch/devel_rc-proposed/hammerhead/version-152.tar.xz to device
          2016/11/28 05:36:55 Done pushing /home/apple/.cache/ubuntuimages/pool/keyring-f812366ff5018823acd3918f65837f7ade9679431e6e5ca6627a4e48f8dd643b.tar.xz to device
          2016/11/28 05:36:55 Done pushing /home/apple/.cache/ubuntuimages/ubuntu-touch/devel_rc-proposed/hammerhead/version-152.tar.xz to device
          2016/11/28 05:36:55 Start pushing /home/apple/.cache/ubuntuimages/gpg/image-signing.tar.xz to device
          2016/11/28 05:36:55 Start pushing /home/apple/.cache/ubuntuimages/gpg/image-master.tar.xz to device
          2016/11/28 05:36:56 Start pushing /home/apple/.cache/ubuntuimages/pool/device-c4aa19e7f7237e8636330c3a6b36f8363b11e884eb22123eb6f33b97dc2ce57c.tar.xz to device
          2016/11/28 05:36:56 Done pushing /home/apple/.cache/ubuntuimages/gpg/image-signing.tar.xz to device
          2016/11/28 05:36:56 Done pushing /home/apple/.cache/ubuntuimages/gpg/image-master.tar.xz to device
          2016/11/28 05:36:58 Start pushing /home/apple/.cache/ubuntuimages/pool/ubuntu-7ba0c0d2e424dfa87d3905dae197ab4abe626372cbcad74f8d8a3f808beb4cf6.tar.xz to device
          2016/11/28 05:37:04 Done pushing /home/apple/.cache/ubuntuimages/pool/device-c4aa19e7f7237e8636330c3a6b36f8363b11e884eb22123eb6f33b97dc2ce57c.tar.xz to device
          2016/11/28 05:37:33 Done pushing /home/apple/.cache/ubuntuimages/pool/ubuntu-7ba0c0d2e424dfa87d3905dae197ab4abe626372cbcad74f8d8a3f808beb4cf6.tar.xz to device
          2016/11/28 05:37:33 Created ubuntu_command: /home/apple/.cache/ubuntuimages/ubuntu_commands548410990
          2016/11/28 05:37:33 Rebooting into recovery to flash
          

          But reboots to old system : (

          Investigation continues...

          1 Reply Last reply Reply Quote 0
          • A Offline
            apple.muncy
            last edited by apple.muncy 28 Nov 2016, 16:42

            Digging into system-image-upgrader I find errors that maybe caused by busybox limitations.
            So far this code breaks

            # Unpacking
                TMPDIR=$(mktemp -d /tmp/system-image/tmp.XXXXX)
            cd $TMPDIR
            

            But the following works.

             # Unpacking
                TMPDIR=$(mktemp -dt -p /tmp/system-image/ tmp.XXXXXXXXXX)
                cd $TMPDIR
            

            Next error is in with a file not found error.

            echo "Processing the command file" >> /cache/system-image-upgrader.log
            while read line
            do
            .
            .
            .
            done < $COMMAND_FILE
            
            

            Edit- My bad. It is that this file not found error is because I ran this without using full paths. system-image-flash did finish with the one edit to mktemp line.

            But unfortunately resulting system of hammerhead devel_rc-proposed did not start.

            1 Reply Last reply Reply Quote 0
            • A Offline
              apple.muncy
              last edited by apple.muncy 12 Mar 2016, 08:24 1 Dec 2016, 16:56

              I'm adding a few links here so I and others can find them easily.

              Ubuntu Recovery partition specs
              Touch/Specs/RecoveryPartition last edited 2013-06-14

              upgrader
              ImageBasedUpgrades/Upgrader l st edited 2014-07-04

              After more digging I've come to the conclusion that Edify stuff is mostly dead code. I'll leave these two links until I'm certain.

              https://wiki.cyanogenmod.org/w/Doc:_About_Edify

              (http://forum.xda-developers.com/wiki/Edify_script_language)

              I have been working under the assumption that
              system-image-upgader
              Was written by Marius become it seemed to come from nowhere in the ubports git history.

              In reality launchpad does reveal its arrival three years ago.
              author Stéphane Graber stgraber@ubuntu.com
              Tue, 9 Jul 2013 15:00:00 -0500 (17:00 -0300)
              committer Gerrit Code Review gerrit2@hesperidium.canonical.com
              Fri, 7 Feb 2014 09:03:14 -0500 (14:03 +0000)

              It's interesting to note that six months seems to have passed before it was accepted. It then goes through much development in 2014.

              1 Reply Last reply Reply Quote 0
              • First post
                Last post