Gentoo Archives: gentoo-dev

From: Don Davies <djdavies@××××××.homedotcom>
To: gentoo-dev@g.o
Subject: [gentoo-dev] A better FTP client with Gentoo enhancements
Date: Thu, 22 Mar 2001 07:33:52
Message-Id: 3AB9886D.C40D210C@nospam.homedotcom
1 I've been using Gentoo for a few months now, and Im a BIG fan.
2 Thank you for the excellent work Achim and Daniel and others.
3
4 The other distros in my toolbox are basically being removed, as this
5 one is superior IMHO. I really like the meta-distro schema, and the
6 portage system is really, really cool. Way more fun than any of the
7 other distros.
8
9 This is my net-ftp/lukemftp package. It has lots of advanced features,
10 and is the default FTP client in FreeBSD and NetBSD I believe. If you
11 havn't tried this FTP client, please do try it. I propose it be Gentoo's
12 default /bin/ftp. Try it for yourself and see.
13
14 This also installs itself as FETCHCOMMAND in /etc/make.defaults.
15 Now portage has an attractive BSD feel to ebuilding. GNU Wget
16 makes portage look ugly IMHO because of it's messy output. Im sure
17 you'll prefer this over it! ;-) Besides, Wget is mostly lots and lots of
18 code to handle buggy webservers/ftp servers.. I've been using this
19 package for a couple of months and havn't seen any problems of
20 causes for concern with compatibility. Comments are welcome.
21
22 The small hack/patch is my addition, which I intended to be used with
23 portage auto-fetching. It produces a simple, concise progress display
24 while downloading. Enjoy ;-)
25
26
27
28 >>> lukemftp-1.5.ebuild
29
30 # Copyright 1999-2000 Gentoo Technologies, Inc.
31 # Distributed under the terms of the GNU General Public License, v2 or later
32 # Author Don Davies <djdaviesathomedotcom>
33
34 A=${P}.tar.gz
35 S=${WORKDIR}/${P}
36 DESCRIPTION="The enhanced FTP client from NetBSD, ported to other systems."
37 SRC_URI="ftp://ftp.netbsd.org/pub/NetBSD/misc/lukemftp/${A}"
38 HOMEPAGE="http://www.netbsd.org"
39
40 DEPEND="virtual/glibc"
41
42 src_unpack() {
43
44 unpack ${A}
45 cd ${S}
46
47 # Adds a command line option: -s, which produces clean, informative output.
48 # Shows progess status, ETA, transfer speed, no server responses or login messages.
49 cp src/main.c src/main.orig
50 sed -e "s/Aadefgino:pP:r:RtT:u:vV/Aadefgino:pP:r:RstT:u:vV/" \
51 -e "s/case 't'/case 's':\n\t\t\tverbose = 0;\n\t\t\tprogress = 1;\n\t\t\tbreak;\n\n\t\t&/" \
52 src/main.orig > src/main.c
53 }
54
55 src_compile() {
56
57 local myconf
58 if [ -z "`use ipv6`" ]
59 then
60 myconf="disable-ipv6"
61 fi
62
63 try ./configure --prefix=/usr --enable-editcomplete ${myconf}
64 try make
65 }
66
67 src_install() {
68
69 into /usr
70 dobin src/ftp
71 doman src/ftp.1
72 dodoc README THANKS NEWS COPYING INSTALL
73 dodoc ChangeLog todo
74 }
75
76 pkg_postinst() {
77
78 # Setup lukemftp for use in the portage system. Gives a slick BSD feel to ebuilding..
79 # Wget is far too messy ;-)
80 cp /etc/make.defaults /etc/make.defaults.fetchbak
81 sed -e "s/FETCHCOMMAND/#&/" /etc/make.defaults.fetchbak > /etc/make.defaults
82 echo "" >> /etc/make.defaults
83 echo "#This was added when lukemftp was installed" >> /etc/make.defaults
84 echo "FETCHCOMMAND=\"( cd \\\${DISTDIR} ; /usr/bin/ftp -a -i -s \\\${x} )\"" >> /etc/make.defaults
85 }
86
87 >>> lukemftp-1.5.ebuild
88
89
90
91 Looking forward to making more contributions to Gentoo Linux!
92 --
93 Don