Further details about the new-this-year OpenSSH release.
My former teammates and I got bitten by a change. We had been using 'scp' to push files from desktop to USS, and suddenly the files were corrupted. Turned out, they were no corrupted, merely untranslated. What?!?!? (This could be a good thing. But what's going on?)

As mentioned in the blog post, as of OpenSSH 9.0, the 'scp' command uses the SFTP logic rather than the SCP logic. This means we can transfer files to/from USS in binary, not exclusively text. (A/E translation is now optional.) The magic is to use the new "-O" option if you want textual (E/A translated). "-O" is a new option but means "old behavior" (SCP instead of SFTP). Be aware that prior to 9.0, 'scp' will report an error for that option.

Most of your distros will have 9.0 or 9.1. But if you're on an older installation then you might be able to use the OpenSSH from Sir Santa's bag.
Enjoy!

I need to also ask: can anyone offer an interpretation of current regulations w/r/t to publishing former contraband? SSH is cryptographic software, so it's not available from the RSYNC site. The segregation is annoying and seems silly in 2022.

-- R; <><


On 12/6/22 13:40, Rick Troth wrote:

ho, ho, howdy, --

Sir Santa hasn't been very vocal here for a year or three. But I had some time this season to throw a few things into the bag. I'm usually LATE with Christmas gifts, but happy to see that there are still a couple weeks before the Day of Nativity. So here goes!

There's an appeal for help and some questions at the end of this note.

A few months ago, I posted about some updates to the Chicory collection. A friend sent a note thanking me. But for what? Chicory itself, as a GitHub project, is just the build logic. The actual *building* is left up to the reader. I feel like a college professor writing a textbook: "Proof of the theory is left to the reader." Never the less, it was nice to know that someone noticed. It seemed only right that I should make mention of a few pre-compiled programs available via Chicory.

Now for Chicory itself ... there's a difficult story: it's easy to understand (or at least easy to *do*) but hard to explain. It's all about judicious sym-linkery. The *build* then is another thing. The *delivery* is yet a third thing. In several of Sir Santa's workshops, we had NFS and one could run the//some///place///some///package//setup script and all was just rosey red-nosey. But everything is about diversification these days and cloud. Sir Santa's home workshop is itself scattered and multi-site. Besides, NFS is terribly chatty. Copying the pre-compiled Chicory programs to local disk was always a performance win. But more on this later.

Here are the packages in Sir Santa's bag for 2022:

  * python-2.7.18
  * rsync-3.2.3
  * gnupg-1.4.23
  * regina-3.9.5
  * the-3.3
  * oorexx-4.2.0
  * gnucobol-3.1.2
  * musl-1.2.3
  * openssh-9.1p1

Some of these are old. That's intentional. Python 2 was recently relegated to history (for various values of "recently"). But what if you have a body of Python code that can't run on Python 3? GPG 1.x is old too, but I use it for reference: do I really trust GPG 2 for this featrue or that function? (Call me paranoid. Yes, I'm paranoid. But am I paranoid *enough*?) They're all explained in this GitHub markdown blog post ...

    https://github.com/trothr/blog/blob/master/sir.santa/2022/20221122.md

The master list-o-packages for the Chicory project is here ...

    https://github.com/trothr/chicory/blob/master/doc/packages.md

The public facing RSYNC repository for most of the above is here ...

    rsync://chic.casita.net/opt/

Each of them has been configured and compiled for a half dozen platforms ...

  * Linux-i386
  * Linux-x86_64
  * Linux-s390
  * Linux-s390x
  * Linux-arm
  * FreeBSD-amd64

(with exceptions, like that Musl Libc doesn't run on FreeBSD)
And I have a predisposition to favor static linkage, so don't be surprised if you don't find certain shared objects. This should *help* for packages where the main feature is a *program* so that you'll need less shared libs at runtime.

I hope the bag is relevant to mainframe shops. COBOL in particular might come in handy. (You can, of course, alternatively get an excellent COBOL compiler from my former employer, but it ain't free.) The latest OpenSSH has a nifty new trick whereby it can explicitly transfer files as either textual or binary. Before that, I struggled to copy binaries to/from USS, but now, oh joy! (Hex encoding works but is a pain.) Of course, two flavors of Rexx ought to be interesting in any mainframe shop.

So now I appeal to you, dear members of the list.
If you use any of these, great! If you try and use one or more, and anything fails, there's no warranty. But I DO want to hear back from you. Please _let me know_ if something is broken. (Some things were compiled on newer systems and might choke looking for specific libraries, etc. Or maybe you wanted a particular behavior that I switched off during the build.)

Some of these, particularly OpenSSH and GnuPG, were once considered contraband, not exportable. Those are not available from the RSYNC server. Am I behind the times? Do we now simply let the stuff fly? Someone give me a clue. Thanks.

There are a few scripts around Chicory which I use for simplifying "pull from a repository" installations. I'll say more about those in a following note. But Chicory itself is just a package manglement scheme. Using Python as an example, create the prefix directory /usr/opt. Then install the Python hierarchy someplace, and simply point to it. The links might look like ...

    */usr/opt/python -> python-2.7.18
    /usr/opt/python-2.7.18 -> /local/opt/python-2.7.18/Linux-s390x
    /usr/local/bin/python2 -> /usr/opt/python/bin/python2.7*

You can fetch Python 2.7.18 for Linux-s390x with this command ...

    rsync  -a -u -x -H -O -S
    rsync://chic.casita.net/opt/python-2.7.18/Linux-s390x/.
    /local/opt/python-2.7.18/Linux-s390x/.

Works!

Since we're talking about Python as the example, I didn't set-up PIP. The bootstrap is included if you're interested and need that. My experience with PIP is limited, butget-pip.py did seem to Chicorify itself last time I tried it.

You can build any of these for yourself using the included "wrapper" makefile for the package.

Merry Christmas, y'all!

-- R; <><





--
-- R; <><


----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to lists...@vm.marist.edu with the message: INFO LINUX-390 or visit
http://www2.marist.edu/htbin/wlvindex?LINUX-390

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to