From b230631ed16bc913330a3c458b54793f67c16782 Mon Sep 17 00:00:00 2001 From: Rot127 Date: Sun, 6 Jul 2025 14:40:10 -0500 Subject: [PATCH 1/5] Add +plugins suffix to package name to prevent confusion what is included. --- .github/workflows/ci.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 82ee8410f..c4c967d3e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -249,7 +249,7 @@ jobs: chmod a+x linuxdeployqt*.AppImage rm -fv "../cutter-deps/qt/plugins/imageformats/libqjp2.so" if [ "${{ matrix.qt-major }}" == "5" ]; then - export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-Qt5-x86_64.AppImage" + export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-Qt5-x86_64+plugins.AppImage" ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop \ -executable=./appdir/usr/bin/python3 \ -appimage \ @@ -257,7 +257,7 @@ jobs: -ignore-glob=usr/lib/python3.12/**/* \ -verbose=2 else - export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-x86_64.AppImage" + export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-x86_64+plugins.AppImage" ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop \ -executable=./appdir/usr/bin/python3 \ -appimage \ @@ -465,7 +465,7 @@ jobs: export PATH=/usr/local/opt/llvm/bin:$PATH mkdir build cd build - PACKAGE_NAME=Cutter-${PACKAGE_ID}-macOS-${{ matrix.arch }} + PACKAGE_NAME=Cutter-${PACKAGE_ID}-macOS-${{ matrix.arch }}+plugins cmake \ -DCMAKE_BUILD_TYPE=Release \ -DPython3_ROOT_DIR="${CUTTER_DEPS_PYTHON_PREFIX}" \ @@ -515,7 +515,7 @@ jobs: cd mkdir build cd build - set PACKAGE_NAME=Cutter-%PACKAGE_ID%-Windows-x86_64 + set PACKAGE_NAME=Cutter-%PACKAGE_ID%-Windows-x86_64+plugins cmake ^ -DCMAKE_BUILD_TYPE=Release ^ -DCUTTER_USE_BUNDLED_RIZIN=ON ^ From 64e23ead6b87c70d90f26859b9747ccb9da20ddd Mon Sep 17 00:00:00 2001 From: Rot127 Date: Sun, 6 Jul 2025 14:44:02 -0500 Subject: [PATCH 2/5] Add note about plugins bein included in the package --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index cd52b08af..53d2ea494 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,9 @@ Cutter is a free and open-source reverse engineering platform powered by [rizin] Cutter release binaries for all major platforms (Linux, macOS, Windows) can be downloaded from [GitHub Releases](https://github.com/rizinorg/cutter/releases). +> [!NOTE] +> The packages already includes all maintained plugins like rz-ghidra and others. + - **Linux**: If your distribution provides it, check for `cutter` package in your package manager (or `cutter-re` / `rz-cutter`). If not available there, we have setup repositories in [OBS](https://openbuildservice.org/) for some common distributions. Look at [https://software.opensuse.org/package/cutter-re](https://software.opensuse.org/download/package?package=cutter-re&project=home%3ARizinOrg) and follow the instructions there. Otherwise download the `.AppImage` file from our release, make it executable and run as below or use [AppImageLauncher](https://github.com/TheAssassin/AppImageLauncher). `chmod +x Cutter*.AppImage; ./Cutter*.AppImage` From dad76d0ee193e8218a2b4a577022969008e2f4d6 Mon Sep 17 00:00:00 2001 From: Rot127 Date: Mon, 7 Jul 2025 07:44:32 -0500 Subject: [PATCH 3/5] Add list of plugins bundled with Cutter. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 53d2ea494..1756ae4e7 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,7 @@ Cutter is a free and open-source reverse engineering platform powered by [rizin] Cutter release binaries for all major platforms (Linux, macOS, Windows) can be downloaded from [GitHub Releases](https://github.com/rizinorg/cutter/releases). > [!NOTE] -> The packages already includes all maintained plugins like rz-ghidra and others. +> The packages already includes the [plugins](https://github.com/rizinorg/cutter-plugins): rz-ghidra, rz-silhouette, JsDec, swift demangler, yara. - **Linux**: If your distribution provides it, check for `cutter` package in your package manager (or `cutter-re` / `rz-cutter`). If not available there, we have setup repositories in [OBS](https://openbuildservice.org/) for some common distributions. Look at [https://software.opensuse.org/package/cutter-re](https://software.opensuse.org/download/package?package=cutter-re&project=home%3ARizinOrg) and follow the instructions there. Otherwise download the `.AppImage` file from our release, make it executable and run as below or use [AppImageLauncher](https://github.com/TheAssassin/AppImageLauncher). From 07b6f7ff9bef504bb8936b84d97fee098b01fe74 Mon Sep 17 00:00:00 2001 From: Rot127 Date: Mon, 7 Jul 2025 07:47:17 -0500 Subject: [PATCH 4/5] Only rename .dmg packages, not the .app ones. --- .github/workflows/ci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c4c967d3e..f28e966d9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -465,7 +465,7 @@ jobs: export PATH=/usr/local/opt/llvm/bin:$PATH mkdir build cd build - PACKAGE_NAME=Cutter-${PACKAGE_ID}-macOS-${{ matrix.arch }}+plugins + PACKAGE_NAME=Cutter-${PACKAGE_ID}-macOS-${{ matrix.arch }} cmake \ -DCMAKE_BUILD_TYPE=Release \ -DPython3_ROOT_DIR="${CUTTER_DEPS_PYTHON_PREFIX}" \ @@ -494,8 +494,8 @@ jobs: echo waiting for XProtectBehaviorService kill; while pgrep XProtect; do sleep 3; done; retry make package export CUTTER_VERSION=$(python3 ../scripts/get_version.py) - echo PACKAGE_NAME=${PACKAGE_NAME}.dmg >> $GITHUB_ENV - echo PACKAGE_PATH=build/${PACKAGE_NAME}.dmg >> $GITHUB_ENV + echo PACKAGE_NAME=${PACKAGE_NAME}+plugins.dmg >> $GITHUB_ENV + echo PACKAGE_PATH=build/${PACKAGE_NAME}+plugins.dmg >> $GITHUB_ENV echo UPLOAD_ASSET_TYPE=application/x-apple-diskimage >> $GITHUB_ENV - name: windows dependencies if: contains(matrix.os, 'windows') From d48b261074569a54b3a98896c8b36cebd6bf92ed Mon Sep 17 00:00:00 2001 From: Rot127 Date: Tue, 8 Jul 2025 06:42:39 -0500 Subject: [PATCH 5/5] +plugins -> -with-plugins. --- .github/workflows/ci.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f28e966d9..71a34ae17 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -249,7 +249,7 @@ jobs: chmod a+x linuxdeployqt*.AppImage rm -fv "../cutter-deps/qt/plugins/imageformats/libqjp2.so" if [ "${{ matrix.qt-major }}" == "5" ]; then - export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-Qt5-x86_64+plugins.AppImage" + export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-Qt5-x86_64-with-plugins.AppImage" ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop \ -executable=./appdir/usr/bin/python3 \ -appimage \ @@ -257,7 +257,7 @@ jobs: -ignore-glob=usr/lib/python3.12/**/* \ -verbose=2 else - export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-x86_64+plugins.AppImage" + export APPIMAGE_FILE="Cutter-${PACKAGE_ID}-Linux-x86_64-with-plugins.AppImage" ./linuxdeployqt*.AppImage ./appdir/usr/share/applications/*.desktop \ -executable=./appdir/usr/bin/python3 \ -appimage \ @@ -494,8 +494,8 @@ jobs: echo waiting for XProtectBehaviorService kill; while pgrep XProtect; do sleep 3; done; retry make package export CUTTER_VERSION=$(python3 ../scripts/get_version.py) - echo PACKAGE_NAME=${PACKAGE_NAME}+plugins.dmg >> $GITHUB_ENV - echo PACKAGE_PATH=build/${PACKAGE_NAME}+plugins.dmg >> $GITHUB_ENV + echo PACKAGE_NAME=${PACKAGE_NAME}-with-plugins.dmg >> $GITHUB_ENV + echo PACKAGE_PATH=build/${PACKAGE_NAME}-with-plugins.dmg >> $GITHUB_ENV echo UPLOAD_ASSET_TYPE=application/x-apple-diskimage >> $GITHUB_ENV - name: windows dependencies if: contains(matrix.os, 'windows') @@ -515,7 +515,7 @@ jobs: cd mkdir build cd build - set PACKAGE_NAME=Cutter-%PACKAGE_ID%-Windows-x86_64+plugins + set PACKAGE_NAME=Cutter-%PACKAGE_ID%-Windows-x86_64-with-plugins cmake ^ -DCMAKE_BUILD_TYPE=Release ^ -DCUTTER_USE_BUNDLED_RIZIN=ON ^