casualsnek / waydroid_script

Python Script to add OpenGapps, Magisk, libhoudini translation library and libndk translation library to waydroid !
GNU General Public License v3.0
1.5k stars 144 forks source link

ERROR: umount: /tmp/waydroid: target is busy. when installing anything #109

Open 0x0079 opened 11 months ago

0x0079 commented 11 months ago

I'm trying to install libhoudini and I get the above error every time I try to install it, or anything else.

12th Gen Intel Framework Laptop NixOS 23.05 Kernel 6.1.35 Waydroid 1.3.4 Lineage 18.1 GAPPS

Steps to reproduce (from Nix Wiki):

/etc/nixos/configuration.nix

environment.systemPackages = [
    pkgs.waydroid
];

{
  virtualisation = {
    waydroid.enable = true;
    lxd.enable = true;
  };
}

sudo nixos-rebuild switch

sudo waydroid init -s GAPPS

sudo systemctl start waydroid-container

open waydroid from system tray (as far as I can tell, this is identical to running waydroid session start and waydroid show-full-ui)

$ sudo python main.py install libhoudini

INFO: Resizing /var/lib/waydroid/images/system.img to 3330M
INFO: Mounting /var/lib/waydroid/images/system.img to /tmp/waydroid
ERROR: umount: /tmp/waydroid: target is busy.

Traceback (most recent call last):
  File "/home/kayt/waydroid_script/main.py", line 343, in <module>
    main()
  File "/home/kayt/waydroid_script/main.py", line 336, in main
    args.func(args)
  File "/home/kayt/waydroid_script/main.py", line 103, in install_app
    mount("system", copy_dir)
  File "/home/kayt/waydroid_script/main.py", line 40, in mount
    images.mount(img, mount_point)
  File "/home/kayt/waydroid_script/tools/images.py", line 9, in mount
    umount(mount_point, False)
  File "/home/kayt/waydroid_script/tools/images.py", line 21, in umount
    run(["umount", mount_point])
  File "/home/kayt/waydroid_script/tools/helper.py", line 47, in run
    raise subprocess.CalledProcessError(
subprocess.CalledProcessError: Command '['umount', '/tmp/waydroid']' returned non-zero exit status 32.

At which point waydroid closes and systemctl status waydroid-contianer shows that the container is dead.

I also noticed that the install script resizes system.img by +500M every time the script is run, like in #106, even after logging out/in.