Change Invisible-Island.net Upstream Source URIs to HTTPS

Brian Inglis Brian.Inglis@SystematicSw.ab.ca
Wed Apr 13 02:44:42 GMT 2022


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.]
-------------- next part --------------
#|/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
}

-------------- next part --------------
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
}


More information about the Cygwin-apps mailing list