|
1 | 1 | # Auto-Linux (Rust Edition) |
2 | 2 |
|
3 | | - |
4 | | - |
5 | | --green) |
| 3 | +-green) |
6 | 4 |  |
7 | 5 |
|
8 | | -**Auto-Linux** is a standalone, lightweight, and blazing fast Linux installer/manager for Android, written entirely in **Rust**. It provides a beautiful Terminal User Interface (TUI) to install, configure, and manage Ubuntu chroots without requiring Termux, Busybox, or external dependencies. |
| 6 | +**Auto-Linux** is a lightweight, standalone, and blazing-fast Linux chroot installer and manager for **rooted** Android devices. Written entirely in **Rust**, it provides an elegant Terminal User Interface (TUI) to install, manage, and launch Ubuntu environments without requiring Termux, Busybox, or any external dependencies. |
9 | 7 |
|
10 | | -> **Built for speed, stability, and ease of use.** |
| 8 | +> **Built for power users who demand speed, stability, and simplicity.** |
| 9 | +
|
| 10 | +--- |
| 11 | + |
| 12 | +## Requirements |
| 13 | + |
| 14 | +* **Root Access:** A rooted Android device (Magisk, KernelSU, APatch, etc.). **This application will not function on non-rooted devices.** |
| 15 | +* **Architecture:** ARM64 (`aarch64`) or x86_64. |
| 16 | +* **Internet Connection:** Required to download distro root filesystems during installation. |
11 | 17 |
|
12 | 18 | --- |
13 | 19 |
|
14 | 20 | ## Key Features |
15 | 21 |
|
16 | | -* **Native & Standalone:** Compiled as a static binary (`musl`). Zero dependencies. No Termux needed. |
17 | | -* **Beautiful TUI:** Powered by `ratatui`. Keyboard-driven dashboard. |
18 | | -* **Instant Launch:** Switch users and enter Chroot directly from the dashboard. |
19 | | -* **Auto-Configuration:** |
20 | | - * **Network:** Auto-detects DNS and fixes connection issues inside chroot. |
21 | | - * **Users:** Auto-creates User & Password during setup. |
22 | | - * **Sudo:** Auto-configures `sudo` (wheel group) privileges. |
23 | | - * **Mounts:** Handles `/dev`, `/proc`, `/sys`, `/sdcard` binding automatically. |
24 | | -* **Distribution Support:** Ubuntu 20.04 LTS up to 26.04. |
25 | | -* **Root Detection:** Supports Magisk, KernelSU, and APatch natively. |
| 22 | +* **Standalone & Zero-Dependency:** Compiled as a single, static binary (`musl`). No dependencies. No Termux needed. Just copy and run. |
| 23 | +* **Intelligent Root Handling:** |
| 24 | + * **Smart Self-Elevation:** If run as a normal user, the application will automatically attempt to request root privileges to continue. |
| 25 | + * **Native Root Detection:** Supports modern root solutions like Magisk, KernelSU, and APatch. |
| 26 | +* **Advanced Chroot Management:** |
| 27 | + * **Instant Launch:** Enter the chroot as `root` or a standard user directly from the TUI dashboard. |
| 28 | + * **Automatic User Detection:** Automatically discovers users created inside the chroot and lists them as login options. |
| 29 | +* **Robust Network Resolver:** Implements a custom, `ping`-based DNS resolver to ensure internet connectivity inside the chroot works reliably, even on the strictest Android systems. |
| 30 | +* **Fully Automated Setup:** |
| 31 | + * **Mounts:** Automatically handles bind mounts for `/dev`, `/proc`, `/sys`, and `/sdcard`. |
| 32 | + * **User & Sudo:** Configures a new user with `sudo` privileges (via the wheel group) during the installation process. |
| 33 | +* **Wide Distribution Support:** Provides easy access to the latest **Ubuntu Base** releases, including LTS versions (20.04, 22.04, 24.04) and the newest non-LTS releases. |
26 | 34 |
|
27 | 35 | --- |
28 | 36 |
|
29 | 37 | ## Screenshots |
30 | 38 |
|
31 | | -Preview: |
| 39 | +*Main Dashboard: System Info & Installed Distros List* |
32 | 40 |  |
33 | 41 |
|
| 42 | +*Distro Selection for Installation* |
34 | 43 |  |
35 | 44 |
|
| 45 | +*Installation Process & Chroot Launch* |
36 | 46 |  |
37 | 47 |
|
38 | 48 |
|
39 | 49 | --- |
40 | 50 |
|
41 | 51 | ## Installation |
42 | 52 |
|
43 | | -### Option 1: One-Line Install. |
44 | | -Run this command in **Termux**, **ADB Shell**, or any Terminal Emulator: |
| 53 | +### Option 1: One-Line Install (Recommended) |
| 54 | +Run this command in **Termux**, **ADB Shell**, or any terminal emulator with root access: |
45 | 55 |
|
46 | 56 | ```bash |
47 | 57 | curl -sL https://raw.githubusercontent.com/HanSoBored/Auto-Linux/main/install.sh | sh |
48 | 58 | ``` |
49 | 59 |
|
50 | | -> **Note:** This script automatically detects if you have Termux installed and creates a shortcut. You can then simply type `autolinux` to start. |
| 60 | +> **Note:** This script places the binary in `/data/local/tmp` and creates an `autolinux` shortcut if Termux is detected. |
51 | 61 |
|
52 | | -### Option 2: Manual Install |
53 | | -1. Download the latest binary from [Releases](https://github.com/HanSoBored/Auto-Linux/releases). |
54 | | -2. Push to device: `adb push autolinux-aarch64 /data/local/tmp/autolinux` |
55 | | -3. Permission: `chmod +x /data/local/tmp/autolinux` |
56 | | -4. Run: `/data/local/tmp/autolinux` |
| 62 | +### Option 2: Manual Installation |
| 63 | +1. Download the latest binary from the [Releases](https://github.com/HanSoBored/Auto-Linux/releases) page. |
| 64 | +2. Push to your device: `adb push autolinux-aarch64 /data/local/tmp/autolinux` |
| 65 | +3. Make it executable: `chmod +x /data/local/tmp/autolinux` |
| 66 | +4. Run it (ensure you are in a root shell): `/data/local/tmp/autolinux` |
57 | 67 |
|
58 | 68 | --- |
59 | 69 |
|
60 | 70 | ## Build from Source |
61 | 71 |
|
62 | | -You need **Rust** and **Cross** (for cross-compiling to Android/ARM64 Musl). |
| 72 | +You will need **Rust** and **Cross** to cross-compile for the `aarch64-unknown-linux-musl` target. |
63 | 73 |
|
64 | 74 | 1. **Install Prerequisites**: |
65 | 75 | ```bash |
66 | 76 | cargo install cross |
67 | 77 | ``` |
68 | 78 | 2. **Build Release**: |
69 | 79 | ```bash |
70 | | - # Static binary (Musl) ensures it runs on any Android version |
| 80 | + # The static binary (Musl) ensures it runs on virtually any Android version |
71 | 81 | cross build --target aarch64-unknown-linux-musl --release |
72 | 82 | ``` |
73 | 83 | 3. **Locate Binary**: |
74 | | - The binary will be in `target/aarch64-unknown-linux-musl/release/autolinux`. |
| 84 | + The compiled binary will be in `target/aarch64-unknown-linux-musl/release/autolinux`. |
75 | 85 |
|
76 | 86 | --- |
77 | 87 |
|
78 | 88 | ## Contributing |
79 | 89 |
|
80 | 90 | Contributions are welcome! |
81 | | -1. Fork the project |
82 | | -2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`) |
83 | | -3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`) |
84 | | -4. Push to the Branch (`git push origin feature/AmazingFeature`) |
85 | | -5. Open a Pull Request |
| 91 | +1. Fork the Project. |
| 92 | +2. Create your Feature Branch (`git checkout -b feature/AmazingFeature`). |
| 93 | +3. Commit your Changes (`git commit -m 'Add some AmazingFeature'`). |
| 94 | +4. Push to the Branch (`git push origin feature/AmazingFeature`). |
| 95 | +5. Open a Pull Request. |
86 | 96 |
|
87 | 97 | --- |
88 | 98 |
|
89 | | -## Disclaimer |
| 99 | +## ⚠️ Disclaimer |
90 | 100 |
|
91 | | -This tool modifies system partitions (mounting) and creates files in `/data`. While safe, **I am not responsible for any bricked devices or data loss.** Always backup your data. |
| 101 | +This tool performs advanced system operations like `mount` and creates files on the `/data` partition. While it has been tested and is considered safe, **I am not responsible for any bricked devices or data loss.** Always back up your important data. |
92 | 102 |
|
93 | 103 | --- |
94 | 104 |
|
95 | 105 | ## License |
96 | 106 |
|
97 | | -Distributed under the MIT License. See [LICENSE](LICENSE)for more information. |
| 107 | +Distributed under the MIT License. See [LICENSE](LICENSE) for more information. |
0 commit comments