JdeBP
This is specifically for the command-line and system tools stuff, including #nosh and #djbwares.
For anything else, including general computer programming, the non-politics account is @JdeBP@mastodonapp.uk and the politics account is @JdeBP@mastodon.scot. #senryu and #SlowLife tasks are at @JdeBP@toot.wales.
nc wasn't changed. The relevant line of code has been
if (vflag || zflag) {
ever since Eric Jackson re-wrote #OpenBSD #nc in 2001. Martin Pieuchot changed the stream from standard output to standard error in 2009, but nc has been doing this for quarter of a century.
What actually happened was that #Debian people had been locally patching this line from 2012 to 2023.
https://salsa.debian.org/debian/netcat-openbsd/-/commit/2f5a8bea5f84847ee36a90e59f585b5cb3c07537
https://salsa.debian.org/debian/netcat-openbsd/-/commit/c9586231ff0e481ba51f96abd576cb506883a166
The Stearns fork of pre-Jackson #netcat respects -v here.
If 'go to' means first choice, where possible, then of course it is #httpd from #djbwares. Simple; static; secure; low resource usage; and I know exactly how it works.
One of the reasons that I maintain it is so that I can use it myself. (-:
http://jdebp.info/Softwares/djbwares/
It is running on #NetBSD for my public WWW site. But I have an internal WWW site where it runs on #FreeBSD.
Years ago, it was my own httpd and httppd, on OS/2. (-:
The 'cat -v considered harmful folks' (Kernighan and Pike) invented vis(1).
> The preferred approach in this case is a separate program that deals with non-printable characters. We called ours vis […] because its job is to make things visible.
I suspect that they would approve of sqz(1) likewise abstracted from cat -s, because they also said
> cat isn’t […] for compressing multiple blank lines […] it’s for concatenating files.
@chesheer@mastodon.bsd.cafe @cos@aus.social
It would be interesting to trace the relationships, if any, between the twain.
Here's something for your doco: Pendleton's actual shar posting to comp.unix.wizards in 1988, complete with UUCP bang paths in the signature block.
https://groups.google.com/g/comp.unix.wizards/c/HVObC4kIJ9g/m/q6PYo0bEUL8J
Notice that Pendleton did VMS emulation before emacs.
https://groups.google.com/g/comp.unix.questions/c/zvywB_vQt2s/m/bg2TiwXL8aUJ
Also note that the BSDs have cfmakeraw(3) available in the C library.
#readline #ile #Unix #emacs #VMS #termios #FreeBSD #OpenBSD #NetBSD
When you view manual pages on a video terminal, the -s ('squeeze') option to the final $PAGER in the pipeline does this. You'll be surprised at how many blank lines there really are in manuals.
less, (BSD) more, most, and (my) console-tty37-viewer all have this option.
Given that, it's an of course moment, with a nod to the people who think that this should no more be a part of cat than vis(1) is, that cat has a squeeze option too.
@colinstu@birdbutt.com @ariadne@social.treehouse.systems
I wrote about this, a few years ago.
Today has been the day to discover that all of the work that I put in to making a program work on Debian has completely broken its long-standing functionality on FreeBSD.
@wolf480pl@mstdn.io @cks@mastodon.social
Nah. With per-user service management it is far more likely to be D-Bus. It could be a D-Bus service failing, or not present, or not starting properly; or even a problem with the per-user broker.
Crank up your D-Bus monitor.
It's food for thought, too. All this fuss made about cat, repeated to this day in some quarters, and of the three things explicitly pointed out as wrong with what Berkeley did, only a tool to do one of them, vis(1), was ever written in 43 years.
The ironic cherry on top is that the only operating systems that come with vis out of the box are the BSDs.
Well since vis(1) came about because of cat -v, it seems that there should be a sqz(1) because of cat -s .
No need to define its own constants for the standard file descriptors, either. Gaining means that you gain STDERR_FILENO, STDIN_FILENO, et al..
That 'extern int errno' is actually wrong and needs to come out. A well known thing to change, that is.
That's all I spotted from a quick shufti. There's probably something more in the string handling. Code from that period often wasn't good with strings. I've not looked, though.
As you can see, @rl_dane@polymaths.social has me wondering whether anyone has ever written a sqz(1) #Unix #TextProcessing tool, to go alongside vis(1).
I am tempted to just quickly knock one together and put it into the #nosh toolset.
No. sysstat is specific to Linux alone.
https://sysstat.github.io/faq.html#sar-2.5
And the other sar that you may be thinking of is in #Illumos and its derivatives and comes from AT&T Unix System 5 and not from BSD.
It basically redraws entire lines at a time, and a single character change invalidates the entire line that it is on.
@alanc@hachyderm.io @Radio_Azureus@ioc.exchange
I had to write that FGA in part because *everyone* forgot about the SAF. (-:
#Illumos #OmniOS #SmartOS #OpenIndiana #Tribblix #ServiceAccessFacility
You should have this:
https://manpages.ubuntu.com/manpages/resolute/man1/dbus-monitor.1.html
If it cannot connect, in a session for the relevant user, without tweaking the DBUS_SESSION_BUS_ADDRESS environment variable, or at all, then that might well be the problem. (-:
Does your system show stats about how many transactions connections serviced before they closed? Or, alternatively, what the lifetimes of established connections are?
I'm asking because I'm putting the occasional knob into the HTTP server in #djbwares and you've made me think about transaction caps and what's reasonable when one is under attack from an LLM scraper; when one really doesn't want the attacker to be able to hold existing connections open indefinitely.
Arch has #OpenBSD #nc twice in the AUR. One package applies all of the Debian patches. One does not.
But they won't have noticed this difference, since they added these to the AUR around the time that Debian stopped patching the if test.
https://aur.archlinux.org/packages/openbsd-netcat-tls
https://aur.archlinux.org/packages/openbsd-netcat-git
#NetBSD, #FreeBSD, and #DragonFlyBSD all use the Jackson netcat.c with the if statement as in the original, so their ncs will all do this too.
If this were a bitmap font, some of its ideas would be interesting to play around with and see how they work on a userspace VT. (The #unscii PET font is probably the closest to this, but it has guttering.)
Bit it's a vector font playing at being a bitmap font by drawing lots of quadrilaterals, which is too much hard work, further compounded by there being no version targetting a power of 2 size.
Looks complex. (-:
C shell:
% printf '%s\n' $path
Z shell:
% printf '%q\n' "$path[@]"
I'm wondering how many people spotted the missing ^ there.
It's interesting to consider such an old convention still in use; in light of the fact that #Unicode not only has for the whole of this century so far given us proper arrow symbols, and even a Control-key symbol (⎈ U+2388), but also has a character (␗ U+2417) with a control code picture for ETB.
I still often use ^ too. (-:
The per-user systemd process is not the broker. That runs as a per-user service, conventionally named/aliased dbus.service. This is one of the two that one could have on Debian:
https://sources.debian.org/src/dbus/1.16.2-5/bus/systemd-user/dbus.service.in
The manager_enumerate stuff is for one thing looking in /proc/self/mountinfo and checking out mount points. So that's another thing to check out.
Could be NFS again, after all. (-:
That could very well be your problem. Something is waiting for #DesktopBus, and it's taking its time for the per-user broker to come up.
D-Bus is a bit fragile. I had to go through all of this stuff for per-user service management with the #nosh toolset, and there are many ways in which the D-Bus mechanisms can break.
A few ways were because originally the design was that the first client forked the broker process. Not good when the client's resource limited.