system/fdclone: Added (two-pane textmode file manager)

Signed-off-by: Dave Woodfall <dave@slackbuilds.org>

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2020-11-20 12:59:22 +00:00 committed by Willy Sudiarto Raharjo
parent dd62de1279
commit 6c237e00fe
No known key found for this signature in database
GPG key ID: 3F617144D7238786
8 changed files with 936 additions and 0 deletions

View file

@ -0,0 +1,85 @@
Description: configure fdclone for works properly under Debian
This allows for customize fdclone configuration for works
properly under Debian. Originally 01_previous_changes.dpatch
Author: Sandro Tosi <matrixhasu@gmail.com>
Index: fdclone/Configur
===================================================================
--- fdclone.orig/Configur
+++ fdclone/Configur
@@ -679,12 +679,7 @@ fi
if isexist "sysconf(0)"; then
echo "#define USESYSCONF"
fi
-if isexist "_llseek(0,0,0,0,0)" linux/unistd "static _syscall5(int, _llseek,
- unsigned int, fd,
- unsigned long, ofs_h,
- unsigned long, ofs_l,
- long long *, result,
- unsigned int, whence);
+if isexist "_llseek(0,0,0,0,0)" "sys/syscall" "#define _llseek(fd, ofs_h, ofs_l, result, whence) syscall(SYS__llseek, fd, ofs_h, ofs_l, result, whence)
"; then
echo "#define USELLSEEK"
fi
Index: fdclone/config.hin
===================================================================
--- fdclone.orig/config.hin
+++ fdclone/config.hin
@@ -3,4 +3,4 @@
*
* definitions for each OS
*/
-
+#define USEDATADIR
Index: fdclone/dosdisk.c
===================================================================
--- fdclone.orig/dosdisk.c
+++ fdclone/dosdisk.c
@@ -23,6 +23,7 @@
#include "mntinfo.h"
#include <sys/mount.h>
#include <linux/unistd.h>
+#include <sys/syscall.h>
# ifndef BLKFLSBUF
# include <linux/fs.h>
# endif
@@ -378,12 +379,7 @@ static CONST char *inhibitname[] = INHIB
#ifdef USELLSEEK
# ifdef _syscall5
# undef _llseek
-static _syscall5(int, _llseek,
- u_int, fd,
- u_long, ofs_h,
- u_long, ofs_l,
- l_off_t *, result,
- u_int, whence);
+#define _llseek(fd, ofs_h, ofs_l, result, whence) syscall(SYS__llseek, fd, ofs_h, ofs_l, result, whence)
# endif
static l_off_t NEAR Xllseek(fd, offset, whence)
Index: fdclone/fd.h
===================================================================
--- fdclone.orig/fd.h
+++ fdclone/fd.h
@@ -95,8 +95,8 @@ extern char *_mtrace_file;
* If you don't like the following tools as each uses, *
* you should rewrite another suitable command name. *
****************************************************************/
-#define PAGER "more%K" /* to view file */
-#define EDITOR "vi" /* to edit file */
+#define PAGER "/usr/bin/pager" /* to view file */
+#define EDITOR "/usr/bin/editor" /* to edit file */
/****************************************************************
Index: fdclone/version.h
===================================================================
--- fdclone.orig/version.h
+++ fdclone/version.h
@@ -4,5 +4,5 @@
* version number
*/
-char *distributor = NULL;
+char *distributor = "sano@debian.org (Taketoshi Sano)";
static char version[] = "@(#)fd.c 3.01j 07/27/19";

View file

@ -0,0 +1,53 @@
Description: install files in the correctly Debian's path
This setting values to install files in the correctly Debian's path.
Index: fdclone/Makefile.in
===================================================================
--- fdclone.orig/Makefile.in
+++ fdclone/Makefile.in
@@ -12,7 +12,7 @@ MANSEC = 1
BINTOP = $(PREFIX)/bin
BINDIR = $(BUILD)$(BINTOP)
DATATOP = $(PREFIX)/share
-DATADIR = $(BUILD)$(DATATOP)/fd
+DATADIR = $(BUILD)$(DATATOP)/fdclone
MANTOP = $(PREFIX)/man
MANDIR = $(BUILD)$(MANTOP)/man$(MANSEC)
CATDIR = $(BUILD)$(MANTOP)/cat$(MANSEC)
@@ -484,24 +484,24 @@ install-runcom:
install-table: $(TABLE) mkdir_p$(EXE)
-if [ -f $(UNITBL) ]; then \
- [ -d __DATADIR__ ] || ./mkdir_p$(EXE) __DATADIR__; \
- $(INSTALL) $(UNITBL) __DATADIR__; \
- $(CHMOD) a+r-x __DATADIR__/$(UNITBL); \
+ [ -d $(DATADIR) ] || ./mkdir_p$(EXE) $(DATADIR); \
+ $(INSTALL) $(UNITBL) $(DATADIR); \
+ $(CHMOD) a+r-x $(DATADIR)/$(UNITBL); \
fi
-if [ -f $(DICTTBL) ]; then \
- [ -d __DATADIR__ ] || ./mkdir_p$(EXE) __DATADIR__; \
- $(INSTALL) $(DICTTBL) __DATADIR__; \
- $(CHMOD) a+r-x __DATADIR__/$(DICTTBL); \
+ [ -d $(DATADIR) ] || ./mkdir_p$(EXE) $(DATADIR); \
+ $(INSTALL) $(DICTTBL) $(DATADIR); \
+ $(CHMOD) a+r-x $(DATADIR)/$(DICTTBL); \
fi
-if [ -f $(CATTBL) ]; then \
- [ -d __DATADIR2__ ] || ./mkdir_p$(EXE) __DATADIR2__; \
- $(INSTALL) $(CATTBL) __DATADIR2__; \
- $(CHMOD) a+r-x __DATADIR2__/$(CATTBL); \
+ [ -d $(DATADIR)/$(VERSION) ] || ./mkdir_p$(EXE) $(DATADIR)/$(VERSION); \
+ $(INSTALL) $(CATTBL) $(DATADIR)/$(VERSION); \
+ $(CHMOD) a+r-x $(DATADIR)/$(VERSION)/$(CATTBL); \
fi
-if [ -f $(ECATTBL) ]; then \
- [ -d __DATADIR2__ ] || ./mkdir_p$(EXE) __DATADIR2__; \
- $(INSTALL) $(ECATTBL) __DATADIR2__; \
- $(CHMOD) a+r-x __DATADIR2__/$(ECATTBL); \
+ [ -d $(DATADIR)/$(VERSION) ] || ./mkdir_p$(EXE) $(DATADIR)/$(VERSION); \
+ $(INSTALL) $(ECATTBL) $(DATADIR)/$(VERSION) ; \
+ $(CHMOD) a+r-x $(DATADIR)/$(VERSION)/$(ECATTBL); \
fi
install-man: $(MANSRC) mkdir_p$(EXE)

12
system/fdclone/README Normal file
View file

@ -0,0 +1,12 @@
fdclone (two-pane textmode file manager)
FDclone is a file & directory maintenance tool for UNIX-based OSes. It
is a clone of "FD" for MS-DOS, made by Mr. A.Idei in 1989.
fdclone has excellent Japanese language UI, documentation, and
character encoding support, since it originates in Japan.
The executable is installed as /usr/bin/fdclone, which means this
build doesn't conflict with system/fd. However, if you don't have fd
installed, a symlink /usr/bin/fd is created so you can just type "fd"
to run this.

22
system/fdclone/doinst.sh Normal file
View file

@ -0,0 +1,22 @@
config() {
NEW="$1"
OLD="$(dirname $NEW)/$(basename $NEW .new)"
if [ ! -r $OLD ]; then
mv $NEW $OLD
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
# toss the redundant copy
rm $NEW
fi
}
config etc/fdclone/fd2rc.siteconfig.new
# If there's no fd link, take over:
if [ ! -r usr/bin/fd ]; then
( cd usr/bin ; rm -rf fd )
( cd usr/bin ; ln -sf fdclone fd )
( cd usr/man/man1 ; rm -rf fd.1.gz )
( cd usr/man/man1 ; ln -sf fdclone.1.gz fd.1.gz )
( cd usr/man/ja/man1 ; rm -rf fd.1.gz )
( cd usr/man/ja/man1 ; ln -sf fdclone.1.gz fd.1.gz )
fi

613
system/fdclone/fd2rc Normal file
View file

@ -0,0 +1,613 @@
# /etc/fdclone/fd2rc: Initialize file for FD
#
# This Slackware package provides /etc/fdclone/fd2rc.siteconfig for
# site specific settings. Please use it for your customization,
# and leave this file alone for smooth upgrade.
#
# 20201118 bkw:
# This file was taken from the Debian package, and modified slightly.
# To see the changes, search within the file for the string "bkw:".
#
# There are some settings in this configuration file
# which differ from the upstream default:
#
# DISPLAYMODE=3 (sym-link status & file type symbol)
# ADJTTY=1 (adjust TTY when exiting)
# TMPDIR=$HOME (for security reasons)
# TMPUMASK=077 (same above)
# LANGUAGE=$LANG (bkw: and MESSAGELANG=$LANG)
# INPUTKCODE=$LANG
# FNAMEKCODE=$LANG
#
# Launcher settings
# for files with suffix as .zip, .Z, .gz. .bz2
# for deb package (.deb) and rpm package (.rpm)
# Archiver settings
# for files with suffix as .zip
# for deb package (.deb) and rpm package (.rpm)
#
# Some keycode settings for linux console, xterm, and kterm.
#
# fdclone can use the environment variables PAGER and EDITOR,
# but the settings from the configuration file such as
# /etc/fdclone/fd2rc or $HOME/.fd2rc will be prefered and
# the settings in the environment variables are ignored in
# this case.
# (/etc/fdclone/fd2rc includes /etc/fdclone/fd2rc.siteconfig)
#
# So the default runcom file (i.e. this file, /etc/fdclone/fd2rc)
# in this package don't set these variables as default.
# If you like to set the PAGER&EDITOR settings as the site default,
# plese put the following 2 lines in /etc/fdclone/fd2rc.siteconfig.
#
# PAGER=/usr/bin/pager%K (or the pager which you like)
# EDITOR=/usr/bin/editor (or the editor which you like)
#
# `%K' means that fd waits for the key input when the pager finishes.
# This is useful for simple pagers such like `more', since they just
# quits soon when they show all the contents of the specified file.
# But if you use others such like `less' or `lv', then you wish to
# disable this by eliminating `%K' at the end, since the pager itself
# prompts user to quit.
# Please refer the manual page of `fd' for more detail.
# to set default sort type
# 0: not sort (Default)
# 1: alphabetical 9: alphabetical (reversal)
# 2: extension 10: extension (reversal)
# 3: size 11: size (reversal)
# 4: date 12: date (reversal)
# 5: length 13: length (reversal)
# 100-113: preserve previous sort type
# (the least 2 digits are effective just after initialize)
#SORTTYPE=0
# to set default display mode
# 0: normal (Default)
# 1: sym-link status
# 2: file type symbol
# 3: sym-link status & file type symbol
# 4: invisible dot file
# 5: sym-link status & invisible dot file
# 6: file type symbol & invisible dot file
# 7: sym-link status & file type symbol & invisible dot file
DISPLAYMODE=3
# whether if sort or not in tree mode
# 0: not sort (Default)
# >= 1: sort according to SORTTYPE
#SORTTREE=0
# behavior about writing over directory on file system
# 0: confirm to write or not, after directory arranged (Default)
# 1: write directory only if commanded
# 2: never write over directory even if commanded
#WRITEFS=0
# whether if ignore uppercase or lowercase in filename comparison
# 0: not ignore (Default)
# >= 1: ignore
#IGNORECASE=0
# whether if inherit timestamp or not when copying
# 0: not inherit (Default)
# >= 1: inherit
#INHERITCOPY=0
# whether if adjust tty or not when exiting
# 0: not adjust (Default)
# >= 1: adjust
ADJTTY=1
# whether if prioritize VT100 escape sequence or not for getting terminal size
# 0: not prioritize (Default)
# >= 1: prioritize
#USEGETCURSOR=0
# to set default columns of file in 1 line
# 1: 1 column
# 2: 2 columns (Default)
# 3: 3 columns
# 5: 5 columns
#DEFCOLUMNS=2
# minimum columns of filename field
# Default: 12
#MINFILENAME=12
# history file of sh mode
# Default: ~/.fd_history
#HISTFILE=~/.fd_history
# history size of sh mode
# Default: 50
#HISTSIZE=50
# history size of path input
# Default: 50
#DIRHIST=50
# size of saved history
# Default: 50
#SAVEHIST=50
# limit of counting files in directory, on tree mode
# Default: 50
#DIRCOUNTLIMIT=50
# whether if make MS-DOS drive effective
# 0: not use (Default)
# >= 1: effective
#DOSDRIVE=0
# whether if display the second hand of clock
# 0: not display (Default)
# >= 1: display
#SECOND=0
# whether if use the screen layout based on the traditional "FD"
# 0: original layout (Default)
# >= 1: traditional layout
#TRADLAYOUT=0
# whether if show the info. of filesize
# 0: not show (Default)
# >= 1: show
#SIZEINFO=0
# whether if support ANSI color escape sequence
# 0: monochrome (Default)
# 1: color
# 2: color & force background to blacken
# 3: color & force foreground to blacken
# 20201118 bkw: enable this by default, it's 2020 and you should be using
# a terminal that supports color by now.
ANSICOLOR=2
# specify color palette in the ANSI color mode
# Default: none
# 0: black
# 1: red
# 2: green
# 3: yellow
# 4: blue
# 5: magenta
# 6: cyan
# 7: white
# 8: default color for foreground
# 9: default color for background
# default palette: 8962435188
# ||||||||||
# normal file -----+|||||||||
# background -------+||||||||
# directory ---------+|||||||
# unwritable ---------+||||||
# unreadable ----------+|||||
# symbolic link --------+||||
# socket ----------------+|||
# fifo (named pipe) ------+||
# block device ------------+|
# character device ---------+
# 20201118 bkw: set the default here
ANSIPALETTE="8962435188"
# select edit mode with your favorite editor type
# emacs: ^P, ^N, ^F, ^B, ... (Default)
# wordstar ^E, ^X, ^D, ^S, ...
# vi: k, j, l, h, ...
#EDITMODE=emacs
# whether if loop cursor moving within the same page
# 0: not loop (Default)
# >= 1: loop
#LOOPCURSOR=0
# temporary directory where archive file is unpacked
# Default: /tmp
TMPDIR=$HOME
# file creation mask for the temporary directory
# Default: 022
TMPUMASK=077
# mount point of CD-ROM with iso-9660 rock ridge format
# Default: none
#RRPATH=""
# directories on which browsing precedes getting file status
# Default: none
#PRECEDEPATH=""
# shell prompt strings
# Default: "$ "
#PS1="$ "
# continuous shell prompt strings
# Default: "> "
#PS2="> "
# whether if not use control sequences in the internal shell
# 0: use (Default)
# >= 1: not use
#DUMBSHELL=0
# whether if hold the UNICODE translation table on memory
# 0: not hold (Default)
# >= 1: hold
#UNICODEBUFFER=0
# language code type to display
# Default: No convert
# euc, EUC: EUC-JP
# sjis, SJIS: Shift JIS
# jis, JIS: 7bits JIS
# jis8, JIS8: 8bits JIS
# junet, JUNET: ISO-2022-JP
# ojis, OJIS: old 7bits JIS
# ojis8, OJIS8: old 8bits JIS
# ojunet, OJUNET: old ISO-2022-JP
# utf8, UTF8: UTF-8
# utf8-mac, UTF8-MAC: UTF-8 for Mac OS X
# eng, ENG, C: English
LANGUAGE=$LANG
# 20201118 bkw: makes no sense not to set this also!
MESSAGELANG=$LANG
# language code type to input
# Default: No convert
# euc, EUC: EUC-JP
# sjis, SJIS: Shift JIS
# utf8, UTF8: UTF-8
# utf8-mac, UTF8-MAC: UTF-8 for Mac OS X
INPUTKCODE=$LANG
# language code type in filename
# Default: No convert
# euc, EUC: EUC-JP
# sjis, SJIS: Shift JIS
# jis, JIS: 7bits JIS
# jis8, JIS8: 8bits JIS
# junet, JUNET: ISO-2022-JP
# ojis, OJIS: old 7bits JIS
# ojis8, OJIS8: old 8bits JIS
# ojunet, OJUNET: old ISO-2022-JP
# hex, HEX: HEX
# cap, CAP: CAP
# utf8, UTF8: UTF-8
# utf8-mac, UTF8-MAC: UTF-8 for Mac OS X
FNAMEKCODE=$LANG
# directories on which language code type in filename is SJIS
# Default: none
#SJISPATH=""
# directories on which language code type in filename is EUC-JP
# Default: none
#EUCPATH=""
# directories on which language code type in filename is 7bits JIS
# Default: none
#JISPATH=""
# directories on which language code type in filename is 8bits JIS
# Default: none
#JIS8PATH=""
# directories on which language code type in filename is ISO-2022-JP
# Default: none
#JUNETPATH=""
# directories on which language code type in filename is old 7bits JIS
# Default: none
#OJISPATH=""
# directories on which language code type in filename is old 8bits JIS
# Default: none
#OJIS8PATH=""
# directories on which language code type in filename is old ISO-2022-JP
# Default: none
#OJUNETPATH=""
# directories on which language code type in filename is HEX
# Default: none
#HEXPATH=""
# directories on which language code type in filename is CAP
# Default: none
#CAPPATH=""
# directories on which language code type in filename is UTF-8
# Default: none
#UTF8PATH=""
# directories on which language code type in filename is UTF-8 for Mac OS X
# Default: none
#UTF8MACPATH=""
# directories on which language code type in filename is not converted
# Default: none
#NOCONVPATH=""
#PAGER=more%K
#EDITOR=vi
#SHELL=/bin/sh
# for Mischievous Japanese OS (see `man fd')
#export LANG=C
# launcher definition
#(Default)
#launch ".lzh" "lha l" \
# -f "%a %u/%g %s %x %m %d %{yt} %*f" \
# -f "%9a %u/%g %s %x %m %d %{yt} %*f" \
# -i " PERMSSN * UID*GID *" \
# -i "----------*" \
# -i " Total * file* ???.*%*" \
#launch ".tar" "tar tvf" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#launch ".tar.Z" "zcat %C|tar tvf -" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#launch ".tar.gz" "gzip -cd %C|tar tvf -" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#launch ".tar.bz2" "bzip2 -cd %C|tar tvf -" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#launch ".taZ" "zcat %C|tar tvf -" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#launch ".taz" "gzip -cd %C|tar tvf -" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#launch ".tgz" "gzip -cd %C|tar tvf -" \
# -f "%a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %s %y-%m-%d %t %*f" \
# -f "%a %l %u %g %s %m %d %{yt} %*f" \
# -f "%10a %u/%g %s %m %d %t %y %*f" \
# -f "%9a %u/%g %s %m %d %t %y %*f" \
# -f "%a %u/%g %m %d %t %y %*f"
#(Examples)
launch ".zip" "unzip -lqq" " %s %m-%d-%y %t %*f"
#launch ".zoo" "zoo lq" " %s %x %x %d %m %y %t %*f"
#launch ".rar" "unrar v" \
# -f " %*f\n%s %x %x %d-%m-%y %t %a" \
# -i "UNRAR *" \
# -i "RAR *" \
# -i "Shareware version *" \
# -i "Verifying authenticity *" \
# -i "Solid archive *" \
# -i "Archive *" \
# -i "Pathname/Comment" \
# -i "Size * Packed *" \
# -i "----------*" \
# -i "* * * ??%" \
# -i "Old style *" \
# -i "Archive *.rar" \
# -i "created at ??:??:?? *" \
# -i "by * *" \
# -i ""
launch ".Z" "zcat %C|$PAGER"
launch ".gz" "gzip -cd %C|$PAGER"
launch ".bz2" "bzip2 -cd %C|$PAGER"
# examples for MS-DOS
#launch ".lzh" "lha v %S" %
# -f "%*f\n%s %x %x %y-%m-%d %t %a" %
# -f "%1x %12f %s %x %x %y-%m-%d %t %a" %
# -i "Listing of archive : *" %
# -i " Name Original *" %
# -i "--------------*" %
# -i "* files * ???.?%%%% ??-??-?? ??:??:??" %
# -i ""
#launch ".tar.Z" "gzip -cd %S|tar tvf -" %
# -f "%a %u/%g %s %m %d %t %y %*f" %
# -f "%a %u/%g %s %y-%m-%d %t %*f" %
# -f "%a %u/%g %s %m %d %y %t %*f" %
#launch ".tar.gz" "gzip -cd %S|tar tvf -" %
# -f "%a %u/%g %s %m %d %t %y %*f" %
# -f "%a %u/%g %s %y-%m-%d %t %*f" %
# -f "%a %u/%g %s %m %d %y %t %*f" %
#launch ".tar.bz2" "bzip2 -cd %S|tar tvf -" %
# -f "%a %u/%g %s %m %d %t %y %*f" %
# -f "%a %u/%g %s %y-%m-%d %t %*f" %
# -f "%a %u/%g %s %m %d %y %t %*f" %
#launch ".taz" "gzip -cd %S|tar tvf -" %
# -f "%a %u/%g %s %m %d %t %y %*f" %
# -f "%a %u/%g %s %y-%m-%d %t %*f" %
# -f "%a %u/%g %s %m %d %y %t %*f" %
#launch ".tgz" "gzip -cd %S|tar tvf -" %
# -f "%a %u/%g %s %m %d %t %y %*f" %
# -f "%a %u/%g %s %y-%m-%d %t %*f" %
# -f "%a %u/%g %s %m %d %y %t %*f" %
#launch ".zip" "unzip -lqq %S" " %s %y-%m-%d %t %*f"
#launch ".zip" "pkunzip -vb %S" " %s %x %x %x %y-%m-%d %t %*f" 14 2
#
# Debian package settings
launch ".deb" "ar p %C data.tar.gz|gzip -dc|tar tvf - "\
"%a %u/%g %s %y-%m-%d %t %f"
launch ".rpm" "rpm2cpio %C|cpio -tv" "%a %x %u %g %s %m %d %y %f"
# archiver definition
#(Default)
# 20201118 bkw: uncommented these
arch ".lzh" "lha aq %C %TA" "lha xq %C %TA"
arch ".tar" "tar cf %C %T" "tar xf %C %TA"
arch ".tar.Z" "tar cf - %T|compress -c > %C" "zcat %C|tar xf - %TA"
arch ".tar.gz" "tar cf - %T|gzip -c > %C" "gzip -cd %C|tar xf - %TA"
arch ".tar.bz2" \
"tar cf - %T|bzip2 -c > %C" "bzip2 -cd %C|tar xf - %TA"
arch ".taZ" "tar cf - %T|compress -c > %C" "zcat %C|tar xf - %TA"
arch ".taz" "tar cf - %T|gzip -c > %C" "gzip -cd %C|tar xf - %TA"
arch ".tgz" "tar cf - %T|gzip -c > %C" "gzip -cd %C|tar xf - %TA"
#(Examples)
arch ".zip" "zip -q %C %TA" "unzip -q %C %TA"
arch ".zoo" "zoo aq %C %TA" "zoo xq %C %TA"
arch ".rar" "rar a -inul %C %TA" "unrar x -inul %C %TA"
# examples for MS-DOS
#arch ".lzh" "lha a %S %TA" "lha x %S %TA"
#arch ".tar.Z" "tar cf - %T|compress -c > %C" "gzip -cd %S|tar xf - %TA"
#arch ".tar.gz" "tar cf - %T|gzip -c > %C" "gzip -cd %S|tar xf - %TA"
#arch ".tar.bz2" %
# "tar cf - %T|bzip2 -c > %C" "bzip2 -cd %S|tar xf - %TA"
#arch ".taz" "tar cf - %T|compress -c > %C" "gzip -cd %S|tar xf - %TA"
#arch ".tgz" "tar cf - %T|gzip -c > %C" "gzip -cd %S|tar xf - %TA"
#arch ".zip" "pkzip %S %TA" "pkunzip %S %TA"
#
# Debian package settings
arch ".deb" "clear; echo ERROR; false"\
"ar p %C data.tar.gz|gzip -dc|tar -xf - %TA"
arch ".rpm" "clear; echo ERROR; false" "rpm2cpio %C|cpio -id %TA"
# key bind definition
#(Examples)
#bind 'I' "dir -d %C"
#bind 'g' "gzip %C%K" WARNING_BELL
#bind 'G' "gzip -d %C%K" WARNING_BELL
#bind 'R' "grep %R %C"
#bind '{' ROLL_UP
#bind '}' ROLL_DOWN
#bind '~' "cd ~%N%K"
#bind 'F1' "man fd%N%K" :Manual
# function definition
#(Example1)
#rename() {
# MARK_ALL 0
# MARK_FIND $1
## RENAME_FILE $2
# evalmacro mv %M $2
#}
#
#(Example2: used in archiver definition)
#maketaz() {
# evalmacro tar cf %X.tar %T
# evalmacro $1 %X.tar
# evalmacro mv %X.tar.$2 %X.$3
#}
#
#(Example3: ftp browsing)
#getftp() {
# FHOST=$1
# FPATH=
# browse -@ - <<'EOF0'
# 'ftp -n $FHOST <<-EOF
# user ftp `whoami`@`hostname`
# dir $FPATH
# quit
# EOF'
# -f "%a %l %u %g %s %m %d %{yt} %*f"
# -i "total *"
# -e "Not connected."
# -e "Login incorrect."
# -e "Login failed."
# -p 'FPATH=$1; while [ "$#" -gt 1 ]; do shift; FPATH=$1/$FPATH; done'
# -d loop
#
# 'dir=`readline "Dir: "` && [ -d "$dir" ] \
# && yesno "copy \"$FPATH\" to \"$dir\" ?" \
# && ftp -n $FHOST <<-EOF \
# && echo "copy \"$FPATH\" to \"$dir\"." %K \
# || echo canceled.
# user ftp `whoami`@`hostname`
# get $FPATH $dir/${FPATH##*/}
# quit
# EOF'
#EOF0
#}
# MS-DOS drive definition
#(Example)
#setdrv B "/dev/rfd00a" 2, 18, 80
# alias definition
#(Example)
#alias dir="ls -laF"
# keymap definition
#(Example)
#keymap DEL "\033[3~"
# common keycode settings for xterm and kterm
xtermkey()
{
keymap HOME "\033OH"
keymap END "\033OF"
#keymap INS "\033[2~"
#keymap DEL "\033[3~"
keymap BS "\177"
#keymap PPAGE "\033[5~"
#keymap NPAGE "\033[6~"
#keymap RET "\033OM"
keymap F5 "\033[15~"
keymap F6 "\033[17~"
keymap F7 "\033[18~"
keymap F8 "\033[19~"
keymap F9 "\033[20~"
keymap F10 "\033[21~"
keymap F11 "\033[23~"
keymap F12 "\033[24~"
keymap PLUS "\033Ok"
keymap MINUS "\033Om"
keymap ASTER "\033Oj"
keymap SLASH "\033Oo"
}
# keycode settings for various terminals
case $TERM in
linux)
LANGUAGE=eng
;;
xterm)
LANGUAGE=eng
keymap F1 "\033OP"
keymap F2 "\033OQ"
keymap F3 "\033OR"
keymap F4 "\033OS"
xtermkey
;;
kterm)
keymap F1 "\033[11~"
keymap F2 "\033[12~"
keymap F3 "\033[13~"
keymap F4 "\033[14~"
xtermkey
;;
esac
unset xtermkey
# for site specific settings
source /etc/fdclone/fd2rc.siteconfig

View file

@ -0,0 +1,122 @@
#!/bin/sh
# Slackware build script for fdclone
# Written by B. Watson (yalhcru@gmail.com)
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# This build script owes a debt to the Debian fdclone build
# script. Unlike the Debian build though, I install the binary & man
# pages as "fdclone", not "fd", because SBo already has an "fd". I
# also don't see the point of the stub fdsh man page.
PRGNAM=fdclone
SRCNAM=FD
VERSION=${VERSION:-3.01j}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
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
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 {} \+
# Patches from Debian. Not going to apply the one that stops the
# Makefile from stripping the binary, since that's what we want.
patch -p1 < $CWD/01_previous_changes.patch
patch -p1 < $CWD/30_makefilein_setting.patch
# Set the default pager & editor to things that actually exist on
# Slackware. The user's EDITOR and PAGER will override these, or they
# can be set system-wide by the admin, in the config file.
FDPAGER=${FDPAGER:-less} ; FDPAGER=$( which $FDPAGER )
FDEDITOR=${FDEDITOR:-vim} ; FDEDITOR=$( which $FDEDITOR )
sed -i -e "s,/usr/bin/pager,$FDPAGER," \
-e "s,/usr/bin/editor,$FDEDITOR," \
fd.h
make config
make CFLAGS="$SLKCFLAGS" \
PREFIX=/usr \
CONFDIR=/etc/$PRGNAM
# make install fails to create this:
mkdir -p $PKG/usr/man/man1
make install \
PREFIX=$PKG/usr \
DATADIR=$PKG/usr/share/$PRGNAM \
MANDIR=$PKG/usr/man/man1 \
EMANDIR=$PKG/usr/man/man1 \
JMANDIR=$PKG/usr/man/ja/man1 \
JCATDIR=$PKG/usr/man/ja/man1 \
DEFRC=$PKG/etc/$PRGNAM/fd2rc
# Rename to avoid conflict with system/fd
rename /fd /$PRGNAM \
$PKG/usr/bin/fd \
$PKG/usr/man/man1/fd.1 \
$PKG/usr/man/ja/man1/fd.1
# De-hardlinkify
rm -f $PKG/usr/bin/fdsh
ln -s $PRGNAM $PKG/usr/bin/fdsh
rm -f $PKG/usr/man/man1/fdsh.1 $PKG/usr/man/ja/man1/fdsh.1
gzip -9 $PKG/usr/man/man1/$PRGNAM.1 $PKG/usr/man/ja/man1/$PRGNAM.1
ln -s $PRGNAM.1.gz $PKG/usr/man/man1/fdsh.1.gz
ln -s $PRGNAM.1.gz $PKG/usr/man/ja/man1/fdsh.1.gz
# Don't install fd2rc as a .new config, since it sources
# fd2rc.siteconfig, which can override anything in fd2rc,
# and the comments at the top explain this clearly.
mkdir -p $PKG/etc/$PRGNAM
cat $CWD/fd2rc > $PKG/etc/$PRGNAM/fd2rc
echo "# fd2rc.siteconfig - see fd2rc for options you can use here" > \
$PKG/etc/$PRGNAM/fd2rc.siteconfig.new
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a FAQ* HISTORY* LICENSES* README* TECHKNOW* $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}

View file

@ -0,0 +1,10 @@
PRGNAM="fdclone"
VERSION="3.01j"
HOMEPAGE="http://hp.vector.co.jp/authors/VA012337/soft/fd/"
DOWNLOAD="http://hp.vector.co.jp/authors/VA012337/soft/fd/FD-3.01j.tar.gz"
MD5SUM="81f4b5a2aa50afac8c1677d34a646a7e"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="B. Watson"
EMAIL="yalhcru@gmail.com"

19
system/fdclone/slack-desc Normal file
View file

@ -0,0 +1,19 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
fdclone: fdclone (two-pane textmode file manager)
fdclone:
fdclone: FDclone is a file & directory maintenance tool for UNIX-based OSes. It
fdclone: is a clone of "FD" for MS-DOS, made by Mr. A.Idei in 1989.
fdclone:
fdclone: fdclone has excellent Japanese language UI, documentation, and
fdclone: character encoding support, since it originates in Japan.
fdclone:
fdclone:
fdclone:
fdclone: