Hello, I've noticed the lack of a finger client in Parabola (even though there is a finger daemon, ffingerd). As such I've re-packaged one (patch attached to this email) based on the AUR package (which in turn is based on a Debian package and patchset). The only thing I'm not sure of is that the code uses the 4-clause BSD license, which is apparently incompatible with the GPL but should still be free software. I tried to look it up and understand if that still makes it FSDG-compliant (so long it's not linked against) and I think it should be OK but I lack enough knowledge to be 100% sure.
The PKGBUILD itself has been kept mostly unchanged, except adding a contributor line and adding rewording the description to have "GNU/Linux" instead of "Linux". -- Kind Regards, Wael Karram.
From 44862229b32022af304a28a8b903915d566e94a3 Mon Sep 17 00:00:00 2001 From: wael <[email protected]> Date: Sun, 6 Nov 2022 09:12:16 +0200 Subject: [PATCH] Added PKGBUILD for bsd netkit finger. --- pcr/netkit-bsd-finger-ipv6/LICENSE | 36 ++++++++++ pcr/netkit-bsd-finger-ipv6/PKGBUILD | 73 ++++++++++++++++++++ pcr/netkit-bsd-finger-ipv6/finger.xinetd | 9 +++ pcr/netkit-bsd-finger-ipv6/fingerd.socket | 11 +++ pcr/netkit-bsd-finger-ipv6/[email protected] | 8 +++ pcr/netkit-bsd-finger-ipv6/fxputc-utf8.patch | 29 ++++++++ 6 files changed, 166 insertions(+) create mode 100644 pcr/netkit-bsd-finger-ipv6/LICENSE create mode 100644 pcr/netkit-bsd-finger-ipv6/PKGBUILD create mode 100644 pcr/netkit-bsd-finger-ipv6/finger.xinetd create mode 100644 pcr/netkit-bsd-finger-ipv6/fingerd.socket create mode 100644 pcr/netkit-bsd-finger-ipv6/[email protected] create mode 100644 pcr/netkit-bsd-finger-ipv6/fxputc-utf8.patch diff --git a/pcr/netkit-bsd-finger-ipv6/LICENSE b/pcr/netkit-bsd-finger-ipv6/LICENSE new file mode 100644 index 000000000..78254519a --- /dev/null +++ b/pcr/netkit-bsd-finger-ipv6/LICENSE @@ -0,0 +1,36 @@ +/* + * Copyright (c) 1989 The Regents of the University of California. + * All rights reserved. + * + * This code is derived from software contributed to Berkeley by + * Tony Nardo of the Johns Hopkins University/Applied Physics Lab. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + */ + diff --git a/pcr/netkit-bsd-finger-ipv6/PKGBUILD b/pcr/netkit-bsd-finger-ipv6/PKGBUILD new file mode 100644 index 000000000..e0d8749dc --- /dev/null +++ b/pcr/netkit-bsd-finger-ipv6/PKGBUILD @@ -0,0 +1,73 @@ +# Maintainer (AUR): Mantas Mikulėnas <[email protected]> +# Contributer (Parabola): Wael Karram <[email protected]> + +# Parabola changes and rationale: +# Minor rewording to be FSDG-compliant. + +pkgname=netkit-bsd-finger-ipv6 +pkgver=0.17+deb17 +_pkgver=${pkgver%+*} +pkgrel=1 +#pkgdesc="bsd-finger ported to Linux, with IPv6 and other Debian patches" +pkgdesc="bsd-finger ported to GNU/Linux, with IPv6 and other Debian patches" +arch=(i686 x86_64) +url="ftp://ftp.linux.org.uk/pub/linux/Networking/netkit/" +#license=(BSD) +license=('BSD4') +provides=(netkit-bsd-finger) +conflicts=(netkit-bsd-finger) +backup=(etc/xinetd.d/finger) +source=("http://ftp.de.debian.org/debian/pool/main/b/bsd-finger/bsd-finger_${_pkgver}.orig.tar.bz2" + "http://ftp.de.debian.org/debian/pool/main/b/bsd-finger/bsd-finger_${pkgver/+deb/-}.debian.tar.xz" + "finger.xinetd" + "fingerd.socket" + "[email protected]" + "LICENSE" + "fxputc-utf8.patch") +md5sums=('99ef35e79cad0d941d860a10498420fd' + '1fb6da7103b1d59b9b5d408b7978c0db' + 'f6e07ede6acab481051f7bf51ce1fe8e' + '03675e125705fe7ca1424d7d0514e8d8' + '538dc00efa569de9fa36ca04a0880b62' + '5fc568418a0379fc3a358ed1c2523b44' + 'ceb45b74b0a98a4b5dd2b143d69e88bc') +sha256sums=('28b34d605d23ea687d79e0fc48c035abe80f88d9c1547e7aa46796d1081c0363' + '3d8cbc2127d99915e474137cebce08bda0f4bd13d57a4916d1a455dab10cce3c' + 'ce8e90ac9e149e6696fe67766adc19c6f8973515ecafe9f3432f6588c064980d' + 'e0d2febdfa1240893d88d7795f329cc8f3354a679c35e973c31d26970b9b095c' + '2c3e0f45ecea483b129288be96e17f5f45199d24611e8027ca29e13758fd68d3' + '3774a4bb6207edc124838915911bd139a78312336876a9fe59700216dfeb54b4' + '218ea0000348149ef6a7a9577b7688a32169cb2f57f297fe8218aef042cae0e4') + +prepare() { + cd "bsd-finger-${_pkgver}" + + while read -r file; do + patch -p1 < "../debian/patches/$file" + done < "../debian/patches/series" + + patch -p1 < "../fxputc-utf8.patch" + + sed -i 's@include <sys/time.h>@include <time.h>@' finger/lprint.c + sed -i 's@include <sys/time.h>@include <time.h>@' finger/sprint.c +} + +build() { + cd "bsd-finger-${_pkgver}" + + ./configure --prefix=/usr + make +} + +package() { + cd "bsd-finger-${_pkgver}" + + install -d "$pkgdir"/usr/{bin,share/man/{man1,man8}} + make INSTALLROOT="$pkgdir" SBINDIR=/usr/bin MANDIR=/usr/share/man install + + cd "$srcdir" + install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + install -Dm0644 fingerd.socket "$pkgdir/usr/lib/systemd/system/fingerd.socket" + install -Dm0644 [email protected] "$pkgdir/usr/lib/systemd/system/[email protected]" + install -Dm0644 finger.xinetd "$pkgdir/etc/xinetd.d/finger" +} diff --git a/pcr/netkit-bsd-finger-ipv6/finger.xinetd b/pcr/netkit-bsd-finger-ipv6/finger.xinetd new file mode 100644 index 000000000..c1b8e8c8c --- /dev/null +++ b/pcr/netkit-bsd-finger-ipv6/finger.xinetd @@ -0,0 +1,9 @@ +service finger +{ + disable = yes + socket_type = stream + wait = no + user = nobody + server = /usr/bin/in.fingerd + flags = IPv6 +} diff --git a/pcr/netkit-bsd-finger-ipv6/fingerd.socket b/pcr/netkit-bsd-finger-ipv6/fingerd.socket new file mode 100644 index 000000000..f7c68e889 --- /dev/null +++ b/pcr/netkit-bsd-finger-ipv6/fingerd.socket @@ -0,0 +1,11 @@ +[Unit] +Description=Finger remote user information server +Documentation=man:in.fingerd(8) +Documentation=man:finger(1) + +[Socket] +ListenStream=79 +Accept=yes + +[Install] +WantedBy=sockets.target diff --git a/pcr/netkit-bsd-finger-ipv6/[email protected] b/pcr/netkit-bsd-finger-ipv6/[email protected] new file mode 100644 index 000000000..6bfaeb4b8 --- /dev/null +++ b/pcr/netkit-bsd-finger-ipv6/[email protected] @@ -0,0 +1,8 @@ +[Unit] +Description=Finger remote user information server +Documentation=man:in.fingerd(8) +Documentation=man:finger(1) + +[Service] +ExecStart=/usr/bin/in.fingerd +StandardInput=socket diff --git a/pcr/netkit-bsd-finger-ipv6/fxputc-utf8.patch b/pcr/netkit-bsd-finger-ipv6/fxputc-utf8.patch new file mode 100644 index 000000000..a322dc262 --- /dev/null +++ b/pcr/netkit-bsd-finger-ipv6/fxputc-utf8.patch @@ -0,0 +1,29 @@ +--- a/finger/display.c ++++ b/finger/display.c +@@ -117,9 +117,12 @@ fxputc(FILE *f, int ch) + * + * It would be nice if we could set the terminal to display in the + * right charset, but we have no way to know what it is. feh. ++ * ++ * (Stripping of 128-159 is no longer necessary and in fact actively ++ * harmful with UTF-8-capable terminals. Removed. --grawity) + */ + +- if (((ch&0x7f) >= 32 && (ch&0x7f) != 0x7f) || ch=='\t') { ++ if ((ch >= 32 && ch != 0x7f) || ch=='\t') { + putc(ch, f); + return; + } +@@ -130,12 +133,6 @@ fxputc(FILE *f, int ch) + return; + } + +- if (ch&0x80) { +- putc('M', f); +- putc('-', f); +- ch &= 0x7f; +- } +- + putc('^', f); + if (ch==0x7f) putc('?', f); + else putc(ch+'@', f); -- 2.38.1
signature.asc
Description: This is a digitally signed message part
_______________________________________________ Dev mailing list [email protected] https://lists.parabola.nu/mailman/listinfo/dev
