mirror of
https://github.com/ChrisTitusTech/linutil.git
synced 2024-12-26 05:19:44 +00:00
e82fd82850
Co-authored-by: nnyyxxxx <nnyyxxxx@users.noreply.github.com> Co-authored-by: Adam Perkowski <adas1per@protonmail.com>
77 lines
3.1 KiB
Bash
Executable File
77 lines
3.1 KiB
Bash
Executable File
#!/bin/sh -e
|
|
|
|
. ../common-script.sh
|
|
|
|
checkGpu() {
|
|
if lspci | grep -i nvidia > /dev/null; then
|
|
printf "%b\n" "${RED}Waydroid is not compatible with NVIDIA GPUs.${RC}"
|
|
exit 1
|
|
fi
|
|
}
|
|
|
|
installWaydroid() {
|
|
if ! command_exists waydroid; then
|
|
printf "%b\n" "${YELLOW}Installing Waydroid...${RC}"
|
|
case "$PACKAGER" in
|
|
pacman)
|
|
"$AUR_HELPER" -S --needed --noconfirm waydroid
|
|
if command_exists dkms; then
|
|
"$AUR_HELPER" -S --needed --noconfirm binder_linux-dkms
|
|
"$ESCALATION_TOOL" modprobe binder-linux device=binder,hwbinder,vndbinder
|
|
fi
|
|
;;
|
|
apt-get|nala)
|
|
curl https://repo.waydro.id | "$ESCALATION_TOOL" sh
|
|
"$ESCALATION_TOOL" "$PACKAGER" install -y waydroid
|
|
if command_exists dkms; then
|
|
"$ESCALATION_TOOL" "$PACKAGER" install -y git
|
|
mkdir -p "$HOME/.local/share/" # only create it if it doesnt exist
|
|
git clone https://github.com/choff/anbox-modules.git "$HOME/.local/share/anbox-modules"
|
|
cd "$HOME/.local/share/anbox-modules"
|
|
"$ESCALATION_TOOL" cp anbox.conf /etc/modules-load.d/
|
|
"$ESCALATION_TOOL" cp 99-anbox.rules /lib/udev/rules.d/
|
|
"$ESCALATION_TOOL" cp -rT ashmem /usr/src/anbox-ashmem-1
|
|
"$ESCALATION_TOOL" cp -rT binder /usr/src/anbox-binder-1
|
|
"$ESCALATION_TOOL" dkms install anbox-ashmem/1
|
|
"$ESCALATION_TOOL" dkms install anbox-binder/1
|
|
fi
|
|
;;
|
|
dnf)
|
|
"$ESCALATION_TOOL" "$PACKAGER" install -y waydroid
|
|
if command_exists dkms; then
|
|
"$ESCALATION_TOOL" "$PACKAGER" install -y git
|
|
mkdir -p "$HOME/.local/share/" # only create it if it doesnt exist
|
|
git clone https://github.com/choff/anbox-modules.git "$HOME/.local/share/anbox-modules"
|
|
cd "$HOME/.local/share/anbox-modules"
|
|
"$ESCALATION_TOOL" cp anbox.conf /etc/modules-load.d/
|
|
"$ESCALATION_TOOL" cp 99-anbox.rules /lib/udev/rules.d/
|
|
"$ESCALATION_TOOL" cp -rT ashmem /usr/src/anbox-ashmem-1
|
|
"$ESCALATION_TOOL" cp -rT binder /usr/src/anbox-binder-1
|
|
"$ESCALATION_TOOL" dkms install anbox-ashmem/1
|
|
"$ESCALATION_TOOL" dkms install anbox-binder/1
|
|
fi
|
|
;;
|
|
*)
|
|
printf "%b\n" "${RED}Unsupported package manager: $PACKAGER${RC}"
|
|
exit 1
|
|
;;
|
|
esac
|
|
else
|
|
printf "%b\n" "${GREEN}Waydroid is already installed.${RC}"
|
|
fi
|
|
}
|
|
|
|
setupWaydroid() {
|
|
printf "%b\n" "${YELLOW}Setting up Waydroid...${RC}"
|
|
"$ESCALATION_TOOL" systemctl enable --now waydroid-container
|
|
"$ESCALATION_TOOL" waydroid init
|
|
printf "%b\n" "${GREEN}Waydroid setup complete.${RC}"
|
|
}
|
|
|
|
checkEnv
|
|
checkEscalationTool
|
|
checkAURHelper
|
|
checkGpu
|
|
installWaydroid
|
|
setupWaydroid
|