From aab78360776823626d9e34b7e07252fd0333d6af Mon Sep 17 00:00:00 2001 From: Yorhel Date: Tue, 4 Mar 2025 18:45:21 +0100 Subject: [PATCH] ncdc 1.25 --- dat/contributing.md | 8 ++--- dat/guestbook.md | 3 ++ dat/index.md | 6 ++++ dat/ncdc.md | 21 ++++++----- dat/ncdc/install.md | 35 ++++++++++--------- dat/ncdc/man.pod | 10 ++++-- mkchangelog.pl | 2 +- pub/cgi-bin/guestbook.cgi | 2 +- pub/download/ncdc-1.25.tar.gz.asc | 16 +++++++++ pub/download/ncdc-1.25.tar.gz.md5 | 1 + pub/download/ncdc-1.25.tar.gz.sha1 | 1 + pub/download/ncdc-1.25.tar.gz.sha256 | 1 + .../ncdc-linux-aarch64-1.25.tar.gz.asc | 16 +++++++++ .../ncdc-linux-aarch64-1.25.tar.gz.md5 | 1 + .../ncdc-linux-aarch64-1.25.tar.gz.sha1 | 1 + .../ncdc-linux-aarch64-1.25.tar.gz.sha256 | 1 + pub/download/ncdc-linux-arm-1.25.tar.gz.asc | 16 +++++++++ pub/download/ncdc-linux-arm-1.25.tar.gz.md5 | 1 + pub/download/ncdc-linux-arm-1.25.tar.gz.sha1 | 1 + .../ncdc-linux-arm-1.25.tar.gz.sha256 | 1 + pub/download/ncdc-linux-i486-1.25.tar.gz.asc | 16 +++++++++ pub/download/ncdc-linux-i486-1.25.tar.gz.md5 | 1 + pub/download/ncdc-linux-i486-1.25.tar.gz.sha1 | 1 + .../ncdc-linux-i486-1.25.tar.gz.sha256 | 1 + .../ncdc-linux-x86_64-1.25.tar.gz.asc | 16 +++++++++ .../ncdc-linux-x86_64-1.25.tar.gz.md5 | 1 + .../ncdc-linux-x86_64-1.25.tar.gz.sha1 | 1 + .../ncdc-linux-x86_64-1.25.tar.gz.sha256 | 1 + 28 files changed, 149 insertions(+), 33 deletions(-) create mode 100644 pub/download/ncdc-1.25.tar.gz.asc create mode 100644 pub/download/ncdc-1.25.tar.gz.md5 create mode 100644 pub/download/ncdc-1.25.tar.gz.sha1 create mode 100644 pub/download/ncdc-1.25.tar.gz.sha256 create mode 100644 pub/download/ncdc-linux-aarch64-1.25.tar.gz.asc create mode 100644 pub/download/ncdc-linux-aarch64-1.25.tar.gz.md5 create mode 100644 pub/download/ncdc-linux-aarch64-1.25.tar.gz.sha1 create mode 100644 pub/download/ncdc-linux-aarch64-1.25.tar.gz.sha256 create mode 100644 pub/download/ncdc-linux-arm-1.25.tar.gz.asc create mode 100644 pub/download/ncdc-linux-arm-1.25.tar.gz.md5 create mode 100644 pub/download/ncdc-linux-arm-1.25.tar.gz.sha1 create mode 100644 pub/download/ncdc-linux-arm-1.25.tar.gz.sha256 create mode 100644 pub/download/ncdc-linux-i486-1.25.tar.gz.asc create mode 100644 pub/download/ncdc-linux-i486-1.25.tar.gz.md5 create mode 100644 pub/download/ncdc-linux-i486-1.25.tar.gz.sha1 create mode 100644 pub/download/ncdc-linux-i486-1.25.tar.gz.sha256 create mode 100644 pub/download/ncdc-linux-x86_64-1.25.tar.gz.asc create mode 100644 pub/download/ncdc-linux-x86_64-1.25.tar.gz.md5 create mode 100644 pub/download/ncdc-linux-x86_64-1.25.tar.gz.sha1 create mode 100644 pub/download/ncdc-linux-x86_64-1.25.tar.gz.sha256 diff --git a/dat/contributing.md b/dat/contributing.md index 23c7482..a05a043 100644 --- a/dat/contributing.md +++ b/dat/contributing.md @@ -14,10 +14,10 @@ or doesn't work as you had expected. Whether I will actually fix it depends on the nature of the bug, of course, but I do very much value stable and reliable software. -**Feature requests** are welcome, but I tend to not act on most of them and may -sometimes outright reject a feature if it seems out of scope. It's still good -to have a list of potential features to work on if I feel like making myself -useful, so new ideas are nonetheless appreciated. +**Feature requests** are welcome, but I tend to not act on most of them and +often reject features that seem out of scope. It's still good to have a list of +potential features to work on if I feel like making myself useful, so new ideas +are nonetheless appreciated. Feel free to send **patches** and **pull requests** for **trivial fixes** for simple bugs, documentation issues, typos, etc. If the change is trivial to diff --git a/dat/guestbook.md b/dat/guestbook.md index 9feca0d..c0f0e1f 100644 --- a/dat/guestbook.md +++ b/dat/guestbook.md @@ -17,6 +17,9 @@ respective issue tracker or send a mail to # Entries +`2025-02-16` - ~ +: ncdu is a great app. Keep up the great efforts! Respect from Canada! - Adeel Khan at Awake and Shangrila-VHP + `2025-01-12` - alkatraz445 : Absolutely lovely tool. Did the thing fast and quit even quicker. Instant recommendation diff --git a/dat/index.md b/dat/index.md index 0da211b..fd48c25 100644 --- a/dat/index.md +++ b/dat/index.md @@ -10,6 +10,12 @@ crap I've written over the years. :) ## Announcements Atom feed +`2025-03-04` - ncdc 1.25 released +: Adds support for IP to country lookups through + [libloc](https://www.ipfire.org/location/), as a more free alternative to + the MaxMind country database. [Homepage](/ncdc) - + [Changelog](/ncdc/changes). + `2024-11-19` - ncdu 2.7 released : Adds support for transparent compression for JSON import and export, tilde expansion in the config file, new `--export-block-size` and `--compress` diff --git a/dat/ncdc.md b/dat/ncdc.md index b799b4d..767f0b5 100644 --- a/dat/ncdc.md +++ b/dat/ncdc.md @@ -5,14 +5,14 @@ Ncdc is a lightweight direct connect client with a friendly ncurses interface. ## Get ncdc! Atom feed Latest version -: 1.24.1 (2024-07-18 - [ncdc-1.24.1.tar.gz](/download/ncdc-1.24.1.tar.gz) +: 1.25 (2025-03-04 - [ncdc-1.25.tar.gz](/download/ncdc-1.25.tar.gz) \- [changes](https://dev.yorhel.nl/ncdc/changes)) Convenient static binaries for Linux: - [x86-64](/download/ncdc-linux-x86_64-1.24.tar.gz) - - [i486](/download/ncdc-linux-i486-1.24.tar.gz) - - [ARM](/download/ncdc-linux-arm-1.24.tar.gz) - - [AArch64](/download/ncdc-linux-aarch64-1.24.tar.gz). Check the + [x86-64](/download/ncdc-linux-x86_64-1.25.tar.gz) - + [i486](/download/ncdc-linux-i486-1.25.tar.gz) - + [ARM](/download/ncdc-linux-arm-1.25.tar.gz) - + [AArch64](/download/ncdc-linux-aarch64-1.25.tar.gz). Check the [installation instructions](/ncdc/install) for more info. Development version @@ -31,6 +31,10 @@ Community - `adcs://dc.blicky.net:2780/` - For real-time chat.
TLS fingerprint as of 2024-10-04 is 5ZFSEGG26HUYZ7NXD6BARU6JHGLF7WNCP3LNYEFACMPRDFJKUEVA. +Project Status +: Passive maintenance. No active development has been happening for a while, + but I'm still around to implement fixes and the occasional feature update. + Packages and ports : Are available for the following systems: [Arch Linux](https://aur.archlinux.org/packages/ncdc/) - @@ -83,11 +87,12 @@ And special features not commonly found in other clients: Since the above list is getting larger and larger every time, it may be more interesting to list a few features that are (relatively) common in other DC -clients, but which ncdc doesn't do. Yet. +clients, but which ncdc doesn't do. - NAT Traversal, - OP features (e.g. client detection, file list scanning and other useful stuff for OPs), - SOCKS support. -Of course, there are many more features that could be implemented or improved. -These will all be addressed in later versions (hopefully :). +Of course, there are many more features that could be implemented or improved, +but given development is currently kind of dead, there's a good chance none of +it will happen anytime soon. diff --git a/dat/ncdc/install.md b/dat/ncdc/install.md index 8d15f62..68c0807 100644 --- a/dat/ncdc/install.md +++ b/dat/ncdc/install.md @@ -27,10 +27,10 @@ this page are of course highly welcomed as well. :-) If you just want to get ncdc running without going through the trouble of compiling and/or installing it, I also offer statically linked binaries: -- [Linux, x86-64](/download/ncdc-linux-x86_64-1.24.tar.gz) -- [Linux, i486](/download/ncdc-linux-i486-1.24.tar.gz) -- [Linux, ARM](/download/ncdc-linux-arm-1.24.tar.gz) -- [Linux, AArch64](/download/ncdc-linux-aarch64-1.24.tar.gz) +- [Linux, x86-64](/download/ncdc-linux-x86_64-1.25.tar.gz) +- [Linux, i486](/download/ncdc-linux-i486-1.25.tar.gz) +- [Linux, ARM](/download/ncdc-linux-arm-1.25.tar.gz) +- [Linux, AArch64](/download/ncdc-linux-aarch64-1.25.tar.gz) To use them, simply download and extract the tarball, and then run `./ncdc` on the command line. @@ -42,6 +42,9 @@ architecture, please bug me and I'll see what I can do. # System-specific instructions +(These instructions have not been tested in a long time, there's a good chance +they may not work anymore) + ## Android An [convenient installer](http://code.ivysaur.me/ncdcinstaller.html) is @@ -88,9 +91,9 @@ Ncdc is available in [Homebrew](https://formulae.brew.sh/formula/ncdc). Compile & install from source: doas pkg_add -i glib2 - ftp https://dev.yorhel.nl/download/ncdc-1.24.1.tar.gz - tar zxvf ncdc-1.24.1.tar.gz - cd ncdc-1.24.1 + ftp https://dev.yorhel.nl/download/ncdc-1.25.tar.gz + tar zxvf ncdc-1.25.tar.gz + cd ncdc-1.25 ./configure NCURSES_CFLAGS="-lncurses" NCURSES_LIBS="-lncursesw"\ CPPFLAGS="-I/usr/include -I/usr/local/include"\ LDFLAGS="-L/usr/lib -L/usr/local/lib" @@ -107,9 +110,9 @@ First install some required packages (as root): Then, fetch the ncdc source tarball, extract and build as follows: - wget https://dev.yorhel.nl/download/ncdc-1.24.1.tar.gz - tar -xf ncdc-1.24.1.tar.gz - cd ncdc-1.24.1 + wget https://dev.yorhel.nl/download/ncdc-1.25.tar.gz + tar -xf ncdc-1.25.tar.gz + cd ncdc-1.25 export PATH="$PATH:/usr/perl5/5.10.0/bin" ./configure --prefix=/usr LDFLAGS='-L/usr/gnu/lib -R/usr/gnu/lib' make @@ -140,9 +143,9 @@ install the required libraries: Then run the following commands to download and install ncdc: - wget https://dev.yorhel.nl/download/ncdc-1.24.1.tar.gz - tar -xf ncdc-1.24.1.tar.gz - cd ncdc-1.24.1 + wget https://dev.yorhel.nl/download/ncdc-1.25.tar.gz + tar -xf ncdc-1.25.tar.gz + cd ncdc-1.25 ./configure --prefix=/usr make sudo make install @@ -168,8 +171,8 @@ website](http://cygwin.com/) and use it to install the following packages: Then open a Cygwin terminal and run the following commands to download, compile, and install ncdc: - wget https://dev.yorhel.nl/download/ncdc-1.24.1.tar.gz - tar -xf ncdc-1.24.1.tar.gz - cd ncdc-1.24.1 + wget https://dev.yorhel.nl/download/ncdc-1.25.tar.gz + tar -xf ncdc-1.25.tar.gz + cd ncdc-1.25 ./configure --prefix=/usr make install diff --git a/dat/ncdc/man.pod b/dat/ncdc/man.pod index 64e23c4..b62af1b 100644 --- a/dat/ncdc/man.pod +++ b/dat/ncdc/man.pod @@ -501,7 +501,7 @@ Tell the OS to flush the file (disk) cache for file contents read while hashing =item B |disabled -Path to the GeoIP2 Country database file (GeoLite2-Country.mmdb), or 'disabled' to disable GeoIP lookups. The database can be downloaded from https://dev.maxmind.com/geoip/geoip2/geolite2/. +Path to the GeoIP2 Country database file (GeoLite2-Country.mmdb), or 'disabled' to disable GeoIP lookups through maxmind. The database can be downloaded from https://dev.maxmind.com/geoip/geoip2/geolite2/. =item B @@ -521,6 +521,10 @@ Specifies the address of the local network interface to use for connecting to th If no IPv4 address is specified, '0.0.0.0' is added automatically. Similarly, if no IPv6 address is specified, '::' is added automatically. The address that is actually used depends on the IP version actually used. That is, if you're on an IPv6 hub, then ncdc will listen on the specified IPv6 address. Note that, even if the hub you're on is on IPv6, ncdc may still try to connect to another client over IPv4, at which point the socket will be bound to the configured IPv4 address. +=item B |disabled + +Path to the IPFire location database, or 'disabled' to disable GeoIP lookups through libloc. The database can be downloaded from https://www.ipfire.org/location/install. + =item B Log debug messages to stderr.log in the session directory. It is highly recommended to enable this setting if you wish to debug or hack ncdc. Be warned, however, that this may generate a lot of data if you're connected to a large hub. @@ -994,7 +998,7 @@ see the same uploaded file several times with a different file offset. =head1 LICENSE -Copyright (C) Yoran Heling +Copyright (C) Yorhel ncdc is distributed under the MIT license, please read the COPYING file for more information. @@ -1008,6 +1012,6 @@ support and discussions. =head1 AUTHOR -ncdc is written by Yoran Heling +ncdc is written by Yorhel Web: L diff --git a/mkchangelog.pl b/mkchangelog.pl index 53906c6..c90858f 100755 --- a/mkchangelog.pl +++ b/mkchangelog.pl @@ -16,7 +16,7 @@ for (split /\n\n/, join '', grep !/^#/, <>) { print "\n"; for (split /\r?\n\s+-\s+/) { - s/([*_\\])/\\$1/g; + s/([*_\\])/\\$1/g if !/`/; s/--/\\--/g if !/`/; print " - $_\n" if $_; } diff --git a/pub/cgi-bin/guestbook.cgi b/pub/cgi-bin/guestbook.cgi index 3e4ff07..480a22e 100755 --- a/pub/cgi-bin/guestbook.cgi +++ b/pub/cgi-bin/guestbook.cgi @@ -9,7 +9,7 @@ my $cgi = CGI::Minimal->new; die if $cgi->truncated; my $msg = $cgi->param('message'); -my $spam = $msg =~ /