From 2748a9b16f91fe7fe06effc352cad14928ef7660 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?John=20Ankarstr=C3=B6m?= Date: Thu, 10 Jun 2021 00:16:45 +0200 Subject: Add README --- README | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 README (limited to 'README') diff --git a/README b/README new file mode 100644 index 0000000..ca429cb --- /dev/null +++ b/README @@ -0,0 +1,51 @@ +This folder contains my patches for various pkgsrc packages. +This README describes how to create and apply them. + += Modifying a package = + + cd /usr/pkgsrc/path-to/package + make fetch + cd /usr/pkgsrc/distfiles + tar xf archived-package.tgz + cd extracted-package/ + git init + +I like tracking my modifications with Git, if only temporarily. + += Generating a patch = + + cd /path-to/extracted-package/ + git diff ... | conv -i + +The resulting patch will be placed in ~/patches. + += Applying a patch = + +Be sure to set the LOCALPATCHES variable in mk.conf: + + echo LOCALPATCHES = $HOME/patches >> /etc/mk.conf + +After that, local patches will be applied automatically, assuming +they are formatted correctly and placed in the correct directory. + += Undoing patches = + +I haven't tried it yet, but the following command should work: + + cd /usr/pkgsrc/path-to/package/work/ + find . -name '*.orig' | while read f; do + mv "$f" "${f%.orig}" + done + +It probably won't work if you've tried to apply patches twice, as +each do-patch theoretically presumably creates new .orig files. + += Rebuilding with new patch = + +First, you may want to undo the old patches as described above. + + make do-patch + make do-build + +The first step will complain if patches have already been applied +(and not undone), but your new patch should be applied regardless. -- cgit v1.2.3