Package Details: morphe-cli 1.10.0-1

Git Clone URL: https://aur.archlinux.org/morphe-cli.git (read-only, click to copy)
Package Base: morphe-cli
Description: Tool for patching Android apps using Morphe Patcher (CLI & GUI)
Upstream URL: https://morphe.software
Licenses: GPL-3.0-or-later
Submitter: lapsus
Maintainer: lapsus
Last Packager: lapsus
Votes: 1
Popularity: 0.61
First Submitted: 2026-02-18 20:42 (UTC)
Last Updated: 2026-07-14 13:43 (UTC)

Dependencies (2)

Required by (0)

Sources (3)

Latest Comments

duff commented on 2026-07-19 12:53 (UTC) (edited on 2026-07-19 12:55 (UTC) by duff)

i have updated the PKGBUILD for the new version and optimized / added comments:


# Maintainer: Yakov Till <yakov.till@gmail.com>

# NOTE: As of v1.11.0, the project was renamed from "Morphe CLI" to
# "Morphe Desktop" and moved to github.com/MorpheApp/morphe-desktop.
# The AUR package name stays as morphe-cli for backward compatibility.
# The JAR artifact is now named morphe-desktop-*-all.jar.

pkgname=morphe-cli
pkgver=1.11.0
pkgrel=1
pkgdesc="Tool for patching Android apps using Morphe Desktop (CLI & GUI)"
arch=('any')
url="https://github.com/MorpheApp/morphe-desktop"
license=('GPL-3.0-or-later')
depends=('java-runtime>=11')
optdepends=('android-tools: for installing patched APKs via ADB')

# The fat JAR bundles all dependencies — noextract keeps makepkg from
# unpacking it since it's a self-contained executable archive.
source=("${pkgname}-${pkgver}.jar::https://github.com/MorpheApp/morphe-desktop/releases/download/v${pkgver}/morphe-desktop-${pkgver}-all.jar"
        "https://raw.githubusercontent.com/MorpheApp/morphe-desktop/v${pkgver}/src/main/resources/morphe_logo.png"
        "https://raw.githubusercontent.com/MorpheApp/morphe-desktop/v${pkgver}/NOTICE")

sha256sums=('85c222421f07bb67098d191b9870323199fea871ddab53fcd6de915ca70e5fe6'
            'cbfcb7b7a8274e8da1b9fbb4ac9655f4322a720ca9efbe02f42a9ea53ffdb30d'
            '6c84c9f8eb03caf4fcc02950343b95d3bcab9ce585be620f8fbed4112667decf')

noextract=("${pkgname}-${pkgver}.jar")
options=('!debug')

# Fetch the latest stable release version from GitHub.
latestver() {
    gh api --paginate repos/MorpheApp/morphe-desktop/releases --jq '
        .[] | select(.prerelease == false and .draft == false)
        | .assets[]?.name
    ' | sed -nE '/^morphe-desktop-[0-9.]+-all\.jar$/{
        s/^morphe-desktop-//; s/-all\.jar$//; p; q
    }'
}

package() {
    # Install the fat JAR
    install -Dm644 "${pkgname}-${pkgver}.jar" \
        "${pkgdir}/usr/share/java/${pkgname}/${pkgname}.jar"

    # Desktop icon (used by the .desktop file and for launcher integration)
    install -Dm644 morphe_logo.png \
        "${pkgdir}/usr/share/pixmaps/morphe.png"

    # License file
    install -Dm644 NOTICE \
        "${pkgdir}/usr/share/licenses/${pkgname}/NOTICE"

    # Wrapper script — invokes the JAR via system Java
    install -d "${pkgdir}/usr/bin"
    cat > "${pkgdir}/usr/bin/${pkgname}" <<'WRAPPER'
#!/bin/sh
exec /usr/bin/java -jar /usr/share/java/morphe-cli/morphe-cli.jar "$@"
WRAPPER
    chmod 755 "${pkgdir}/usr/bin/${pkgname}"

    # Desktop entry for GUI mode
    install -d "${pkgdir}/usr/share/applications"
    cat > "${pkgdir}/usr/share/applications/morphe.desktop" << EOF
[Desktop Entry]
Type=Application
Name=Morphe Desktop
Comment=Android app patching tool
Exec=morphe-cli
Icon=morphe
Categories=Utility;
Terminal=false
EOF
}

fabian-ang commented on 2026-07-14 16:53 (UTC)

This package should be renamed to morphe-desktop as upstream changed the name.

In addition it should actually be renamed to morphe-desktop-bin since it doesn't build from source

lapsus commented on 2026-03-22 16:40 (UTC)

Oh finally. Thank you, gotta do

yochananmarqos commented on 2026-03-22 16:27 (UTC) (edited on 2026-03-22 16:27 (UTC) by yochananmarqos)

@lapsus: The GUI is included with v1.6.0. Here's a PKGBUILD diff including the icon & a desktop file (paste expires in one month).

Tips:

  • The GPL-3.0-or-later license does not need to be installed as it's included in the licenses package.
  • install -d already creates a directory with 0755 permissions