UBports Robot Logo UBports Forum
    • 版面
    • 最新
    • 標籤
    • 熱門
    • 使用者
    • 群組
    • 搜尋
    • 註冊
    • 登入

    [Porting] Call for Testers

    已排程 已置頂 已鎖定 已移動 Google Pixel and XL
    122 貼文 38 Posters 74.3k 瀏覽 15 Watching
    正在載入更多貼文
    • 從舊到新
    • 從新到舊
    • 最多點贊
      回覆
      • 在新貼文中回覆
      登入後回覆
      此主題已被刪除。只有擁有主題管理權限的使用者可以查看。
      • flohackF 線上
        flohack
        最後由 編輯

        Alright guys I am working on the new instructions, this time in a pastebin, since the pad was destroyed over time: https://pastebin.com/EFLhqfLv

        And this is my upload folders for marlin and sailfish: http://twoot.bin.org.in/nextcloud/index.php/s/iAZDDkRYYAiN6Kk

        I wil refresh the images there tonight hopefully 😉

        My languages: 🇦🇹 🇩🇪 🇬🇧 🇺🇸

        khimarosK 1 條回覆 最後回覆 回覆 引用 0
        • khimarosK 離線
          khimaros @flohack
          最後由 編輯

          @flohack looking at the nextcloud instance, the newest images are from 4 months back. are those the latest ones?

          flohackF 1 條回覆 最後回覆 回覆 引用 0
          • flohackF 線上
            flohack @khimaros
            最後由 編輯

            @khimaros No, will provide newer ones ^^

            My languages: 🇦🇹 🇩🇪 🇬🇧 🇺🇸

            khimarosK 2 條回覆 最後回覆 回覆 引用 0
            • khimarosK 離線
              khimaros @flohack
              最後由 編輯

              @flohack thank you! i was also able to produce a working droidian install on sailfish using your work as a base. really grateful for your efforts here.

              1 條回覆 最後回覆 回覆 引用 0
              • khimarosK 離線
                khimaros @flohack
                最後由 編輯

                @flohack actually, would you be willing to teach us how to fish? is there a way we can build or extract these vendor.img and system.img ourselves?

                is the halium-boot.img the same as from https://ci.ubports.com/job/UBportsCommunityPortsJenkinsCI/job/ubports%252Fcommunity-ports%252Fjenkins-ci%252Fmarlin-sailfish/job/main/ ? is the vendor.img in halium_sailfish.tar.xz the correct one?

                flohackF 1 條回覆 最後回覆 回覆 引用 0
                • flohackF 線上
                  flohack @khimaros
                  最後由 編輯

                  @khimaros yes our CI builds already all the necessary parts in this job. vendor.img and system.img are Androis sparse files. So you need to convert them first, then you can mount them as an ext4 image.

                  My languages: 🇦🇹 🇩🇪 🇬🇧 🇺🇸

                  khimarosK 2 條回覆 最後回覆 回覆 引用 0
                  • khimarosK 離線
                    khimaros @flohack
                    最後由 編輯

                    此回覆已被刪除!
                    1 條回覆 最後回覆 回覆 引用 0
                    • khimarosK 離線
                      khimaros @flohack
                      最後由 編輯

                      @flohack thank you. the system.img doesn't seem to be present, but there is a system/ directory. is it as simple as creating an ext4 filesystem from that tree of files?

                      also the boot.img provided there doesn't seem to honor break= or bootmode= kernel command line args. does it need to be built with special flags to enable that?

                      1 條回覆 最後回覆 回覆 引用 0
                      • khimarosK 離線
                        khimaros
                        最後由 編輯

                        i can produce a working ubtouch install by using the images you have linked from your nextcloud.

                        i was able to build halium-9.0 from source by emulating some steps in https://gitlab.com/ubports/community-ports/jenkins-ci/halium-build-tools/-/tree/main/ -- if i push the halium-boot.img and vendor.img produced by that build, everything continues working.

                        if i push the latest android-rootfs.img from Jenkins-CI to /data/, the system also continues working.

                        if i push the latest vendor.img from Jenkins-CI, with or without the latest android-rootfs.img, the WiFi and Bluetooth break but the system otherwise continues working, including mobile data.

                        if i flash the latest Jenkins-CI boot.img to that installation, the device will then only boot into the recovery mode. i believe there is a compatibility issue with the "combined" boot image produced here and it might be worth changing the 4th parameter in the Jenkinsfile here to false: https://gitlab.com/ubports/community-ports/jenkins-ci/marlin-sailfish/-/blob/main/Jenkinsfile#L2

                        i'm still not totally clear on how you are producing the system.imgthat you have in your nextcloud.

                        1 條回覆 最後回覆 回覆 引用 0
                        • flohackF 線上
                          flohack
                          最後由 編輯

                          Ok so here are the usual steps that we are doing for UT to boot and be installable later with a) our installer b) with the OTA system-image upgrader inside the device:

                          • First, we need to decide:
                            -- Is the device an slotted device (with A/B partitions and bootloader able to change slots)
                            -- Or does it use only the traditional partition layout? slotted devices were only around I thin for Android between 8 and 9. Whats important is the factory version that the device came with. If, for example, a device is later upgraded to Android 9, but was shipped with 7.1, it will not be slotted.
                          • For a slotted device, we build the kernel with mka bootimage
                          • For a traditional device we build it with mka halium-boot
                          • But: Both ways just produce a boot.img file in the $OUT directory of the Android build
                          • Next: Some devices need a DTBO image, too. You can always try to mka dtboimage and see if that yields an image file called dtbo.img. If so, this needs to be flashed together with the corresponding boot.img from the same build. They need to match, and failure to do so can create bootloops or stuck devices.
                          • Next: Some devices using verity have signed partitions, and any attempt to mount them will fail if the kernel detects that the partition has been tampered with. So, try to build mka vbmetaimage - if that yields a vbmeta.img file in the $OUT folder, this needs to be flashed one time with fastboot --disable-verification flash vbmeta vbmeta.img to disable verity.
                          • Now comes finally system image: We just build mka systemimage and this is the usual make target for what LineageOS is doing, with some changes by Halium and some patches. Nothing special here.
                          • The created system.img file from $OUT folder is an Android sparse partition image, not ext4, and so it cannot be mounted directly. This will be converted by installer and OTA updater, but for development purposes this is not usable directly
                          • Rather we use halium-install script or replace-android-image script to make a conversion to an ext4 image.
                          • Our CI builds all of those targets, tars the results up and publishes the artifacts as you already found out
                          • Our system-image server combines that tarball with the rootfs tarball to form another archive which can be downloaded and extracted for installation
                          • Now, for installation, 2 ways are possible:
                            -- Halium install method: rootfs.img and either system.img or android-rootfs.img live as image files side-by-side in the userdata partition (usually /data)
                            -- rootfs.img is extracted into system partition /usually /system or /system_root) and the system.img or android-rootfs.img is placed inside this partition into /var/lib/lxc/android
                          • Both boot.img or halium-boot.img will determine the layout and mount the images accordingly (some devices will need a datapart= kernel cmdline parameter to find data partition)
                          • If the Android system requires a system-as-root layout (And also Halium 9 requires this currently), you need to build your system image with BOARD_BUILD_SYSTEM_ROOT_IMAGE := true and then name it android-rootfs.img to indicate its system-as-root.
                            TLDR; I produced the system.img like described above, on my local PC 🙂

                          My languages: 🇦🇹 🇩🇪 🇬🇧 🇺🇸

                          KenedaK 1 條回覆 最後回覆 回覆 引用 4
                          • KenedaK 離線
                            Keneda @flohack
                            最後由 編輯

                            @flohack
                            All in the details, wow 😮

                            2015-2023 : Meizu MX4 ☠️⚰️✝️
                            2023-2024 : Nexus 5 ☠️⚰️✝️
                            2024-***** : FPOS Fairphone 5
                            🇲🇫🇬🇧

                            1 條回覆 最後回覆 回覆 引用 0
                            • D 離線
                              Dasein
                              最後由 編輯

                              Currently attempting to use other distros/OS on Marlin, it's been tricky through fastboot & twrp but despite me messing around with both a/b partitions... I managed to just flash the original image again

                              It's a treble compliant device with latest update being Android 10, is there anything that can simply be flashed from twrp? I don't mind wiping the system partition from both slots. My phone has a faulty battery anyway and im pretty much fine with the risks 👍

                              flohackF 1 條回覆 最後回覆 回覆 引用 0
                              • flohackF 線上
                                flohack @Dasein
                                最後由 編輯

                                @dasein No unfortunately the last situation is still that our rootfs + system image combo does not fit onto 2.5GB system partition and that prevents further porting of the device. Unless we invent a kind of split boot mode this is a severe blocker.

                                It might be therefore that this port never reaches installer and stable state.

                                My languages: 🇦🇹 🇩🇪 🇬🇧 🇺🇸

                                1 條回覆 最後回覆 回覆 引用 0
                                • C 離線
                                  crazyc4t
                                  最後由 Keneda 編輯

                                  Hello everyone! Am new to the forum, my current phone is the Pixel Xl (marlin) since my primary phone was damaged, am using the pixel XL with lineage OS but I really want to try out ubuntu touch! I don't use my phone much so I will not have a problem with some things not working, Am going to install ubuntu touch this evening, and I'll let you know how it goes! Let me know if I can help with something.

                                  • Crazyc4t

                                  My languages: 🇪🇸 🇺🇸

                                  KenedaK 1 條回覆 最後回覆 回覆 引用 0
                                  • KenedaK 離線
                                    Keneda @crazyc4t
                                    最後由 Keneda 編輯

                                    @crazyc4t
                                    Please do not post links like that if not relative to the topic.
                                    If you have a personnal website to share, use your profile settings, there is a specific field for that.

                                    And by the way, welcome on the ubports forums 😉

                                    2015-2023 : Meizu MX4 ☠️⚰️✝️
                                    2023-2024 : Nexus 5 ☠️⚰️✝️
                                    2024-***** : FPOS Fairphone 5
                                    🇲🇫🇬🇧

                                    1 條回覆 最後回覆 回覆 引用 0
                                    • S 離線
                                      sansgaming
                                      最後由 sansgaming 編輯

                                      hey i have a pixel xl and i would like to help

                                      1 條回覆 最後回覆 回覆 引用 0
                                      • flohackF 線上
                                        flohack
                                        最後由 編輯

                                        Unfortunately I have to use my time for UBports elsewhere currently, so not much progress. I will roll a current build manually for all of you who want to try it out again.

                                        Ping me in a week if I didn´t ⛏

                                        My languages: 🇦🇹 🇩🇪 🇬🇧 🇺🇸

                                        1 條回覆 最後回覆 回覆 引用 0
                                        • K 離線
                                          kuzco @flohack
                                          最後由 編輯

                                          @flohack Hello! Thank you for all your work on this. I was able to get to the halium-install-standalone.sh stage but the link to the images appears to be broken (website won't load because of PHP version issues). Might I ask for another way to get at those files? Maybe we can put them on GitHub or something? Thanks again!

                                          1 條回覆 最後回覆 回覆 引用 0
                                          • L 離線
                                            lordzeed
                                            最後由 編輯

                                            I would like to download some version of Ubuntu touch for the pixel I love your work

                                            1 條回覆 最後回覆 回覆 引用 0
                                            • W 離線
                                              wllpwr
                                              最後由 編輯

                                              Is this port dead?

                                              O 1 條回覆 最後回覆 回覆 引用 0
                                              • 第一個貼文
                                                最後的貼文