Jump to content

ym123

Member
  • Posts

    4
  • Joined

  • Last visited

Everything posted by ym123

  1. Except you can not, I have yet to see a GUI that can be extended in that way, and even if there is, they probably handle composability very very badly. In a shell you can compose everything very easily, I can use find to list all the files with a specific filetype, and then grep to search for a string in them, and count the number of files that contain that string. This is a very basic example so yes many file managers will be able to do but that's only because it is built into the file manager, but there are many many other features that you may need but are not built into them (or other programs). Here's a better one, a few days ago I wanted to count how many hours of movies I have downloaded for various reasons, so I just wrote a script that did so in a few minutes. #!/bin/bash var=0 echo "Calculating..." while read -r line do var=$(python -c "print($var + $(ffprobe -show_entries format=duration -v quiet -of csv="p=0" -i "$line"))") done < <(find . -iname \*.mkv) printf "%s hours\n" "$(python -c "print($var / 60 / 60)")" Another example, yesterday I wanted to organize my torrents, so I moved some into another folder using transmission's ui, only to realize the transmission only moved the torrents' content, not the files I had also created in their folders (which makes sense I guess), again the fix was easy, use rsync and shell globbing to automatically sync the two folders and then delete old ones ` for i in *; do rsync -axuv --remove-source-files --progress ~/Drive/"$i"/ "$i"; done`. Something that would've taken half an hour (~100 torrents) took 3 minutes. GUIs just can't be composed like that, and those tasks may seem pretty rare, but similar ones come up often enough that GUIs lack of ability to perform them is extremely annoying. Also, who said that you have to type everything? why not have them bound to keyboard shortcuts and aliases? ? Again, I'm not saying CLI is the end all be all interface (try creating a movie or a 3d model with a CLI lol), but it is just that it has a lot of merits that shouldn't be ignored, and that will potentially be lost if linux ever goes "mainstream".
  2. Then you haven't used any CLIs I don't know how many scripts I have lying around that you can't simply (or is pretty much impossible to) replicate with a GUI, or how many oneliners I wrote in the heat of the moment to perform some annoying task
  3. I've recently read "The empty box and zeroith maria", it was pretty good
  4. While there is a small minority of users that don't want linux to be more popular to feel more superior, saying that's the whole reason linux isn't going to get popular is short-sighted. The real reason the linux community doesn't want it to become popular is because you lose a shit ton of things when it becomes popular. For example CLI, most people here think that adding a GUI to a CLI program is easy task, but it's very much not, whether you're using QT or GTK gui is way more (annoying) work than just doing a few simple commands like CLI, but let's ignore that and say it's easy, then you have to maintain two interfaces to the same program, adding a few features means you have to change both the CLI and the GUI code, so lazy developers will end up just allowing one interface, in a mainstream OS that'd be GUI, so that means if linux becomes mainstream it'd lose its CLI capabilities (to prove my point, just look at most pre-web utility applications for windows, most of them feature no cli at all even though powershell and CMD exist). Now considering that the majority of linux users are developers, do you think they'd like to lose their flexible, efficient but "difficult" interface to a simple one that'd can't do quarter as much? (please don't misunderstand this as saying CLI is the best interface for all scenarios) Another problem the linux community is built on most its users being programmers, most of the software is "By developers, for developers", when someone develops something most people expect that the code is at least readable so they can modify it to their needs, and the developer in return expects that if anyone finds a bug they'll do as much as they can to help the dev fix it (counterexamples exist of course, but they're the minority), normal users (most of them at least) don't really know how any of this works, they open an issue on github or something describing the bug as vaguely as possible with no logs or anything to help attached because they expect it to be a product, not just a hobby project for someone. Normal users don't understand community, they just see a tool.
×
×
  • Create New...

This website uses cookies, as do most websites since the 90s. By using this site, you consent to cookies. We have to say this or we get in trouble. Learn more.