[ROM][10.0][OFFICIAL] LineageOS 17.1 for Wileyfox Swift

Search This thread

115ek

Senior Member
Jan 30, 2017
551
622
Your lineage-18.1 branches at your personal GitHub repos (crackling & msm8916) are up-to-date?

Is Bluetooth still broken at 18.1? I don't care about GApps anyways :D
Umm. I haven't done anything since january. Just added some instructions in the lineage wiki concerning the bootloader/firmware issues which lead to non-booting devices in rare cases.

But I ran a build today and uploaded it.
Bluetooth works. But the camera/flashlight is super laggy. It takes like ages for it to start. Once the camera app is started everything is fine, though.
I've got no clue what's wrong there. And unfortunately I also have less time to find it out.
 
  • Like
Reactions: killerbees19

petexd

Member
Dec 2, 2017
47
1
Is there any way to scrap visual voicemail? I can't have it on my system but every time I restart it checks with my provicer and I get 3 or 4 texts telling me I can't have it. I think I see where it is in the rom but I'm wary of deleting with out knowing for sure.
 

breversa

Senior Member
  • Mar 21, 2012
    401
    124
    i9100
    Samsung Galaxy Tab 3 10.1
    Last time I tried it worked. But you're right - the available space on /system is very rare. I already made some "hacks" to free up some space. You could try to overcome this by installing an older pico gapps package from here which is smaller. It'll update itself if you connect to a wifi network anyway.
    Another thing you could try is using FlameGapps. The final thing would be resizing the /system partition.
    In 2018, there was a way to resize the partitions of the Wileyfox Swift, but it's since apparently been taken down : see https://forum.xda-developers.com/t/rom-treble-project-treble-for-wileyfox-swift.3841262/

    Has anyone managed to keep a copy of the tool and associated instructions ?
     

    skm_1

    Member
    Apr 20, 2018
    11
    6
    For some months it was getting harder to update LineageOS 17.1; I would get the boot animation for a couple of minutes, then the phone would reboot into recovery (TWRP). I could get it to install after a couple of attempts, then it was 12 attempts, at which point I decided never to update it again, but last week I gave it another go (it's a spare phone anyway) and was back to rebooting into recovery. I assumed a hardware problem but mucked about with it anyway to try to install 18.1. In fact the problem was related to TWRP. When I flashed the LineageOS 17.1 recovery, both 17.1 and 18.1 installed and booted fine. I was even able flash TWRP again to put back the partition dumps I had taken while preparing for 18.1 and get the phone back the way it was, albeit with an up to date 17.1. After I had reflashed the proper Lineage recovery I even managed to update 17.1 to this weekend's build using the system updater.

    As for the 18.1 /system partition size issue, TWRP (plus parted and mkfs.ext4, and a blank ext4-formatted SD card) did at least allow me to tweak the partition sizes, which seems to work exactly as you would expect if you are reasonably familiar with using parted and dd. My phone isn't encrypted or I doubt I would have been able to use "tar cvpf" and later "tar xvpf" to dump and restore /data.
     

    breversa

    Senior Member
  • Mar 21, 2012
    401
    124
    i9100
    Samsung Galaxy Tab 3 10.1
    As for the 18.1 /system partition size issue, TWRP (plus parted and mkfs.ext4, and a blank ext4-formatted SD card) did at least allow me to tweak the partition sizes, which seems to work exactly as you would expect if you are reasonably familiar with using parted and dd.
    Wait… I understand that resizing /system is needed in order to Treble-ise the Wileyfox Swift.
    Does that mean that you've managed to do it ? Could you tell me how ?
     

    skm_1

    Member
    Apr 20, 2018
    11
    6
    Wait… I understand that resizing /system is needed in order to Treble-ise the Wileyfox Swift.
    Does that mean that you've managed to do it ? Could you tell me how ?
    Now, I only tried this because it was a spare phone and I was prepared to risk bricking it completely, but it went like this:
    Booted phone into TWRP (version 3.2.0.0, for the record) with a blank SD card installed, reformatted card as ext4 so I could dump large files onto it. Downloaded parted and mkfs.ext4, adb push'ed them into /sbin, then ran adb shell and chmod 755'ed /sbin/parted and /sbin/mkfs.ext4 so I could run them. Used "parted /dev/block/mmcblk0" to print out the current partition table using "unit s" and "p" so I could take a note of the starting and ending sectors. For me, the system partition started on sector 724064, recovery on 3869792, and userdata on 4568064 ending on 30535646. Then this:
    cd /data tar cvpf /sdcard1/data.tar . cd / umount /data umount /cache umount /sdcard dd if=/dev/block/mmcblk0p25 of=/sdcard1/system.part bs=1k dd if=/dev/block/mmcblk0p26 of=/sdcard1/recovery.part bs=1k dd if=/dev/block/mmcblk0p27 of=/sdcard1/odm.part bs=1k dd if=/dev/block/mmcblk0p28 of=/sdcard1/persist.part bs=1k dd if=/dev/block/mmcblk0p29 of=/sdcard1/cache.part bs=1k dd if=/dev/block/mmcblk0p30 of=/sdcard1/frp.part bs=1k
    So I now have partition 31 (/data) dumped to a tar file, and a raw dump of every other partition from 25 (/system) upwards - don't actually need a dump of /system itself but I took one for safety. Then I removed every partition from 25 upwards - at this point, incidentally, if it goes wrong, be it through typo or power loss, that's the ballgame:
    parted /dev/block/mmcblk0 rm 31 rm 30 rm 29 rm 28 rm 27 rm 26 rm 25
    Worked out the new starting and ending sectors to make /system 50% larger, claiming the space from /data. I recreated partitions 25 to 31 - there's an unused gap between 27 (odm) and 28 (persist) which I preserved, not sure if that's necessary. Still within parted, that went like this, bearing in mind that these figures would only stand a chance of working if your partitions started on the same sectors as mine:
    unit s mkpart 25 ext2 724064 5442655 name 25 system mkpart 26 5442656 5508191 name 26 recovery mkpart 27 5508192 5639263 name 27 odm mkpart 28 ext4 5767168 5832703 name 28 persist mkpart 29 ext4 5832704 6139903 name 29 cache mkpart 30 6139904 6140927 name 30 frp mkpart 31 ext4 6140928 30535646 name 31 userdata
    I think parted might have been displaying a warning about the partition ID for each mkpart command - not sure, but it worked anyway. Then I quit out of parted. Next step was to resize the system partition and create ext4 filesystems for persist, cache and userdata:
    e2fsck -f /dev/block/mmcblk0p25 resize2fs /dev/block/mmcblk0p25 mkfs.ext4 /dev/block/mmcblk0p28 mkfs.ext4 /dev/block/mmcblk0p29 mkfs.ext4 /dev/block/mmcblk0p31
    Then I restored the partition dumps:
    dd if=/sdcard1/recovery.part of=/dev/block/mmcblk0p26 bs=1k dd if=/sdcard1/odm.part of=/dev/block/mmcblk0p27 bs=1k dd if=/sdcard1/persist.part of=/dev/block/mmcblk0p28 bs=1k dd if=/sdcard1/cache.part of=/dev/block/mmcblk0p29 bs=1k dd if=/sdcard1/frp.part of=/dev/block/mmcblk0p30 bs=1k mount /dev/block/mmcblk0p31 /data cd /data tar xvpf /sdcard1/data.tar .
    One reboot later, I was back in business with a larger system partition. 18.1 installed fine with MindTheGApps - at least once I'd flashed the proper Lineage recovery. (It was actually only after I went back to 17.1 later on that I restored /data from my backup.) Of course any use you make of this information is entirely at your own risk and I can provide no assistance with recovering borked phones etc. etc. :D
     
    Last edited:

    skm_1

    Member
    Apr 20, 2018
    11
    6
    That's awesome ! Thanks for this detailed reply ! :D
    Though I'm wondering : that's not all it takes to make a Swift Treble-compatible, or is it ?
    Actually, I couldn't say - never tried Treble and don't know what its space requirements are. My instructions increase /system from the default of about 1.5GB to 2.3GB (with the extra space coming from /data, which obviously needs to have enough free), not sure what else Treble might need though.

    On taking another look at my partitioning instructions, it does seem kind of pointless to reformat persist and cache as ext4 immediately before restoring the partition dumps onto them, but it doesn't do any harm. At the time, I wasn't entirely sure that would work, so the instructions have not been refined - I just posted exactly what I did.
     
    • Like
    Reactions: breversa

    skm_1

    Member
    Apr 20, 2018
    11
    6
    Remembered I had a spare Swift with a cracked screen (which had been running 16.0, also with TWRP 3.2.0-0) so I had a go at applying my partitioning instructions. The partition table was exactly the same except for some reason /system was showing as ext4 instead of ext2, so I specified ext4 when recreating partition 25 with mkpart. On creating partitions 25, 26 and 31 (I think) I got a warning about them not being properly aligned which I just ignored. Also this time around I didn't run mkfs.ext4 on partitions 28 and 29 before restoring the dumps and it all worked just fine.
     
    • Like
    Reactions: breversa

    115ek

    Senior Member
    Jan 30, 2017
    551
    622
    Hİ. When will LOS 18.1 arrive? I can't wait to experience it.
    @115ek
    I already uploaded some unofficial 18.1 builds. You can find them here.
    However, I doubt there will be an official 18.1.
    The camera and flashlight are really slow/buggy and I've got less time to fix that. If it's fixable at all. The swift isn't really the fastest device.
    And even worse: The size of the system partition is not sufficient for a gapps installation.
    A repartitioning would be required to comply with the requirements.
     
    • Like
    Reactions: didyou and breversa

    didyou

    Member
    Aug 14, 2010
    46
    0
    Antalya
    I already uploaded some unofficial 18.1 builds. You can find them here.
    However, I doubt there will be an official 18.1.
    The camera and flashlight are really slow/buggy and I've got less time to fix that. If it's fixable at all. The swift isn't really the fastest device.
    And even worse: The size of the system partition is not sufficient for a gapps installation.
    A repartitioning would be required to comply with the requirements.
    Thanks for answering. 17.1 rounded up and works really well, but it's been a long time and I want to use a new version. I hope you can fix the issues and we will have a chance to use 18.1 as well.
     

    Top Liked Posts

    • 2
      Hİ. When will LOS 18.1 arrive? I can't wait to experience it.
      @115ek
      I already uploaded some unofficial 18.1 builds. You can find them here.
      However, I doubt there will be an official 18.1.
      The camera and flashlight are really slow/buggy and I've got less time to fix that. If it's fixable at all. The swift isn't really the fastest device.
      And even worse: The size of the system partition is not sufficient for a gapps installation.
      A repartitioning would be required to comply with the requirements.
    • 2
      Hİ. When will LOS 18.1 arrive? I can't wait to experience it.
      @115ek
      I already uploaded some unofficial 18.1 builds. You can find them here.
      However, I doubt there will be an official 18.1.
      The camera and flashlight are really slow/buggy and I've got less time to fix that. If it's fixable at all. The swift isn't really the fastest device.
      And even worse: The size of the system partition is not sufficient for a gapps installation.
      A repartitioning would be required to comply with the requirements.
    • 6
      Code:
      [COLOR="Purple"]#include <std_disclaimer.h>[/COLOR]
      [COLOR="Navy"]/*
       * Your warranty is now void.
       *
       * I am not responsible for bricked devices, dead SD cards,
       * thermonuclear war, or you getting fired because the alarm app failed. Please
       * do some research if you have any concerns about features included in this ROM
       * before flashing it! YOU are choosing to make these modifications, and if
       * you point the finger at me for messing up your device, I will laugh at you.
       */[/COLOR]

      Installation:
      If you are on stock OS, you need a custom recovery first. You can get the recommended Lineage recovery in the official installation instructions link below.
      If you are coming from stock or other ROMs, you need to make a factory reset.
      As always, make sure to backup before installing this ROM.

      More detailed instructions at:
      Install LineageOS on crackling

      Official Download link:
      LineageOS Downloads

      115ek's test builds (for testers only)
      Downloads

      Recommended Google Apps package:
      Open GApps (pico only)

      Changelog:
      Changes for crackling

      Bug reports:
      How to submit a bug report

      Donate to support development:
      Donate via PayPal to LineageOS
      2
      Hİ. When will LOS 18.1 arrive? I can't wait to experience it.
      @115ek
      I already uploaded some unofficial 18.1 builds. You can find them here.
      However, I doubt there will be an official 18.1.
      The camera and flashlight are really slow/buggy and I've got less time to fix that. If it's fixable at all. The swift isn't really the fastest device.
      And even worse: The size of the system partition is not sufficient for a gapps installation.
      A repartitioning would be required to comply with the requirements.
      2
      Wait… I understand that resizing /system is needed in order to Treble-ise the Wileyfox Swift.
      Does that mean that you've managed to do it ? Could you tell me how ?
      Now, I only tried this because it was a spare phone and I was prepared to risk bricking it completely, but it went like this:
      Booted phone into TWRP (version 3.2.0.0, for the record) with a blank SD card installed, reformatted card as ext4 so I could dump large files onto it. Downloaded parted and mkfs.ext4, adb push'ed them into /sbin, then ran adb shell and chmod 755'ed /sbin/parted and /sbin/mkfs.ext4 so I could run them. Used "parted /dev/block/mmcblk0" to print out the current partition table using "unit s" and "p" so I could take a note of the starting and ending sectors. For me, the system partition started on sector 724064, recovery on 3869792, and userdata on 4568064 ending on 30535646. Then this:
      cd /data tar cvpf /sdcard1/data.tar . cd / umount /data umount /cache umount /sdcard dd if=/dev/block/mmcblk0p25 of=/sdcard1/system.part bs=1k dd if=/dev/block/mmcblk0p26 of=/sdcard1/recovery.part bs=1k dd if=/dev/block/mmcblk0p27 of=/sdcard1/odm.part bs=1k dd if=/dev/block/mmcblk0p28 of=/sdcard1/persist.part bs=1k dd if=/dev/block/mmcblk0p29 of=/sdcard1/cache.part bs=1k dd if=/dev/block/mmcblk0p30 of=/sdcard1/frp.part bs=1k
      So I now have partition 31 (/data) dumped to a tar file, and a raw dump of every other partition from 25 (/system) upwards - don't actually need a dump of /system itself but I took one for safety. Then I removed every partition from 25 upwards - at this point, incidentally, if it goes wrong, be it through typo or power loss, that's the ballgame:
      parted /dev/block/mmcblk0 rm 31 rm 30 rm 29 rm 28 rm 27 rm 26 rm 25
      Worked out the new starting and ending sectors to make /system 50% larger, claiming the space from /data. I recreated partitions 25 to 31 - there's an unused gap between 27 (odm) and 28 (persist) which I preserved, not sure if that's necessary. Still within parted, that went like this, bearing in mind that these figures would only stand a chance of working if your partitions started on the same sectors as mine:
      unit s mkpart 25 ext2 724064 5442655 name 25 system mkpart 26 5442656 5508191 name 26 recovery mkpart 27 5508192 5639263 name 27 odm mkpart 28 ext4 5767168 5832703 name 28 persist mkpart 29 ext4 5832704 6139903 name 29 cache mkpart 30 6139904 6140927 name 30 frp mkpart 31 ext4 6140928 30535646 name 31 userdata
      I think parted might have been displaying a warning about the partition ID for each mkpart command - not sure, but it worked anyway. Then I quit out of parted. Next step was to resize the system partition and create ext4 filesystems for persist, cache and userdata:
      e2fsck -f /dev/block/mmcblk0p25 resize2fs /dev/block/mmcblk0p25 mkfs.ext4 /dev/block/mmcblk0p28 mkfs.ext4 /dev/block/mmcblk0p29 mkfs.ext4 /dev/block/mmcblk0p31
      Then I restored the partition dumps:
      dd if=/sdcard1/recovery.part of=/dev/block/mmcblk0p26 bs=1k dd if=/sdcard1/odm.part of=/dev/block/mmcblk0p27 bs=1k dd if=/sdcard1/persist.part of=/dev/block/mmcblk0p28 bs=1k dd if=/sdcard1/cache.part of=/dev/block/mmcblk0p29 bs=1k dd if=/sdcard1/frp.part of=/dev/block/mmcblk0p30 bs=1k mount /dev/block/mmcblk0p31 /data cd /data tar xvpf /sdcard1/data.tar .
      One reboot later, I was back in business with a larger system partition. 18.1 installed fine with MindTheGApps - at least once I'd flashed the proper Lineage recovery. (It was actually only after I went back to 17.1 later on that I restored /data from my backup.) Of course any use you make of this information is entirely at your own risk and I can provide no assistance with recovering borked phones etc. etc. :D
      2
      Last time I tried it worked. But you're right - the available space on /system is very rare. I already made some "hacks" to free up some space. You could try to overcome this by installing an older pico gapps package from here which is smaller. It'll update itself if you connect to a wifi network anyway.
      Another thing you could try is using FlameGapps. The final thing would be resizing the /system partition.
      In 2018, there was a way to resize the partitions of the Wileyfox Swift, but it's since apparently been taken down : see https://forum.xda-developers.com/t/rom-treble-project-treble-for-wileyfox-swift.3841262/

      Has anyone managed to keep a copy of the tool and associated instructions ?
      1
      The "old" Lineage 17.1 thread got lost during some xda server maintenance. It's not really clear to me what happened.
      It couldn't be brought back for several weeks now, so I decided to create a new thread.

      I'd also like to inform you that I'll provide some test builds here. Before merging bigger changes I'd like to ensure the builds are okay (not just for me).
      It would be nice if some of you could test a bit. Only caveat: You won't be able to switch between test builds/official builds easily as different signature keys are used and a factory reset is needed (alternatively flashing a migration file could save you from resetting the device (more info)). However, these test builds are thought for interested persons only ;)
      You'll find the first test build here.
      Changes:
      • switch to userspace lmkd (more info here)
      It would be interesting if you experience any differences in memory management (how many apps can be opened in background, how fast is app switching, when are apps closed...).
      And of course if the system is usable at all.