
I just downloaded a 2G .iso. It seemed to take less than 30 seconds to download! I was using a 1g Rogers Cable connection. I guess that 20 seconds is about the fastest theoretically possible so this is startling.

I hear that it ships with the latest GNU grep, which removes fgrep and egrep. This could be considered a bad idea: https://mastodon.social/@cks/110232377928840323 Stewart

Stewart C. Russell via talk wrote on 2023-04-21 10:45:
I hear that it ships with the latest GNU grep, which removes fgrep and egrep. This could be considered a bad idea: https://mastodon.social/@cks/110232377928840323
I never, ever use fgrep or egrep and I think it's a bad idea. However, the reason being it breaks a lot of scripts, while valid, also raises the issue that scripts ought to use the long form of all options for future readability and maintenance. I've fielded questions on why, i.e., an `rsync` script wasn't performing well. Translating the `rsync -a -b -c -d 1 -e -f -g ...` to long-form options indicated a couple issues with somewhat contradictory options (likely a copy/paste from Stack Overflow) that became immediately apparent. So, `egrep` would be `grep --extended-regexp`, `fgrep` should be `grep --fixed-strings` and `rgrep` should be `grep --recursive` in scripts. `man grep`:
In addition, the variant programs egrep, fgrep and rgrep are the same as grep -E, grep -F, and grep -r, respectively. These variants are deprecated, but are provided for backward compatibility.
My 2¢ rb

On Fri., Apr. 21, 2023, 14:13 BCLUG via talk, <talk@gtalug.org> wrote:
I never, ever use fgrep or egrep and I think it's a bad idea.
Well, that's me told. I've used fgrep since the days when regular grep on a large file would take minutes, while fgrep would take seconds. I also learned egrep's slightly weird syntax at the same time. This was before PCRE was a thing. Before long-form options were a thing, too Deprecation of free software is so pointless. To break scripts for some imagined purity is flat-out daft. Stewart

Stewart Russell via talk wrote on 2023-04-21 14:55:
I never, ever use fgrep or egrep and I think it's a bad idea.
Well, that's me told.
When I read your quote of my message, it occurred to me that I done messed up. What I meant to say was, "I don't use them, and I think it's a bad idea *to remove them*". I was (in my head) referring to the original subject but failed to make that clear. I still think that scripts really ought to use long-form options, but I am generally against removing choices unless the alternative it too much a burden. This case doesn't seem to fit that definition though. Sorry for the mix-up.

On Fri, Apr 21, 2023 at 23:55 Stewart Russell via talk <talk@gtalug.org> wrote:
On Fri., Apr. 21, 2023, 14:13 BCLUG via talk, <talk@gtalug.org> wrote:
I never, ever use fgrep or egrep and I think it's a bad idea.
Well, that's me told. I've used fgrep since the days when regular grep on a large file would take minutes, while fgrep would take seconds. I also learned egrep's slightly weird syntax at the same time. This was before PCRE was a thing. Before long-form options were a thing, too
Deprecation of free software is so pointless. To break scripts for some imagined purity is flat-out daft.
I don’t know why you think so. There is a real cost to maintaining software. Who is going to keep track of security issues? What about changes to libraries you are linking to? Unless you are stepping up to maintain the software, I think deprecating software is not only fine but necessary to maintain security and quality. Thanks Dhaval
Stewart
---
Post to this mailing list talk@gtalug.org Unsubscribe from this mailing list https://gtalug.org/mailman/listinfo/talk

On Sat, Apr 22, 2023 at 08:16:01PM +0200, Dhaval Giani via talk wrote:
I don’t know why you think so. There is a real cost to maintaining software. Who is going to keep track of security issues? What about changes to libraries you are linking to? Unless you are stepping up to maintain the software, I think deprecating software is not only fine but necessary to maintain security and quality.
grep -E and grep -F are not going away, and egrep and fgrep are symlinks to grep that simply operate as grep -E and grep -F by default. There is zero maintainance work involved. But apparently someone involved with GNU grep decided some 15 years ago that these commands only existed because originally on unix fgrep and egrep were seperate binaries and that since that wasn't true anymore, they must be removed, because reasons. Seems like a change for the sake of making a change. -- Len Sorensen

On 22/04/2023 14.16, Dhaval Giani wrote:
I don’t know why you think so. There is a real cost to maintaining software. Who is going to keep track of security issues?
For security, of course deprecation can be a good idea. But this isn't for security. This is merely FSF being petty. Stewart

Stewart C. Russell via talk wrote on 2023-04-24 19:44:
For security, of course deprecation can be a good idea. But this isn't for security. This is merely FSF being petty.
Yeah, it's weird. -------------------------- root@b0x1 [~] └─» # for F in $(which egrep fgrep rgrep) ; do file ${F}; cat ${F} ; echo ; done /usr/bin/egrep: POSIX shell script, ASCII text executable #!/bin/sh exec grep -E "$@" /usr/bin/fgrep: POSIX shell script, ASCII text executable #!/bin/sh exec grep -F "$@" /usr/bin/rgrep: POSIX shell script, ASCII text executable #!/bin/sh exec grep -r "$@" -------------------------- There's not much to maintain there, doesn't make sense. Per https://lists.gnu.org/archive/html/info-gnu/2022-09/msg00001.html:
The egrep and fgrep commands, which have been deprecated since release 2.5.3 (2007), now warn that they are obsolescent and should be replaced by grep -E and grep -F
Huh. Deprecated since 2007, that's quite a while. Have various distros been substituting redirect shell scripts in lieu of separate binaries? rb

| From: Stewart C. Russell via talk <talk@gtalug.org> | I hear that it ships with the latest GNU grep, which removes fgrep and egrep. | This could be considered a bad idea: | https://mastodon.social/@cks/110232377928840323 Ouch. Thanks for the heads-up. I hope that it gets fixed. Unlikely to be fixed by GNU, I guess. That mastodon thread has a number of UNIX notables.

I don't know what's the issue. [ef]grep already is symlinked or shell scripts (exec grep -[EF] "$@"), and warning message is to stderr not stdout. On 2023-04-22 11:51, D. Hugh Redelmeier via talk wrote:
| From: Stewart C. Russell via talk <talk@gtalug.org>
| I hear that it ships with the latest GNU grep, which removes fgrep and egrep. | This could be considered a bad idea: | https://mastodon.social/@cks/110232377928840323
Ouch. Thanks for the heads-up.
I hope that it gets fixed. Unlikely to be fixed by GNU, I guess.
That mastodon thread has a number of UNIX notables. --- Post to this mailing list talk@gtalug.org Unsubscribe from this mailing list https://gtalug.org/mailman/listinfo/talk

F and fgrep are historical accidents. IMHO, the only reason they still exist is bad practice from the v6 era, when we only had a 16-bit address space. The interface could be preserved forever: the implementation? Less so. --dave On 4/22/23 16:34, William Park via talk wrote:
I don't know what's the issue. [ef]grep already is symlinked or shell scripts (exec grep -[EF] "$@"), and warning message is to stderr not stdout.
On 2023-04-22 11:51, D. Hugh Redelmeier via talk wrote:
| From: Stewart C. Russell via talk <talk@gtalug.org>
| I hear that it ships with the latest GNU grep, which removes fgrep and egrep. | This could be considered a bad idea: | https://mastodon.social/@cks/110232377928840323
Ouch. Thanks for the heads-up.
I hope that it gets fixed. Unlikely to be fixed by GNU, I guess.
That mastodon thread has a number of UNIX notables. --- Post to this mailing list talk@gtalug.org Unsubscribe from this mailing list https://gtalug.org/mailman/listinfo/talk
Post to this mailing list talk@gtalug.org Unsubscribe from this mailing list https://gtalug.org/mailman/listinfo/talk
-- David Collier-Brown, | Always do right. This will gratify System Programmer and Author | some people and astonish the rest dave.collier-brown@indexexchange.com | -- Mark Twain CONFIDENTIALITY NOTICE AND DISCLAIMER : This telecommunication, including any and all attachments, contains confidential information intended only for the person(s) to whom it is addressed. Any dissemination, distribution, copying or disclosure is strictly prohibited and is not a waiver of confidentiality. If you have received this telecommunication in error, please notify the sender immediately by return electronic mail and delete the message from your inbox and deleted items folders. This telecommunication does not constitute an express or implied agreement to conduct transactions by electronic means, nor does it constitute a contract offer, a contract amendment or an acceptance of a contract offer. Contract terms contained in this telecommunication are subject to legal review and the completion of formal documentation and are not binding until same is confirmed in writing and has been signed by an authorized signatory.

| From: Dave Collier-Brown via talk <talk@gtalug.org> | F and fgrep are historical accidents. I take it you mean the -F flag. | IMHO, the only reason they still | exist is bad practice from the v6 era, when we only had a 16-bit address | space. Actually, fgrep is useful because you don't need to ensure that the pattern has no RE metacharacters (NewLine and (I presume) NUL remain meta). I've almost never used fgrep. So maybe it isn't useful. The libreswan source tree has two lines referencing fgrep. I always use the egrep command because I am most comfortable with its variant of regular expressions. grep -E takes 3 more keystrokes (I count the shift). The regex(7) manpage on Fedora 37 calls grep's version of regular expresssions "obsolete" but notes that POSIX.2 calls them "basic". The page says it was from Henry Spencer's regex package. Reading the GNU grep(1) manpage, I learned something new: the pattern argument to the greps is actually a list of patterns separated by newlines. How ugly but potentially useful: grep 'cat|dog' could be written as: grep 'cat dog' This was always true of fgrep, one of the reasons I avoided it. But now it is true of the other variants. | The interface could be preserved forever: the implementation? | Less so. Oh, the implementations are gone. It is the loss of the interfaces that I and other fossils are objecting to. grep is such a great thing that there are many variants. Like agrep, AWK and perl. Snobol seems related but is actually earlier.

Yes, I too actually use egrep almost all the time from the command-line, and /always/ in scripts, as I want to know which interpretation of REs I'm about to use. --dave On 4/22/23 23:31, D. Hugh Redelmeier via talk wrote:
| From: Dave Collier-Brown via talk<talk@gtalug.org>
| F and fgrep are historical accidents.
I take it you mean the -F flag.
| IMHO, the only reason they still | exist is bad practice from the v6 era, when we only had a 16-bit address | space.
Actually, fgrep is useful because you don't need to ensure that the pattern has no RE metacharacters (NewLine and (I presume) NUL remain meta).
I've almost never used fgrep. So maybe it isn't useful. The libreswan source tree has two lines referencing fgrep.
I always use the egrep command because I am most comfortable with its variant of regular expressions. grep -E takes 3 more keystrokes (I count the shift).
The regex(7) manpage on Fedora 37 calls grep's version of regular expresssions "obsolete" but notes that POSIX.2 calls them "basic". The page says it was from Henry Spencer's regex package.
Reading the GNU grep(1) manpage, I learned something new: the pattern argument to the greps is actually a list of patterns separated by newlines. How ugly but potentially useful: grep 'cat|dog' could be written as: grep 'cat dog'
This was always true of fgrep, one of the reasons I avoided it. But now it is true of the other variants.
| The interface could be preserved forever: the implementation? | Less so.
Oh, the implementations are gone. It is the loss of the interfaces that I and other fossils are objecting to.
grep is such a great thing that there are many variants. Like agrep, AWK and perl. Snobol seems related but is actually earlier. --- Post to this mailing listtalk@gtalug.org Unsubscribe from this mailing listhttps://gtalug.org/mailman/listinfo/talk

On Sat, Apr 22, 2023 at 11:51:17AM -0400, D. Hugh Redelmeier via talk wrote:
| From: Stewart C. Russell via talk <talk@gtalug.org>
| I hear that it ships with the latest GNU grep, which removes fgrep and egrep. | This could be considered a bad idea: | https://mastodon.social/@cks/110232377928840323
Ouch. Thanks for the heads-up.
I hope that it gets fixed. Unlikely to be fixed by GNU, I guess.
That mastodon thread has a number of UNIX notables.
It won't get fixed by the people that caused it. This is a GNU change, not a Fedora change. I might be tempted to blame Fedora for many dumb changes over the years, but can't tack this one on them. -- Len Sorensne
participants (9)
-
BCLUG
-
D. Hugh Redelmeier
-
Dave Collier-Brown
-
David Collier-Brown
-
Dhaval Giani
-
Lennart Sorensen
-
Stewart C. Russell
-
Stewart Russell
-
William Park