This first time I used a mac where zsh was the default, I was confused for quite a bit of time when it would not run something I was used to doing. I kept looking up errors on the internet until I came across someone's post with a reply asking if they were using Terminal on a new OS X. Sure enough, this was a new mac as well. Now I know one of the first steps for me with a new Mac is change default shell. I'm way too old and set in my ways to care to learn a new shell. Choosing a shell, IDE, font, etc are games for youth.
I learned to consistently use shebangs at the top of scripts while working with the first zsh user I knew. Or might have been fish. No i think he started in zsh and moved to fish. Every time I forgot, his environment was busted. And he sat a cubicle and a half away from me, so I got fast feedback.
Just last week I found myself trying to explain shebang to someone that knows nothing of coding, command line interfaces, or what shells are. At one point, I was wondering where it was I should have stopped talking, but it was definitely well before I finished.
I used "brew install bash && brew info bash" to get the path, then ran that shell (zsh doesn't work), then inside that new bash, ran the screensaver app.
I found the 4k fullscreen perf in iTerm2 to be not-great, so I did it again in the kitty (GPU powered) terminal macos app, and it was good.
After installing bash via MacPorts, it works for me. All except #3 cutesaver, which gives an infinite loop of:
shuf has been a part of coreutils since 2006.
I encountered this in another project. This should hopefully fix it:
zmodload zsh/mapfile
IIRC macOS is at least one major version behind in bash.
something something licensing something something
new installs default to bash not being the default terminal. someone else mentioned macports, but there's a new version available via brew as well
So far I have resisted the change. All the people I know who think zsh is great have a fairly large number of addons to get it that way.
This first time I used a mac where zsh was the default, I was confused for quite a bit of time when it would not run something I was used to doing. I kept looking up errors on the internet until I came across someone's post with a reply asking if they were using Terminal on a new OS X. Sure enough, this was a new mac as well. Now I know one of the first steps for me with a new Mac is change default shell. I'm way too old and set in my ways to care to learn a new shell. Choosing a shell, IDE, font, etc are games for youth.
I learned to consistently use shebangs at the top of scripts while working with the first zsh user I knew. Or might have been fish. No i think he started in zsh and moved to fish. Every time I forgot, his environment was busted. And he sat a cubicle and a half away from me, so I got fast feedback.
Just last week I found myself trying to explain shebang to someone that knows nothing of coding, command line interfaces, or what shells are. At one point, I was wondering where it was I should have stopped talking, but it was definitely well before I finished.
Same here
Bash Screensavers v0.0.27 (Mystic Shine)
./screensaver.sh: line 79: mapfile: command not found 1 .
(Press ^C to exit)
Choose your screensaver: 1 404 Screensaver Not Found:
Oh no! Screensaver had trouble! Error code: 1
Get a Bash that's not ancient. mapfile is there since version 4.0 from 2009.
Seems to be a old version of bash installed and used by default on macos
Even after updating still getting the same error
checked active bash version:
echo $BASH_VERSION
5.3.3(1)-release
What's relevant is whether "/usr/bin/env bash" runs the correct one.
I used "brew install bash && brew info bash" to get the path, then ran that shell (zsh doesn't work), then inside that new bash, ran the screensaver app.
I found the 4k fullscreen perf in iTerm2 to be not-great, so I did it again in the kitty (GPU powered) terminal macos app, and it was good.