Code Monkey home page Code Monkey logo

magiskonwsa's Introduction

Magisk on WSA (with Google Apps)

Features

  • Integrate Magisk and OpenGApps in a few clicks within minutes
  • No Linux environment required for integration
  • Keep each build up to date
  • Support both ARM64 and x64
  • Support all OpenGApps variants except for aroma (aroma does not support x86_64, please use super instead)
  • Fix external storage access of DocumentUI
  • Unattended installation
  • Automatically activates developers mode in Windows 11
  • Update to new version while preserving data with one-click script
  • Merged all language packs
  • Support managing start menu icons (manually installing WSAHelper to use this feature)

Video Guide

MagiskOnWSA.mp4

Text Guide

  1. Star (if you like) and fork this repo
  2. Go to the Action tab in your forked repo Action Tab
  3. In the left sidebar, click the Build WSA workflow. Workflow
  4. Above the list of workflow runs, select Run workflow Run Workflow
  5. Input the download link of Magisk and select the OpenGApps variant (none is no OpenGApps) you like, select the root solution (none means no root) and click Run workflow Run Workflow
  6. Wait for the action to complete and download the artifact Download
  7. Unzip the artifact
    • The size shown in the webpage is uncompressed size and the zip you download will be compressed. So the size of the zip will be much less than the size shown in the webpage.
  8. Right-click Install.ps1 and select Run with PowerShell
    • If you previously have a MagiskOnWSA installation, it will automatically uninstall the previous while preserving all userdata and install the new one, so don't worry about your data.
    • If you have an official WSA installation, you should uninstall it first. (In case you want to preserve your data, you can backup %LOCALAPPDATA%\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalCache\userdata.vhdx before uninstallation and restore it after installation.) (If you want to restore the icons to start menu, please install and use WSAHelper.)
    • If the popup windows disappear without asking administrative permission and WSA is not installed successfully, you should manually run Install.ps1 as administrator:
      1. Press Win+x and select Windows Terminal (Admin)
      2. Input cd "{X:\path\to\your\extracted\folder}" and press enter, and remember to replace {X:\path\to\your\extracted\folder} including the {}, for example cd "D:\wsa"
      3. Input PowerShell.exe -ExecutionPolicy Bypass -File .\Install.ps1 and press enter
      4. The script will run and WSA will be installed
      5. If this workaround does not work, your PC is not supported for WSA
  9. Magisk/Play store will be launched. Enjoy by installing LSPosed-zygisk with zygisk enabled or Riru and LSPosed-riru

FAQ

  • Can I delete the unzipped folder?

    No.

  • Why the size of the zip does not match the one shown?

    The zip you downloaded is compressed and Github is showing the uncompressed size.

  • How can I update WSA to new version?

    Rerun the Github action, download the new artifact, replace the content of your previous installation and rerun Install.ps1. Don't worry, your data will be preserved.

  • How can I get the logcat from WSA?

    %LOCALAPPDATA%\Packages\MicrosoftCorporationII.WindowsSubsystemForAndroid_8wekyb3d8bbwe\LocalState\diagnostics\logcat

  • How can I update Magisk to new version?

    Do the same as updating WSA

  • VPN is not working?

    Tell Microsoft to fix it. We cannot fix it easily.

  • How to pass safetynet?

    Like all the other emulators, no way.

  • Virtualization is not enabled?

    Install.ps1 helps you enable it if not enabled. After rebooting, rerun Install.ps1 to install WSA. If it's still not working, you have to enable virtualization in BIOS. That's a long story so ask Google for help.

  • How to remount system as read-write?

    No way in WSA since it's mounted as read-only by Hyper-V. You can modify system by making a Magisk module. Or directly modify system.img. Ask Google for help.

  • I cannot adb connect localhost:58526

    Make sure developer mode is enabled. If the issue persists, check the IP address of WSA in the setting page and try adb connect ip:5555.

  • Magisk online module list is empty?

    Magisk actively remove online module repository. You can install module locally or by adb push module.zip /data/local/tmp and adb shell su -c magisk --install-module /data/local/tmp/module.zip.

  • Can I use Magisk 23.0 stable or lower version?

    No. Magisk has bugs preventing itself running on WSA. Magisk 24+ has fixed them. So you must use Magisk 24 or higher version.

  • How can I get rid of Magisk?

    Choose none as root solution.

  • Github Action script is updated, how can I synchronize it?

    1. In your fork repository, click fetch upstream fetch
    2. Then and click fetch and merge merge

Credits

magiskonwsa's People

Contributors

omni9 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

magiskonwsa's Issues

Build WSA Workflow exit with Error code 1 by "Extract GApps and expand image"

When i start building Workflow "Build WSA" it fails at "build (arm64)" with "Error exit code 1"

details:


Pass 4: Checking reference counts
Pass 5: Checking group summary information

/: ***** FILE SYSTEM WAS MODIFIED *****
/: 2671/2688 files (0.3% non-contiguous), 194624/210002 blocks
resize2fs 1.45.5 (07-Jan-2020)
Resizing the filesystem on arm64/system.img to 284862 (4k) blocks.
The filesystem on arm64/system.img is now 284862 (4k) blocks long.

e2fsck 1.45.5 (07-Jan-2020)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
product: 153/192 files (0.7% non-contiguous), 68679/68886 blocks
resize2fs 1.45.5 (07-Jan-2020)
Resizing the filesystem on arm64/product.img to 262144 (4k) blocks.
The filesystem on arm64/product.img is now 262144 (4k) blocks long.

e2fsck 1.45.5 (07-Jan-2020)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
system_ext: 83/96 files (1.2% non-contiguous), 33748/33850 blocks
resize2fs 1.45.5 (07-Jan-2020)
resize2fs: New size smaller than minimum (33748)

Error: Process completed with exit code 1.


I tryed with diffrent choises but i didn't get a completed workflow

https://github.com/VanniViolett/MagiskOnWSA

Can't build x64

I'm getting error while building.

Run mkdir gapps
  mkdir gapps
  unzip -p gapps.zip {Core,GApps}/'*.lz' | tar --lzip -C gapps -xvf - -i --strip-components=[2](https://github.com/WastedHymn/MagiskOnWSA/actions/runs/5205443397/jobs/9390897606#step:6:2) --exclude='setupwizardtablet-x86_64' --exclude='packageinstallergoogle-all' --exclude='speech-common' --exclude='markup-lib-arm' --exclude='markup-lib-arm64' --exclude='markup-all' --exclude='setupwizarddefault-x86_64' --exclude='pixellauncher-all' --exclude='pixellauncher-common'
  
  e2fsck -yf x64/system.img
  resize2fs x64/system.img $(( $(du -sB512 gapps | cut -f1) + $(du -sB512 x64/system.img | cut -f1) ))s
  e2fsck -yf x64/product.img
  resize2fs x64/product.img 1024M
  e2fsck -yf x64/system_ext.img
  resize2fs x64/system_ext.img 108M
  shell: /usr/bin/bash -e {0}
  env:
    WSA_VER: 2[3](https://github.com/WastedHymn/MagiskOnWSA/actions/runs/5205443397/jobs/9390897606#step:6:3)0[4](https://github.com/WastedHymn/MagiskOnWSA/actions/runs/5205443397/jobs/9390897606#step:6:4).40000.7.0
    WSA_REL: Release-Nightly
backuprestore-all/nodpi/priv-app/
backuprestore-all/nodpi/priv-app/GoogleRestore/
backuprestore-all/nodpi/priv-app/GoogleRestore/GoogleRestore.apk
carriersetup-all/nodpi/priv-app/
carriersetup-all/nodpi/priv-app/CarrierSetup/
carriersetup-all/nodpi/priv-app/CarrierSetup/CarrierSetup.apk
configupdater-all/nodpi/priv-app/
configupdater-all/nodpi/priv-app/ConfigUpdater/
configupdater-all/nodpi/priv-app/ConfigUpdater/ConfigUpdater.apk
datatransfertool-all/nodpi/priv-app/
datatransfertool-all/nodpi/priv-app/AndroidMigratePrebuilt/
datatransfertool-all/nodpi/priv-app/AndroidMigratePrebuilt/AndroidMigratePrebuilt.apk
defaultetc-common/common/etc/
defaultetc-common/common/etc/sysconfig/
defaultetc-common/common/etc/sysconfig/google_exclusives_enable.xml
defaultetc-common/common/etc/sysconfig/google_build.xml
defaultetc-common/common/etc/sysconfig/google.xml
defaultetc-common/common/etc/sysconfig/google-hiddenapi-package-whitelist.xml
defaultetc-common/common/etc/preferred-apps/
defaultetc-common/common/etc/preferred-apps/google.xml
defaultetc-common/common/etc/permissions/
defaultetc-common/common/etc/permissions/split-permissions-google.xml
defaultetc-common/common/etc/permissions/privapp-permissions-google.xml
defaultetc-common/common/etc/default-permissions/
defaultetc-common/common/etc/default-permissions/opengapps-permissions-q.xml
defaultetc-common/common/etc/default-permissions/default-permissions.xml
defaultframework-common/common/framework/
defaultframework-common/common/framework/com.google.android.media.effects.jar
defaultframework-common/common/framework/com.google.android.maps.jar
defaultframework-common/common/etc/
defaultframework-common/common/etc/permissions/
defaultframework-common/common/etc/permissions/com.google.android.media.effects.xml
defaultframework-common/common/etc/permissions/com.google.android.maps.xml
extservicesgoogle-all/nodpi/priv-app/
extservicesgoogle-all/nodpi/priv-app/GoogleExtServices/
extservicesgoogle-all/nodpi/priv-app/GoogleExtServices/GoogleExtServices.apk
extsharedgoogle-all/nodpi/app/
extsharedgoogle-all/nodpi/app/GoogleExtShared/
extsharedgoogle-all/nodpi/app/GoogleExtShared/GoogleExtShared.apk
gmscore-x86_64/nodpi/priv-app/
gmscore-x86_64/nodpi/priv-app/PrebuiltGmsCore/
gmscore-x86_64/nodpi/priv-app/PrebuiltGmsCore/PrebuiltGmsCore.apk
googlebackuptransport-all/nodpi/priv-app/
googlebackuptransport-all/nodpi/priv-app/GoogleBackupTransport/
googlebackuptransport-all/nodpi/priv-app/GoogleBackupTransport/GoogleBackupTransport.apk
googlecontactssync-all/nodpi/app/
googlecontactssync-all/nodpi/app/GoogleContactsSyncAdapter/
googlecontactssync-all/nodpi/app/GoogleContactsSyncAdapter/GoogleContactsSyncAdapter.apk
googlefeedback-all/nodpi/priv-app/
googlefeedback-all/nodpi/priv-app/GoogleFeedback/
googlefeedback-all/nodpi/priv-app/GoogleFeedback/GoogleFeedback.apk
googleonetimeinitializer-all/nodpi/priv-app/
googleonetimeinitializer-all/nodpi/priv-app/GoogleOneTimeInitializer/
googleonetimeinitializer-all/nodpi/priv-app/GoogleOneTimeInitializer/GoogleOneTimeInitializer.apk
googlepartnersetup-all/nodpi/priv-app/
googlepartnersetup-all/nodpi/priv-app/GooglePartnerSetup/
googlepartnersetup-all/nodpi/priv-app/GooglePartnerSetup/GooglePartnerSetup.apk
gsfcore-all/nodpi/priv-app/
gsfcore-all/nodpi/priv-app/GoogleServicesFramework/
gsfcore-all/nodpi/priv-app/GoogleServicesFramework/GoogleServicesFramework.apk
vending-common/common/product/
vending-common/common/product/overlay/
vending-common/common/product/overlay/PlayStoreOverlay.apk
vending-x86_64/nodpi/priv-app/
vending-x86_64/nodpi/priv-app/Phonesky/
vending-x86_64/nodpi/priv-app/Phonesky/Phonesky.apk
calsync-all/nodpi/app/
calsync-all/nodpi/app/GoogleCalendarSyncAdapter/
calsync-all/nodpi/app/GoogleCalendarSyncAdapter/GoogleCalendarSyncAdapter.apk
dialerframework-common/common/framework/
dialerframework-common/common/framework/com.google.android.dialer.support.jar
dialerframework-common/common/etc/
dialerframework-common/common/etc/sysconfig/
dialerframework-common/common/etc/sysconfig/dialer_experience.xml
dialerframework-common/common/etc/permissions/
dialerframework-common/common/etc/permissions/com.google.android.dialer.support.xml
gearheadstub-all/nodpi/priv-app/
gearheadstub-all/nodpi/priv-app/AndroidAutoPrebuiltStub/
gearheadstub-all/nodpi/priv-app/AndroidAutoPrebuiltStub/AndroidAutoPrebuiltStub.apk
googletts-x86_64/nodpi/app/
googletts-x86_64/nodpi/app/GoogleTTS/
googletts-x86_64/nodpi/app/GoogleTTS/GoogleTTS.apk
e2fsck 1.4[5](https://github.com/WastedHymn/MagiskOnWSA/actions/runs/5205443397/jobs/9390897606#step:6:5).5 (07-Jan-2020)
e2fsck: No such file or directory while trying to open x[6](https://github.com/WastedHymn/MagiskOnWSA/actions/runs/5205443397/jobs/9390897606#step:6:6)4/system.img
Possibly non-existent device?
Error: Process completed with exit code [8](https://github.com/WastedHymn/MagiskOnWSA/actions/runs/5205443397/jobs/9390897606#step:6:8).

logs_2.zip

ERROR!!!

Unfortunately the link is not working. !

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.