From 71a90d55f7797d504970c691213f2fd48bb8ab54 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Ankarstr=C3=B6m?= Date: Tue, 15 Jun 2021 08:42:18 +0200 Subject: Add undopatch script --- README | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) (limited to 'README') diff --git a/README b/README index ca429cb..13f65cb 100644 --- a/README +++ b/README @@ -30,15 +30,21 @@ they are formatted correctly and placed in the correct directory. = Undoing patches = -I haven't tried it yet, but the following command should work: +In order to undo all patches, you need to extract the original +files from the downloaded archive. - cd /usr/pkgsrc/path-to/package/work/ + cd /usr/pkgsrc/path-to/package + w=/usr/pkgsrc/distfiles/$(sed -n '/.*(\(.*\)).*/{s//\1/;p;q}' distinfo) + cd $(dirname $w) + tar xf $w + cd - find . -name '*.orig' | while read f; do - mv "$f" "${f%.orig}" + f=${f%.orig} + cp $w/${f#work/} $f done -It probably won't work if you've tried to apply patches twice, as -each do-patch theoretically presumably creates new .orig files. +It is not reliable to restore the original files using the .orig +files, as multiple patches may have been applied to the same file. = Rebuilding with new patch = -- cgit v1.2.3