's'
This commit is contained in:
18
README.md
18
README.md
@@ -92,6 +92,16 @@ python tools/compat.py -c podman --gpu-mode auto
|
|||||||
python redroid.py -mtg -i -m
|
python redroid.py -mtg -i -m
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Build flags (short options):
|
||||||
|
|
||||||
|
| Flag | Long form | Meaning |
|
||||||
|
|------|-----------|---------|
|
||||||
|
| **`-mtg`** | `--install-mindthegapps` | Bake **MindTheGapps** (Google apps framework) into the image |
|
||||||
|
| **`-i`** | `--install-houdini` | Bake **libhoudini** + **redroid houdini hack** (ARM translation on x86) |
|
||||||
|
| **`-m`** | `--install-magisk` | Bake **Kitsune Mask / Magisk** bootless payload into the image |
|
||||||
|
|
||||||
|
Together they produce `redroid/redroid:13.0.0_mindthegapps_houdini_magisk`. None of these control the **screen**; display is set when you **run** the container (`run_redroid.py`).
|
||||||
|
|
||||||
Air-gapped (requires a complete `offline/` tree):
|
Air-gapped (requires a complete `offline/` tree):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
@@ -158,13 +168,11 @@ With **`--gpu-mode guest`** (or **`auto`** when no `/dev/dri` exists), the displ
|
|||||||
```
|
```
|
||||||
The exact device path varies (Intel/AMD/NVIDIA, `nvidia-docker`, etc.); see [redroid-doc](https://github.com/remote-android/redroid-doc) GPU notes.
|
The exact device path varies (Intel/AMD/NVIDIA, `nvidia-docker`, etc.); see [redroid-doc](https://github.com/remote-android/redroid-doc) GPU notes.
|
||||||
|
|
||||||
2. **Stay on software rendering** but tune the virtual panel (sometimes reduces glitches):
|
2. **Software GLES (`guest`)** — force low load on the virtual display (often reduces black screen / flicker):
|
||||||
```bash
|
```bash
|
||||||
python run_redroid.py ... --adb-insecure \
|
python run_redroid.py ... --adb-insecure --gpu-mode guest --soft-display --memory 4g
|
||||||
--extra-prop androidboot.redroid_width=720 \
|
|
||||||
--extra-prop androidboot.redroid_height=1280 \
|
|
||||||
--extra-prop androidboot.redroid_fps=15
|
|
||||||
```
|
```
|
||||||
|
`--soft-display` sets 720×1280, 15 FPS, dpi 280. You can tune further with `--extra-prop` if needed.
|
||||||
|
|
||||||
3. **First boot / SetupWizard** can sit on a dark screen for a while. Run **`bootstrap_redroid.py`** once `adb` shows `device` so provisioning and wizard are skipped as intended.
|
3. **First boot / SetupWizard** can sit on a dark screen for a while. Run **`bootstrap_redroid.py`** once `adb` shows `device` so provisioning and wizard are skipped as intended.
|
||||||
|
|
||||||
|
|||||||
@@ -271,6 +271,13 @@ def main():
|
|||||||
action="store_true",
|
action="store_true",
|
||||||
help="Print the generated command without executing it",
|
help="Print the generated command without executing it",
|
||||||
)
|
)
|
||||||
|
parser.add_argument(
|
||||||
|
"--soft-display",
|
||||||
|
action="store_true",
|
||||||
|
help=(
|
||||||
|
"Lower software-GLES load: 720x1280, fps=15, dpi=280 (helps black screen / flicker with guest GPU)"
|
||||||
|
),
|
||||||
|
)
|
||||||
parser.add_argument(
|
parser.add_argument(
|
||||||
"--extra-prop",
|
"--extra-prop",
|
||||||
action="append",
|
action="append",
|
||||||
@@ -357,6 +364,15 @@ def main():
|
|||||||
cmd.extend(bridge_props(bridge))
|
cmd.extend(bridge_props(bridge))
|
||||||
cmd.extend(preset_props(preset))
|
cmd.extend(preset_props(preset))
|
||||||
cmd.extend(device_profile_props(device_profile))
|
cmd.extend(device_profile_props(device_profile))
|
||||||
|
if args.soft_display:
|
||||||
|
cmd.extend(
|
||||||
|
[
|
||||||
|
"androidboot.redroid_width=720",
|
||||||
|
"androidboot.redroid_height=1280",
|
||||||
|
"androidboot.redroid_fps=15",
|
||||||
|
"androidboot.redroid_dpi=280",
|
||||||
|
]
|
||||||
|
)
|
||||||
cmd.extend(args.extra_prop)
|
cmd.extend(args.extra_prop)
|
||||||
|
|
||||||
if args.replace and not args.dry_run:
|
if args.replace and not args.dry_run:
|
||||||
@@ -376,6 +392,8 @@ def main():
|
|||||||
print_color("Selected launch preset: {}".format(preset), bcolors.GREEN)
|
print_color("Selected launch preset: {}".format(preset), bcolors.GREEN)
|
||||||
if device_profile != "none":
|
if device_profile != "none":
|
||||||
print_color("Selected device profile: {}".format(device_profile), bcolors.GREEN)
|
print_color("Selected device profile: {}".format(device_profile), bcolors.GREEN)
|
||||||
|
if args.soft_display:
|
||||||
|
print_color("Soft display: 720x1280 @ 15fps (reduced GLES load)", bcolors.GREEN)
|
||||||
if args.adb_insecure:
|
if args.adb_insecure:
|
||||||
print_color(
|
print_color(
|
||||||
"ADB insecure: injecting boot props immediately after image name "
|
"ADB insecure: injecting boot props immediately after image name "
|
||||||
|
|||||||
Reference in New Issue
Block a user