Wow how the tables have turned…the argument used to be you used Windows instead of Linux because on Linux you might occasionally have to use the scary terminal to fix an issue haha.
Wow how the tables have turned…the argument used to be you used Windows instead of Linux because on Linux you might occasionally have to use the scary terminal to fix an issue haha.
Useful, as the wheel button is usually first to die in cheap mice.
Not useful, because it made it impossible to play Death Stranding on Linux :(
> The three button Alto mouse enabled the first bitmapped and overlapping windows display, known as a graphical user interface (GUI). The Alto dates to March of 1973
Sometimes more is more.
More recently KDE devs also became troublemakers - first David "all must use systemd", then nate "I-can-ask-for-donations-at-will-by-placing-a-trojan-daemon-onto-people-whose-sole-job-is-to-ask-for-donations" (more about this guy here: https://jriddell.org/2025/09/14/adios-chicos-25-years-of-kde...) and of course the "there are no xorg-server users left on KDE, so all must use wayland". Developers became a LOT more like dictators in the last 10 years specifically. This was a change indeed. I am not sure what happened, but things changed. GTK is now also a pure GNOMEY dev-kit. Good luck trying to convince the GTK devs of anything that used to be possible in gtk2 or gtk3 - it is now GNOME only.
My bet would be on a rewrite of CUPS in Rust. Oh, your printer that worked for 20 years is now a useless brick? What a shame, at least now the printing subsystem is secure and blazing fast.
Please, don't give them any ideas.
Vim 9.0 default changes required a 6 line vimrc to undo the damage.
Yeah, he shouldn't have been logged in as root, but the point remains that middle-mouse paste can be extremely dangerous and fat-finger-prone.
I love select to copy and middle-click to paste.
> The rationale for this behavior is mostly that [having a unified clipboard] has a lot of problems, namely:
> - inconsistent with Mac/Windows
> - confusingly, selecting anything overwrites the clipboard
> - not efficient with a tool such as xclipboard [(tool that maintains a history of specifically CLIPBOARD; it would be messy to keep a history of all selections)]
> - you should be able to select text, then paste the clipboard over it, but that doesn’t work if the selection and clipboard are the same
> - the Copy menu item is useless and does nothing, which is confusing
> - if you think of PRIMARY as the current selection, Cut doesn’t make any sense since the selection simultaneously disappears and becomes the current selection
The actual clipboard is a separate feature in my mind.
If you like it, just keep the behavior enabled.
Every operating system (or DE) does that. Hell, every piece of software does that. They're all just a bunch of opinions wrapped in a user interface.
Some may provide more opportunities to change the defaults, but those defaults still remain.
Or perhaps we're all just people with differing opinions on what constitutes a "good" user interface.
- "simplifying the UI" by removing many useful features (like systray icons)
- "what makes you think sharpness is a metric?"
- claiming fractional scaling is dumb because "monitors don't have fractional pixels"
- "we know what users want" while ignoring most user feedback
- "we're not copying mac OS" while blatantly doing so
- "consistency is key" then changes entire UI paradigm every release
- "what's the usecase for <insert well-known feature>?"
- intentionally obscuring how to access / in the file picker
And in general just being incredibly tone-deaf and abusive to their own users on the forums. Torvalds has been calling out their "users are idiots and are confused by functionality" stance for over 20 years now.
(No joke. This is a thing. It means when something goes catastrophically wrong with windows, the people in position to fix the problem will still be able to function.)
Year of the windows cli
Some desktop PCs have a physical power switch on the power supply, usually next to where the power cord plugs in. But it is becoming more rare. Every $0.50 they can save in costs is added to the bottom line.
Also try pressing power button for 5-10 seconds on a laptop instead
This always annoys me because you're really handicapping yourself by ignoring the CLI on any OS. Sure I use it more heavily on GNU/Linux than I did on Windows as a kid, but that's because it's so good. If I'm ever in front of a Windows machine now I still like to have a terminal handy (and it's even better/more-familiar on macOS, of course), and I've learned things like "type is like cat", "robocopy is like rsync", "tasklist is kinda like ps and taskkill like kill/pkill" which help me to do things better on Windows than when I used it fulltime. I'm glad Microsoft invested more in the CLI with Windows Terminal, OpenSSH in the default install, winget, PowerShell, etc. I think it's better for everyone. I fear the CLI hate is spreading anti-intellectualism. Some people seem annoyed when they even have to use their keyboard instead of their mouse for something.
Automation/scripting is when CLIs really come into their own as otherwise you end up becoming a GUI click monkey. The best is when there's both a GUI and CLI (as long as they work the same way).
That's what the man page is supposed to be (and most do contain example) and why GNU wanted to split it into info (tutorials and exhausting documentation) and man (reference and examples).
I usually end up just doing a quick web search for the command if it's not one that I'm familiar with (i.e. where I have read the man page).
An extreme example of my issue would be trying to find BASH examples of how to process a list of files - the man page on BASH is fairly lengthy.
Meanwhile, Greg's wiki provides this example of processing mp3 files:
while IFS= LC_ALL=C read -r -d '' file; do
some command "$file"
done < <(find . -type f -name '*.mp3' -print0) find . -type f -name '*.mp3' -exec some command {} ';'
That sounds just unnecessary and bug prune. Unless you target some odd platform where find doesn't support '-exec', but it is even in POSIX. I think due to your use of process substitution, your code has a higher chance of being unportable, so why do you want to complicate your code?Stuff like that is why I personally prefer the man pages to random websites.
Honestly for something as complex as a shell (which describes both a language, an editor, and an implementation) the man page is surprisingly short. (6418 lines for me) I have just found the section on process substitution in <1min, without even using the search, just by reading. I looked it up, because I didn't knew the name of that syntax, so I needed to actually look for what I wanted and I do not use the man page of bash often.
Don't get me wrong, the BASH man page is great, it's just that I prefer to work with examples.
For reference, here's the Greg's Wiki explanation: https://mywiki.wooledge.org/BashPitfalls#for_f_in_.24.28ls_....
touch "$(echo -en 'a\nb')"
find . -type f -name '*.mp3' -exec bash -c "echo '{}'; ls '{}'" ';'
works just fine, but maybe it doesn't work everywhere.If you don't like how the multiple commands look like, you can always write it like this:
find . -type f -name '*.mp3' -exec bash -c "
echo '{}'
ls '{}'
" ';'(Very minor nitpick, it should be 'a\nb.mp3' to be included, but that does work fine)
Incidentally, ShellCheck isn't happy with that although I don't follow their reasoning:
find . -type f -name '*.mp3' -exec bash -c "
^-- SC2156 (warning): Injecting filenames is fragile and insecure. Use parameters.
https://www.shellcheck.net/wiki/SC2156I think it is sound. Imagine what happens when the filename contains:
' && shutdown now && '.mp3Anyhow here's an example of how I would use the while loop and process substitution in a BASH script:
declare -i file_count=0
while IFS= LC_ALL=C read -r -d '' file; do
file_count+=1
printf "file: %s\n" "${file}"
done < <(find . -type f -name '*.mp3' -print0)
printf "Processed %d files\n" "${file_count}"
I think that'd be tricky to do using just a find/-exec command. find . -type f -name '*.mp3' | wc -l
Honestly I don't really view the shell / filesystem interface as a security boundary. I use the shell mainly for (automation of) interactive use, so any screwup due to e.g. quoting issues is my own fault, maybe even of using stupid filenames. Shell is a great language to connect streams of different programs into each other, not so much for doing any work. If I do that, I would reach for C.You're right about just using "wc -l", but I was just trying to demonstrate how you can set variables. A real use would be doing more than just counting files as your example would likely be quicker (assuming that calling an external programme is quicker than running a naive loop in BASH).
I am guilty of using BASH for stuff that most people would use a different language for - I just find that for system admin work that BASH is just at the right level of abstraction for me and is ubiquitous.
On face value, I find this suggestion hilarious. People are having sandboxing issues left, right and center with AI agents and MCPs, so clearly there would be enormous problems with giving an LLM full unscoped terminal access. Remember the guy who had his hard drive wiped?
Do you just mean that the ABIs are inconsistent and you want a more unified way to specify what you want (but the user still more-or-less spells out what command will be invoked)? I have some sympathy for that concern, yes.
Small added benefit, presumably it's harder to accidentally run a multi-line multi-stage command because you had the wrong thing in your clipboard (I don't have my windows PC handy, but if you paste multiple lines into Win+R it doesn't execute anything, correct?)
Windows + R
(type) shutdown /s /t 0
Enter
The /t is a time flag and you can abort scheduled shutdowns with the /a flag. Handy if you know your Windows machine will be finished with a task in 10 or so minutes but you need to leave - just set a timer for 1800 seconds and Kazaa will be done with its download ;).
That might maybe work most times, but when your network speed suddenly changes or the downloads is aborted it fails. Far better is just telling your computer that you want it to shutdown after the download finished:
wget ... && shutdown now
Should also work on MS Windows, IE used to be able to be told to exit once the download finishes, not sure how the situation looks like now.As such I usually set my timer 3x what it needs to be (e.g 1800 for a 10 minute) and it's always had a high chance of working.
Regarding Linux, I dont think most people need command line for normal work. Obviously the guy that runs an obscure dist in RAID-6 on his toaster would be different, but for most normal people just install Ubuntu and use it.
The average Windows user literally has no concept of a terminal. The average Linux user does indeed have to copy and paste terminal commands off the internet to fix issues or do seemingly ordinary customization frequently.
Edit - it's Alt+F4.