1. 23 Mar, 2019 2 commits
    • topjohnwu's avatar
      Adjust scripting · 8df942f9
      topjohnwu authored
      8df942f9
    • topjohnwu's avatar
      Switch to skip_mount instead of auto_mount · 9bb2243b
      topjohnwu authored
      95%+ of existing modules enables auto mount (obviously).
      Switching auto mount to opt-out makes more sense than opt-in as
      in previous module format. The file 'auto_mount' will be ignored, and
      the file 'skip_mount' will be checked to toggle the mounting behavior.
      
      After scanning through the current Magisk Module Repo modules, no
      modules are using custom bind mounting; all modules with auto mount
      disabled have empty system folder, which means this change will not
      affect any existing module.
      9bb2243b
  2. 22 Mar, 2019 6 commits
  3. 20 Mar, 2019 1 commit
  4. 18 Mar, 2019 1 commit
  5. 16 Mar, 2019 2 commits
  6. 15 Mar, 2019 4 commits
    • topjohnwu's avatar
      Modularize MagiskInit · 8893cbd6
      topjohnwu authored
      8893cbd6
    • topjohnwu's avatar
      Support Android Q new split sepolicy setup · f0240b1f
      topjohnwu authored
      f0240b1f
    • topjohnwu's avatar
      Don't load sepolicy on Huawei devices · e476c18c
      topjohnwu authored
      Of course, the cancer of Android, Huawei, has to do some f**king weird
      modifications to the Linux kernel. Its kernel only accepts 1 single
      policy load in its lifetime, a second load will result in ENOMEM error.
      Since Huawei devices always use their own stupid ramdisk setup and not
      system-as-root, not loading sepolicy is not a concern (for now).
      e476c18c
    • topjohnwu's avatar
      Make sure rootfs file selabels are correct · a1b5185e
      topjohnwu authored
      Android Q init assumes rootfs to always be on EXT4 images, thus
      never runs restorecon on the whole root directory. This is an issue
      because some folders in rootfs were set with special selabels in
      the system partition, but when copying over to initramfs by magiskinit,
      these labels will not be preserved.
      
      So the solution is to relabel the files in rootfs with the original
      context right? Yes, but rootfs does not allow security xattr to be set
      on files before the kernel SELinux initializes with genfs_contexts.
      We have to load our sepolicy to the kernel before we clone the root
      directory from system partition, which we will also restore the selabel
      in the meantime.
      
      Unfortunately this means that for each reboot, the exact same policy
      will be loaded to the kernel twice: once in magiskinit so we can label
      rootfs properly, and once by the original init, which is part of the
      boot procedure. There is no easy way to prevent init from loading
      sepolicy, as init will refuse to continue if policy loading has failed.
      a1b5185e
  7. 14 Mar, 2019 2 commits
  8. 13 Mar, 2019 7 commits
  9. 12 Mar, 2019 6 commits
  10. 11 Mar, 2019 6 commits
  11. 10 Mar, 2019 3 commits