diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4ffdae8..92591da 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -157,10 +157,10 @@ jobs: strategy: matrix: platform: - - name: ubuntu-24 + - name: linux-x64 os: ubuntu-latest target: x86_64-unknown-linux-musl - - name: ubuntu-24-aarch64 + - name: linux-aarch64 os: ubuntu-24.04-arm target: aarch64-unknown-linux-musl - name: macos-arm @@ -261,10 +261,10 @@ jobs: strategy: matrix: platform: - - name: ubuntu-24 + - name: linux-x64 os: ubuntu-latest target: x86_64-unknown-linux-musl - - name: ubuntu-24-aarch64 + - name: linux-aarch64 os: ubuntu-24.04-arm target: aarch64-unknown-linux-musl - name: macos-arm @@ -284,7 +284,7 @@ jobs: with: targets: ${{ matrix.platform.target }} - uses: Swatinem/rust-cache@v2 - - run: cargo build --bin installer --release --target ${{ matrix.platform.target }} + - run: cargo build --package installer --bin installer --release --target ${{ matrix.platform.target }} - uses: actions/upload-artifact@v4 with: name: installer-${{ matrix.platform.name }} @@ -301,6 +301,14 @@ jobs: - build_rayhunter - build_rust_installer runs-on: ubuntu-latest + strategy: + matrix: + platform: + - linux-x64 + - linux-aarch64 + - macos-intel + - macos-arm + - windows-x86_64 steps: - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 @@ -311,23 +319,19 @@ jobs: run: echo "VERSION=$(grep '^version' bin/Cargo.toml | head -n 1 | cut -d'"' -f2)" >> $GITHUB_ENV - name: Setup versioned release directory run: | - VERSIONED_DIR="rayhunter-v${{ env.VERSION }}" - mkdir "$VERSIONED_DIR" - mv rayhunter-daemon-* rootshell/rootshell installer-* dist/* installer/install.ps1 "$VERSIONED_DIR"/ - - name: Archive release directory as zip - run: | - VERSIONED_DIR="rayhunter-v${{ env.VERSION }}" - zip -r "$VERSIONED_DIR.zip" "$VERSIONED_DIR" - - name: Compute SHA256 of zip - run: | - VERSIONED_DIR="rayhunter-v${{ env.VERSION }}" - sha256sum "$VERSIONED_DIR.zip" > "$VERSIONED_DIR.zip.sha256" - # TODO: have this create a release directly + platform="${{ matrix.platform }}" + dest="rayhunter-v${{ env.VERSION }}-${{ matrix.platform }}" + mkdir "$dest" + mv installer-$platform/installer* "$dest"/installer + cp -r rayhunter-daemon-* rootshell/rootshell dist/* installer/install.ps1 "$dest"/ + zip -r "$dest.zip" "$dest" + sha256sum "$dest.zip" > "$dest.zip.sha256" + - name: Upload zip release and sha256 uses: actions/upload-artifact@v4 with: - name: rayhunter-v${{ env.VERSION }} + name: rayhunter-v${{ env.VERSION }}-${{ matrix.platform }} path: | - rayhunter-v${{ env.VERSION }}.zip - rayhunter-v${{ env.VERSION }}.zip.sha256 + rayhunter-v${{ env.VERSION }}-${{ matrix.platform }}.zip + rayhunter-v${{ env.VERSION }}-${{ matrix.platform }}.zip.sha256 if-no-files-found: error diff --git a/doc/installing-from-release-windows.md b/doc/installing-from-release-windows.md index 87d0ee4..a17bbdc 100644 --- a/doc/installing-from-release-windows.md +++ b/doc/installing-from-release-windows.md @@ -5,8 +5,8 @@ Windows support in Rayhunter's installer is a work-in-progress. Depending on the ## TP-Link 1. Connect the device via WiFi or USB Tethering -- you should be able to view the TP-Link admin page on . -2. Download the latest release (must be at least 0.3.0), and unpack the zipfile. -3. Open PowerShell or CMD in that extracted folder, and run the binary appropriate for your operating system: `./installer-windows-x86_64/installer tplink` +2. Download the latest release (must be at least 0.3.0) for windows-x86_64, and unpack the zipfile. +3. Open PowerShell or CMD in that extracted folder, the installer: `./installer tplink` 4. Follow the instructions on the screen, if there are any. ## Orbic @@ -22,10 +22,10 @@ Windows support in Rayhunter's installer is a work-in-progress. Depending on the ![Zadig](./zadig.png) 1. Click 'install driver' and wait for it to finish. -2. Download the latest `rayhunter-vX.X.X.zip` from the [Rayhunter releases page](https://github.com/EFForg/rayhunter/releases). The version you download will have numbers instead of X -3. Unzip `rayhunter-vX.X.X` . +2. Download the latest `rayhunter-vX.X.X-windows-x86_64.zip` from the [Rayhunter releases page](https://github.com/EFForg/rayhunter/releases). The version you download will have numbers instead of X +3. Unzip `rayhunter-vX.X.X-windows-x86_64` . 1. Open a powershell terminal by pressing Win+R and typing `powershell` and hitting enter. -5. Type `cd ~\Downloads\rayhunter-v\installer-windows-x86_64` (**Replace with the Rayhunter version you just unzipped**) and hit enter. +5. Type `cd ~\Downloads\rayhunter-v-windows-x86_64` (**Replace with the Rayhunter version you just unzipped**) and hit enter. 5. Run the install script: `.\installer.exe orbic` and hit enter. - The device will restart multiple times over the next few minutes. - You will know it is done when you see terminal output that says `checking for rayhunter server...success!` diff --git a/doc/installing-from-release.md b/doc/installing-from-release.md index be3af75..c87f87c 100644 --- a/doc/installing-from-release.md +++ b/doc/installing-from-release.md @@ -2,12 +2,18 @@ Make sure you've got one of Rayhunter's [supported devices](./supported-devices.md). These instructions have only been tested on macOS and Ubuntu 24.04. If they fail, you will need to [install Rayhunter from source](./installing-from-source.md). -1. Download the latest `rayhunter-vX.X.X.zip` from the [Rayhunter releases page](https://github.com/EFForg/rayhunter/releases) -2. Decompress the `rayhunter-vX.X.X.zip` archive. Open the terminal and navigate to the folder. (Be sure to replace X.X.X with the correct version number!) +1. Download the latest `rayhunter-vX.X.X-PLATFORM.zip` from the [Rayhunter releases page](https://github.com/EFForg/rayhunter/releases) for your platform: + - for Linux on x64 architecture: `linux-x64` + - for Linux on ARM64 architecture: `linux-aarch64` + - for MacOS on Intel (old macbooks) architecture: `macos-intel` + - for MacOS on ARM (M1/M2 etc.) architecture: `macos-arm` + - for Windows: `windows-x86_64` + +2. Decompress the `rayhunter-vX.X.X-PLATFORM.zip` archive. Open the terminal and navigate to the folder. (Be sure to replace X.X.X with the correct version number!) ```bash - unzip ~/Downloads/rayhunter-vX.X.X.zip - cd ~/Downloads/rayhunter-vX.X.X + unzip ~/Downloads/rayhunter-vX.X.X-PLATFORM.zip + cd ~/Downloads/rayhunter-vX.X.X-PLATFORM ``` 3. Turn on your device by holding the power button on the front. @@ -15,14 +21,7 @@ Make sure you've got one of Rayhunter's [supported devices](./supported-devices. * For the Orbic, connect the device using a USB-C cable. * For TP-Link, connect to its network using either WiFi or USB Tethering. -4. Run the install script for your operating system: - - First, enter the correct subfolder for your operating system: - - for Ubuntu on x64 architecture: `cd installer-ubuntu-24` - - for Ubuntu on ARM64 architecture: `cd installer-ubuntu-24-aarch64` - - for MacOS on Intel (old macbooks) architecture: `cd installer-macos-intel` - - for MacOS on ARM (M1/M2 etc.) architecture: `cd installer-macos-arm` - - for Windows: `cd installer-windows-x86_64` +4. Run the installer: ```bash # On MacOS, you must first remove the quarantine bit