From 9fc91b8eb0e642b498668359bbb1c6fa5be1f183 Mon Sep 17 00:00:00 2001 From: William Tan <1284324+Ninja3047@users.noreply.github.com> Date: Mon, 11 Aug 2025 16:01:33 -0700 Subject: [PATCH] Package lldb for distros (#3195) * add pwndbg-lldb for deb/rpm/apk/pkg.tar.zst * update CI to package lldb for distros --- .github/workflows/releases.yml | 4 ++++ flake.nix | 12 +++++++++++- nix/bundle/nfpm-lldb.yaml | 18 ++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 nix/bundle/nfpm-lldb.yaml diff --git a/.github/workflows/releases.yml b/.github/workflows/releases.yml index 393f08bed..929c2912c 100644 --- a/.github/workflows/releases.yml +++ b/.github/workflows/releases.yml @@ -66,6 +66,10 @@ jobs: pwndbg-gdb-portable-deb, pwndbg-gdb-portable-apk, pwndbg-gdb-portable-archlinux, + pwndbg-lldb-portable-rpm, + pwndbg-lldb-portable-deb, + pwndbg-lldb-portable-apk, + pwndbg-lldb-portable-archlinux, ] runs-on: ${{ matrix.os }} timeout-minutes: 60 diff --git a/flake.nix b/flake.nix index 3f73da9b3..fab814129 100644 --- a/flake.nix +++ b/flake.nix @@ -160,7 +160,17 @@ config = ./nix/bundle/nfpm.yaml; } ) - ) + ) // + mapKeysWithName (name: "pwndbg-lldb-portable-${name}") ( + forPortables ( + packager: + pkgUtil.${system}.buildPackagePFPM { + inherit packager; + drv = portableDrvLldb system; + config = ./nix/bundle/nfpm-lldb.yaml; + } + ) + ) ); tarballDrv = system: { "pwndbg-gdb-portable-tarball" = pkgUtil.${system}.buildPackageTarball { drv = portableDrv system; }; diff --git a/nix/bundle/nfpm-lldb.yaml b/nix/bundle/nfpm-lldb.yaml new file mode 100644 index 000000000..0cc268987 --- /dev/null +++ b/nix/bundle/nfpm-lldb.yaml @@ -0,0 +1,18 @@ +name: "pwndbg-lldb" +arch: "${ARCH}" +platform: "linux" +version: "${VERSION}" +version_schema: none +section: "default" +priority: "extra" +maintainer: "Dominik 'disconnect3d' Czarnota " +description: | + Exploit Development and Reverse Engineering with GDB Made Easy +homepage: "https://github.com/pwndbg/pwndbg" +license: "MIT" +contents: +- src: /usr/lib/pwndbg-lldb/bin/pwndbg-lldb + dst: /usr/bin/pwndbg-lldb + type: symlink +- src: ./result/pwndbg + dst: /usr/lib/pwndbg-lldb