aboutsummaryrefslogtreecommitdiff
path: root/development/nchexedit
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2018-08-16 13:13:47 -0400
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2018-08-18 08:39:51 +0700
commita6be7cdbb2c5be9856e27e4bef0cf485a051ee8d (patch)
tree1b3169c55329374cc39024875dc7ba6df645cac7 /development/nchexedit
parent2926aed4ac2e3d42122eb77655fe6ce29ebabda9 (diff)
development/nchexedit: Add Debian bugfix patches.
Signed-off-by: B. Watson <yalhcru@gmail.com>
Diffstat (limited to 'development/nchexedit')
-rw-r--r--development/nchexedit/README3
-rw-r--r--development/nchexedit/fix_its_typo.patch65
-rw-r--r--development/nchexedit/nchexedit.SlackBuild40
-rw-r--r--development/nchexedit/nchexedit.info8
4 files changed, 108 insertions, 8 deletions
diff --git a/development/nchexedit/README b/development/nchexedit/README
index 2d679c68a0a73..04b6b8da1e591 100644
--- a/development/nchexedit/README
+++ b/development/nchexedit/README
@@ -9,3 +9,6 @@ can even let you view and edit your fixed disks on your Linux system.
The original name for nchexedit is "hexedit", but there's already a
hexedit on SBo (a completely different program, though it's also a hex
editor). nchexedit can be installed without conflicting with hexedit.
+
+On Debian and related systems, the package for this is called
+"ncurses-hexedit", and the binary itself is called "hexeditor".
diff --git a/development/nchexedit/fix_its_typo.patch b/development/nchexedit/fix_its_typo.patch
new file mode 100644
index 0000000000000..50d2af6bfc30d
--- /dev/null
+++ b/development/nchexedit/fix_its_typo.patch
@@ -0,0 +1,65 @@
+diff --git a/README b/README
+index f89157f..ad8c529 100644
+--- a/README
++++ b/README
+@@ -112,9 +112,9 @@ Binary Calculator Control-/
+ like the best thing to do here. Or else I'd be highlighting all
+ the rest of the file.
+ - Undo: for undo, if the modified byte is on the screen, it is reverted
+- to it's previous state. If it is not on the screen, you are brought
++ to its previous state. If it is not on the screen, you are brought
+ to the byte's location so it is viewable on the screen. The next
+- Undo command will revert the byte back to it's previous state.
++ Undo command will revert the byte back to its previous state.
+ - Environment variable HEXEDIT can be used to save your command line
+ options. Example, export HEXEDIT=-8r would put hexedit into
+ readonly mode with 8-bit printing on by default.
+@@ -124,7 +124,7 @@ BUGS - DRAWBACKS
+ - You currently can only edit files and disks up to 4.2 gigs.
+ - On SunOS if you use control-v for page down you have to do it
+ twice. This has to do with the terminal driver interpreting
+- Control-v for it's purposes. If there is a portable way to
++ Control-v for its purposes. If there is a portable way to
+ changes this let me know.
+ *** I've been informed that this is a normal terminal driver thingy.
+ Still, how do I get around it?
+diff --git a/docs/hexedit.1 b/docs/hexedit.1
+index 3f11291..dd66a7a 100644
+--- a/docs/hexedit.1
++++ b/docs/hexedit.1
+@@ -21,7 +21,7 @@ hexedit \- Full screen curses Hex editor
+ .I Hexedit
+ is an editor to edit binary (or any) files or disks. The Display consists
+ of the current offset from 0 (the first byte), the next sixteen bytes
+-(aligned by bytes or 32-bit words), and it's ASCII or EBCDIC text
++(aligned by bytes or 32-bit words), and its ASCII or EBCDIC text
+ representation.
+ .SH OPTIONS
+ .TP
+diff --git a/docs/hexedit.texi b/docs/hexedit.texi
+index 62eb729..8cb1d5a 100644
+--- a/docs/hexedit.texinfo
++++ b/docs/hexedit.texinfo
+@@ -65,7 +65,7 @@ by the Free Software Foundation.
+
+ @strong{hexedit} is a Curses based Hex editor.
+ Unlike a text editor, which is used for editing text documents in the desired language,
+-@strong{hexedit} lets you edit any file as it's byte@footnote{I assume a byte is an 8-bit
++@strong{hexedit} lets you edit any file as its byte@footnote{I assume a byte is an 8-bit
+ octet. If this is not the case, I really recommend NOT using this program.}
+ for byte representation. It can even let you view and edit your fixed disks on your Linux
+ system. This is not ideal for writing a letter or writing c code, but
+@@ -508,11 +508,11 @@ While editing a file, it is quite likely that you may make a mistake@footnote{Or
+ To facilitate this, an extensive Undo command has been implemented on your behalf.
+ @emph{Control-U} Undoes the previous change to the file. The editor keeps track
+ of all modifications, insertions, and deletions. What this means is that at any time
+-you can, if you wish, revert the file back to it's original state by a series of
++you can, if you wish, revert the file back to its original state by a series of
+ Undo's.
+
+ If you do @emph{Control-U} and the last changed byte is currently viewable
+-in the Main Window, then the cursor will relocate to that byte and revert it to it's
++in the Main Window, then the cursor will relocate to that byte and revert it to its
+ previous state. If the last changed byte is not currently viewable, the currently
+ viewable area will shift so that the changed byte is viewable. In other words, you
+ will be relocated to that part of the file, with the cursor on that byte at that
diff --git a/development/nchexedit/nchexedit.SlackBuild b/development/nchexedit/nchexedit.SlackBuild
index 6abb6564239fb..1e0c6b13b7f1f 100644
--- a/development/nchexedit/nchexedit.SlackBuild
+++ b/development/nchexedit/nchexedit.SlackBuild
@@ -10,12 +10,18 @@
# This one's full name is "[N] Curses Hexedit" so I'm packaging it
# as nchexedit.
+# We're using most of Debian's patches, the _5 in VERSION is their
+# patchlevel.
+
PRGNAM=nchexedit
-VERSION=${VERSION:-0.9.7}
-BUILD=${BUILD:-1}
+VERSION=${VERSION:-0.9.7_5}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
SRCNAM=hexedit
+SRCVER="$( echo $VERSION | cut -d_ -f1 )"
+DEBNAME="ncurses-$SRCNAM"
+DEBVER="$( echo $VERSION | cut -d_ -f2 )"
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -49,13 +55,37 @@ set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
-rm -rf $SRCNAM-$VERSION
-tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
-cd $SRCNAM-$VERSION
+rm -rf $SRCNAM-$SRCVER
+tar xvf $CWD/$SRCNAM-$SRCVER.tar.gz
+cd $SRCNAM-$SRCVER
+
+# Include most of Debian's patches. They rename the binary to 'hexeditor'
+# so we leave out the patches related to that, and a couple others that
+# are unnecessary. The ones we apply are bugfixes, a couple of which are
+# crucial (search command didn't work on 64-bit, buffer overruns, segfault
+# if the terminal's too small), and the rest are valid but nitpicky.
+tar xvf $CWD/${DEBNAME}_${SRCVER}+orig-${DEBVER}.debian.tar.xz
+rm -f debian/patches/fix_hexedit_references.patch \
+ debian/patches/hexedit_lsm.patch \
+ debian/patches/hurd_path_max.patch \
+ debian/patches/info_dir_section.patch \
+ debian/patches/rename_binaries.patch \
+ debian/patches/autoconf_2.69.patch \
+ debian/patches/fix_its_typo.patch
+
chown -R root:root .
find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
\! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
+# Apply the patches we didn't rm.
+for i in $( cat debian/patches/series ); do
+ P=debian/patches/$i
+ [ -e $P ] && patch -p1 < $P
+done
+
+# Reworked version of Debian patch.
+patch -p1 < $CWD/fix_its_typo.patch
+
# --program-prefix doesn't change the contents of the man page
sed -i \
-e 's/hexedit/nchexedit/g' \
diff --git a/development/nchexedit/nchexedit.info b/development/nchexedit/nchexedit.info
index d64111a2eeff3..8c29f0166e141 100644
--- a/development/nchexedit/nchexedit.info
+++ b/development/nchexedit/nchexedit.info
@@ -1,8 +1,10 @@
PRGNAM="nchexedit"
-VERSION="0.9.7"
+VERSION="0.9.7_5"
HOMEPAGE="http://www.rogoyski.com/adam/programs/hexedit/"
-DOWNLOAD="http://www.rogoyski.com/adam/programs/hexedit/hexedit-0.9.7.tar.gz"
-MD5SUM="2658b81ab1bd0813c0117e9459071c13"
+DOWNLOAD="http://www.rogoyski.com/adam/programs/hexedit/hexedit-0.9.7.tar.gz \
+ http://http.debian.net/debian/pool/main/n/ncurses-hexedit/ncurses-hexedit_0.9.7+orig-5.debian.tar.xz"
+MD5SUM="2658b81ab1bd0813c0117e9459071c13 \
+ 7fb8575f4709067a06895ca2fdc9712a"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""