On 2022-04-12 18:41, Thomas Dickey wrote:
On Tue, Apr 12, 2022 at 03:57:55PM -0600, Brian Inglis wrote:
On 2022-04-12 14:35, Thomas Dickey wrote:
On Tue, Apr 12, 2022 at 03:18:24PM -0400, Thomas Dickey wrote:
On Tue, Apr 12, 2022 at 11:48:30AM -0600, Brian Inglis wrote:
On 2022-04-11 16:13, Yaakov Selkowitz wrote:
On 2022-04-11, 15:20, Thomas Dickey wrote:
I'm working to phase out the ftp urls on my main website,
and see these files in cygwinports using the ftp urls:
byacc/byacc.cygport
dialog/dialog.cygport
diffstat/diffstat.cygport
luit/luit.cygport
ncurses/ncurses.cygport
tack/tack.cygport
xterm/xterm.cygport
The change is
ftp://ftp.invisible-island.net/XXX
to
https://invisible-island.net/archives/XXX
At the moment I have files in both places, and am working to have
package scripts updated before pulling the plug on ftp.
...build repos for some packages:
<https://cygwin.com/git/cygwin-packages/>
or
<https://cygwin.com/git?p=git/cygwin-packages/PACKAGE.git>
I don't see lynx or tack in that.
(the summary pages don't tell me how they were packaged)
Attached Cygwin cygport package build script definitions; for cygport
docs see:
https://cygwin.github.io/cygport/cygport_in.html
and note similarities to Gentoo portage. Information is often very
similar to RedHat Fedora RPM packages, as Cygwin core is supported by
RedHat volunteers, on RH donated and managed servers and networks, often
building using cross-built tools on Fedora servers, taking base info
from Fedora spec files, and applying patches directly from Fedora repos;
sometimes also taking from Debian and/or OpenSuSE e.g. compare Fedora
spec files and patches to Cygwin cygport files etc.
From your commits and fork, you are aware of:
https://src.fedoraproject.org/rpms/lynx/tree/rawhide
and those for your other packages.
and where those had not been committed, downloaded and scanned the package
sources, to produce the attached package info.
You missed mentioning your lynx and vttest packages Cygwin provides; Cygwin
The above repos hold current build files, plus WIP and test versions under
playground branches.
I'm not moving lynx at the moment (it's going to be as much work as
the first batch -- best done separately for several reasons on my end).
Also, since it's not in
https://github.com/cygwinports/lynx
but seen here - an old version:
https://cygwin.com/cgi-bin2/package-cat.cgi?file=x86_64%2Flynx-src%2Flynx-2.8.7-2-src&grep=lynx
I put that off for further investigation.
All the packages from your site still refer to your FTP URIs:
byacc, dialog, diffstat, luit, lynx, ncurses, tack, vttest, xterm.
We can certainly update the maintained package URIs so future releases use
your web archive rather than FTP.
Rather than look at CygwinPorts/-Extra which are at least a couple of years
old, you can look in the above repos, or Cygwin source package summaries:
https://cygwin.com/packages/src_package_list.html
or
https://cygwin.com/cygwin/packages/summary/lynx-src.html
heh - one of the ones using "lynx.browser.org" as the homepage
it should be
https://lynx.invisible-island.net/
see
https://invisible-island.net/lynx/lynx-develop.html
which explains why it's not been lynx.isc.org since 2015.
"lynx.browser.org" is "RP", mentioned here:
https://lynx.invisible-island.net/current/CHANGES.html
https://cygwin.com/cygwin/packages/summary/tack-src.html
homepage should be
https://invisible-island.net/ncurses/tack.html
Package Version Maintainer Git/Cygwin-Packages Repo/Source
Cygport
byacc 20170430 ORPHANED (YS)
ftp://invisible-island.net/byacc/byacc-${VERSION}.tgz
dialog 1.3-3.20170131 ORPHANED (YS)
ftp://invisible-island.net/dialog/dialog-${VERSION}-${RELEASE#*.}.tgz
diffstat 1.64 Eric Blake/Brian Inglis
ftp://ftp.invisible-island.net/$PN/$P.tgz
indent 2.2.12 Jari Aalto no repo
http://deb.debian.org/debian/pool/main/i/indent/indent_2.2.12.orig.tar.xz
https://ftpmirror.gnu.org/gnu/indent/indent-2.2.12.tar.xz original
luit 20220111 Jon Turney
ftp://ftp.invisible-island.net/luit/luit-${VERSION}.tgz
lynx 2.8.9-13 Corinna Vinschen no repo
ftp://ftp.invisible-island.net/pub/lynx/tarballs/$SRC_DIR.tar.bz2
ncurses 6.1-1.20190727 ORPHANED (YS)
ftp://ftp.invisible-island.net/ncurses/current/ncurses-${VERSION}-${RELEASE#*.}.tgz
tack 1.08-2.20190721 ORPHANED no repo
ftp://ftp.invisible-island.net/ncurses/current/tack-${VERSION}-${RELEASE#*.}.tgz"
I assume "no repo" refers to cygwin's repositories.
Correct - specifically git/cygwin-packages where we check in our package
build and patch updates.
tin 2.4.3 Corinna Vinschen no repo
ftp://ftp.tin.org/pub/news/clients/tin/v2.4/${P}.tar.xz
vttest 20220215 Brian Inglis
ftp://ftp.invisible-island.net/$NAME/$NAME-$VERSION.tgz
xterm 370 Thomas Wolff
ftp://ftp.invisible-island.net/xterm/current/xterm-${VERSION%[a-z]}.tgz
You can download and examine any source package from a nearby Cygwin
mirror (often at a local university even if not advertised or official):
<https://cygwin.com/mirrors.html#sitelist>
e.g.
<https://mirrors.kernel.org/sourceware/cygwin/x86_64/release/lynx/>
<https://mirrors.kernel.org/sourceware/cygwin/x86_64/release/tack/>
etc. - ditto for x86, and similar for noarch packages.
If any problems, check: <https://cygwin.com/mirrors-report.html>
--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]
#|/usr/bin/cygport
# lynx.cygport - lynx Cygwin package build control script definitions
NAME=lynx
VERSION=2.8.9
RELEASE=1
CATEGORY="Web"
SUMMARY="A text-based Web Browser"
DESCRIPTION="Lynx is a text-based Web browser. Lynx does not display any images,
but it does support frames, tables, and most other HTML tags. One
advantage Lynx has over graphical browsers is speed; Lynx starts and
exits quickly and swiftly displays web pages."
HOMEPAGE=http://lynx.invisible-island.net/
SRC_DIR=$NAME${VERSION}rel.$RELEASE
#SRC_URI=http://invisible-mirror.net/archives/lynx/tarballs/$SRC_DIR.tar.bz2
# mirror unreliable under scallywag
SRC_URI=ftp://ftp.invisible-island.net/pub/lynx/tarballs/$SRC_DIR.tar.bz2
SRC_URI+=" $SRC_URI.asc"
PATCH_URI=lynx-2.8.6-backgrcolor.patch
# lynx-2.8.6-redhat.patch
# lynx-build-fixes.patch
# lynx-CVE-2008-4690.patch
# lynx-2.8.7-bm-del.patch
# lynx-2.8.7-locale.patch
# lynx-2.8.7-ipv6arg.patch
# lynx-2.8.7-alloca.patch
# lynx-2.8.7-bz679266.patch
#"
DEPEND="gettext-devel libbz2-devel libiconv-devel libidn-devel"
DEPEND+=" libintl-devel libncurses-devel libssl-devel zlib-devel"
DEPEND+=" autoconf automake binutils gcc-core"
DEPEND+=" bzip2 coreutils gzip inetutils ncompress sharutils tar unzip zip"
# last line is packages for external utilities run by lynx:
# bzip2 compress gunzip gzip mv rm tar telnet unzip uudecode zcat zip
BUILD_REQUIRES="$DEPEND"
CYGCONF_ARGS="
--libdir=/etc
--enable-addrlist-page
--enable-cgi-links
--enable-charset-choice
--enable-cjk
--enable-default-colors
--enable-externs
--enable-file-upload
--disable-font-switch
--enable-internal-links
--enable-ipv6
--enable-japanese-utf8
--enable-justify-elts
--enable-kbd-layout
--enable-locale-charset
--enable-nls
--enable-nsl-fork
--enable-persistent-cookies
--enable-prettysrc
--enable-read-eta
--enable-scrollbar
--enable-source-cache
--with-screen=ncursesw
--with-ssl
--with-bzlib
--with-zlib
"
# --enable-libjs
# --enable-warnings
# Optional Features:
# --with-build-cc=XXX the build C compiler ($BUILD_CC)
# --with-build-cflags=XXX the build C compiler-flags
($BUILD_CFLAGS)
# --with-build-cpp=XXX the build C preprocessor ($BUILD_CPP)
# --with-build-cppflags=XXX the build C preprocessor-flags
($BUILD_CPPFLAGS)
# --with-build-ldflags=XXX the build linker-flags ($BUILD_LDFLAGS)
# --with-build-libs=XXX the build libraries (${BUILD_LIBS})
# --with-destdir=XXX set DESTDIR destination for install
(default: $DESTDIR)
# --with-system-type=XXX test: override derived host system-type
# Development Options:
# --enable-debug compile w/ debugging (if \$CFLAGS is set, add
-g there, too)
# --disable-echo do not display "compiling" commands
# --enable-find-leaks logic for testing memory leaks
# --disable-trace disable logic for trace code
# --enable-vertrace verbose trace code
# --enable-warnings GCC compiler warnings
# --with-dbmalloc test: use Conor Cahill's dbmalloc library
# --with-dmalloc test: use Gray Watson's dmalloc library
# Basic Configuration Options:
# --disable-color-style use color style (ncurses/curses)
# --disable-full-paths control whether full utility pathnames are used
# --enable-gnutls-compat link with gnutls-openssl compat
# --enable-htmlized-cfg build htmlized lynx.cfg
# --disable-included-msgs use included messages, for i18n support
# --enable-ipv6 use ipv6 (with ipv4) support
# --disable-largefile omit support for large files
# --enable-local-docs link local doc-directory to help-page
# --disable-locale-charset use locale-charset selection logic
# --enable-nls use Native Language Support
# --enable-widec enable wide-curses features
# --with-cfg-file{=path} specify the default configuration file
(default: SYSCONFDIR/lynx.cfg)
# --with-cfg-path{=path} specify the default configuration
directories (default: SYSCONFDIR)
# --with-charsets=list limit charsets to given list of MIME names
# --with-curses-dir=DIR directory in which (n)curses is
installed
# --with-gnutls{=path} link with gnutls support
# --with-included-gettext use the GNU gettext library included
here
# --with-libiconv-prefix=DIR search for libiconv in DIR/include and
DIR/lib
# --with-lss-file{=path} specify the default style-sheet file
(default: SYSCONFDIR/lynx.lss)
# --with-mime-libdir=DIR MIME data, mime.types and mailcap
(default: /etc)
# --with-nls-datadir=DIR NLS data, parent of locale (default:
PREFIX/DATADIR)
# --with-nss-compat{=path} link with nss_compat library if
available
# --with-pkg-config{=path} enable/disable use of pkg-config
# --with-screen=XXX select screen type (XXX is curses (default),
ncurses, ncursesw, pdcurses or slang)
# --with-socks{=path} link with socks library if available
# --with-socks5{=path} link with socks5 library if available
# --with-ssl{=path} link with ssl library if available
# --with-textdomain=PKG NLS text-domain (default is package
name)
# Experimental Options:
# --disable-addrlist-page disable address-list page
# --disable-bibp-urls disable support for bibp: URLs
# --enable-cjk use experimental CJK logic
# --disable-config-info disable browsable configuration-info
# --enable-default-colors enable use of default-colors
(ncurses/slang)
# --disable-forms-options disable forms-based options
# --enable-japanese-utf8 use experimental Japanese UTF-8 logic
# --enable-kbd-layout use experimental keyboard-layout support
# --disable-menu-options disable old-style option menu
# --enable-nested-tables use experimental nested-table support
# --disable-session-cache use session-caching code
# --disable-sessions use sessions code
# Miscellaneous Options:
# --disable-alt-bindings disable alternative line-edit bindings
# --disable-ascii-ctypes disable use of ascii case-conversion
# --enable-cgi-links support cgi links w/o a http daemon
# --enable-change-exec allow users to change exec options
# --enable-charset-choice use charset-selection logic
# --enable-exec-links allow lynx to execute programs accessed via a
link
# --enable-exec-scripts allow lynx to execute programs inferred from a
link
# --disable-extended-dtd disable extended HTML DTD logic
# --enable-externs use external commands
# --disable-file-upload disable file-upload support
# --enable-font-switch use Linux setfont for character-translation
# --enable-gzip-help install gzip'ed help files
# --disable-idna disable IDNA support
# --enable-internal-links handle following links to same doc
differently
# --disable-justify-elts disable element-justification logic
# --enable-nsl-fork fork NSL requests, allowing them to be aborted
# --disable-partial disable partial-display logic
# --disable-persistent-cookies disable persistent-cookie support
# --disable-prettysrc disable colorization of HTML source
# --disable-progressbar disable progress-bar
# --disable-read-eta disable read-progress message shows ETA
# --disable-scrollbar disable scrollbar with mouse
# --disable-source-cache do not cache HTML source for parse mode changes
# --enable-syslog log URL requests via syslog
# --enable-underlines underline links rather than using boldface
# --with-bzlib use libbz2 for decompression of some bzip2 files
# --with-zlib use zlib for decompression of some gzip files
# Other Network Services:
# --disable-finger disable FINGER logic
# --disable-ftp disable FTP logic
# --disable-gopher disable GOPHER logic
# --disable-news disable NEWS logic
# --enable-wais enable WAIS logic
# Directory Editor Options:
# --disable-dired disable optional directory-editor, DirEd
# --disable-dired-dearchive disable dearchiving commands
# --disable-dired-gzip disable "gzip", "gunzip" commands
# --disable-dired-override disable DirEd override keymap
# --disable-dired-permit disable chmod/attrib commands
# --disable-dired-tar disable "tar" command
# --disable-dired-uudecode disable "uudecode" command
# --disable-dired-xpermit disable chmod/attrib commands
# --disable-dired-zip disable "zip", "unzip" commands
# --disable-long-list disable long "ls -l" directory listings
# --disable-parent-dir-refs disable "Up-to" links in directory
listings
# Special Libraries for PDCurses X11:
# --disable-rpath-hack don't add rpath options for additional libraries
# --with-neXtaw link with neXT Athena library
# --with-x use the X Window System
# --with-Xaw3d link with Xaw 3d library
# --with-Xaw3dxft link with Xaw 3d xft library
# --with-XawPlus link with Athena-Plus library
# must *NOT* autoreconf - custom autoconf files used
src_compile() {
lndirs
cd $B
cygconf
cygmake
}
src_install() {
pushd $B
cyginstall
make install-doc install-help DESTDIR=$D \
docdir=/usr/share/doc/lynx \
helpdir=/usr/share/doc/lynx/lynx_help
popd
SITECONF=/etc/lynx-site.cfg
echo "# Place any local lynx configuration options (proxies etc.) here." >
$D$SITECONF
make_etc_defaults $SITECONF
}
NAME="tack"
VERSION=1.08
RELEASE=2.20190721
CATEGORY="Utils"
SUMMARY="terminfo file utility"
DESCRIPTION="The tack program is a diagnostic that is designed to create and
verify the correctness of terminfo's. This program can be used to create new
terminal descriptions that are not included in the standard release."
HOMEPAGE="http://invisible-island.net/ncurses/ncurses.html"
SRC_URI="ftp://ftp.invisible-island.net/ncurses/current/tack-${VERSION}-${RELEASE#*.}.tgz"
SRC_DIR="tack-${VERSION}-${RELEASE#*.}"
src_compile() {
lndirs
cd ${B}
cygconf --with-ncurses ac_cv_header_term_entry_h=yes
cygmake
}