User:Rudxain/Unix: Difference between revisions
"Usage" section; POSIX spec link |
add sections for shells (including DEs) |
||
| Line 23: | Line 23: | ||
While I agree that recommending [[wikipedia:Linux_Mint|Mint]] to beginners is fine (it'd be better if it wasn't based on [[Ubuntu]]; though [[wikipedia:Linux_Mint#LMDE|LMDE]] seems promising), please DO NOT even imply that "[[wikipedia:Debian|Debian]] is hard". I might be biased, but installing and using Debian as a daily-driver is easier than ever. | While I agree that recommending [[wikipedia:Linux_Mint|Mint]] to beginners is fine (it'd be better if it wasn't based on [[Ubuntu]]; though [[wikipedia:Linux_Mint#LMDE|LMDE]] seems promising), please DO NOT even imply that "[[wikipedia:Debian|Debian]] is hard". I might be biased, but installing and using Debian as a daily-driver is easier than ever. | ||
With that out of the way, keep in mind that Linux gives you the freedom to install any [[wikipedia:Desktop_environment|desktop-environment]] (DE) you want! So if you care more about the system GUI than pre-installed apps, just choose one of the following: | With that out of the way, keep in mind that Linux gives you the freedom to install any [[wikipedia:Desktop_environment|desktop-environment]] (DE) you want! So if you care more about the system [[wikipedia:Graphical_user_interface|GUI]] than pre-installed apps, just choose one of the following: | ||
*Debian: the big daddy/momma of all popular distros. If outdated packages are a concern, install [https://wiki.debian.org/DebianTesting Testing] rather than Stable. See [https://www.debian.org/doc/user-manuals#faq the FAQ about anything remotely related to Debian] (multi-language). | *Debian: the big daddy/momma of all popular distros. If outdated packages are a concern, install [https://wiki.debian.org/DebianTesting Testing] rather than Stable. See [https://www.debian.org/doc/user-manuals#faq the FAQ about anything remotely related to Debian] (multi-language). | ||
| Line 38: | Line 38: | ||
Note that you might not need a ''real'' Android device: you can install [[wikipedia:Waydroid|Waydroid]] on a regular distro. | Note that you might not need a ''real'' Android device: you can install [[wikipedia:Waydroid|Waydroid]] on a regular distro. | ||
== Usage == | == Choosing a DE == | ||
There are 2 major options: | |||
* If you like non-[[wikt:clutter|cluttered]] [[wikipedia:User_interface|UIs]], choose [[wikipedia:GNOME|GNOME]] | |||
* If you like [[wikt:versatile|versatility]] and [[wikipedia:Ergonomics|ergonomics]], choose [[wikipedia:KDE_Plasma|KDE Plasma]] | |||
Everything else is "less standard", but still worth trying: | |||
* [[wikipedia:Cinnamon_(desktop_environment)|Cinnamon]] is the default on Mint | |||
* There's also [[wikipedia:Xfce|Xfce]], if you want less bloat, but I've read that nowadays its [[wikipedia:Memory_footprint|memory footprint]] is in the same [[wikipedia:Guesstimate|ballpark]] as Plasma and GNOME.{{Citation needed}} | |||
== Choosing a shell == | |||
<blockquote>Um acshually 🤓, "[[wikipedia:Shell_(computing)|shell]]" can refer to any kind of UI, not just text interfaces</blockquote>Yes, but for the purposes of this page, "shell" will refer to [[wikipedia:Read–eval–print_loop|REPL]] and [[wikipedia:Command-line_interface|CLI]] programs. | |||
Let's be honest, [[wikipedia:Bash_(Unix_shell)|Bash]] and [[wikipedia:GNU_Readline|Readline]] have '''terrible defaults'''. No wonder [[wikipedia:Z_shell|Zsh]] and [[wikipedia:Fish_(Unix_shell)|Fish]] are so popular. HOWEVER, let me be clear that Bash can approximate the ergonomics of Zsh ''really well'', given that you configure it properly.<ref>https://github.com/Rudxain/dotfiles/blob/d02045700129609f2c6dfa91ebf9a54a9d81b012/.config/inputrc</ref><ref>https://github.com/Rudxain/dotfiles/blob/d02045700129609f2c6dfa91ebf9a54a9d81b012/.config/sh/rc#L24-L28</ref><ref>https://github.com/Rudxain/dotfiles/blob/d02045700129609f2c6dfa91ebf9a54a9d81b012/.bashrc#L5-L10</ref> | |||
I haven't tried Fish, because it looks bloated. However, I'd recommend it over Zsh, simply because Zsh is too similar to Bash. If you use a non-POSIX shell, why not go all the way and enjoy the benefits? ;) | |||
Since we're talking about "anti-POSIX", maybe try [https://www.nushell.sh/ Nushell]? It's too weird for me, very "[[wikipedia:PowerShell|PowerShelly]]", lol. | |||
==Usage== | |||
Your distro (and most installed packages) should have docs available locally as [[wikipedia:Man_page|<code>man</code>-pages]] or in <code>/usr/share/doc/</code>. Most DEs have a "Welcome" app that auto-starts on first login, so you should be good to go. | Your distro (and most installed packages) should have docs available locally as [[wikipedia:Man_page|<code>man</code>-pages]] or in <code>/usr/share/doc/</code>. Most DEs have a "Welcome" app that auto-starts on first login, so you should be good to go. | ||
And please: | And please: | ||
* Don't be afraid of the [[wikipedia:Terminal_emulator|terminal]]! Terminals are your friend. Don't let Big <s>Brother</s> Tech tell you otherwise. | *Don't be afraid of the [[wikipedia:Terminal_emulator|terminal]]! Terminals are your friend. Don't let Big <s>Brother</s> Tech tell you otherwise. | ||
* Don't be afraid of | *Don't be afraid of CLI apps! Except <code>rm</code>, that one is dangerous unless you add <code>[https://pubs.opengroup.org/onlinepubs/9799919799/utilities/rm.html#:~:text=%2Di,-Prompt -i]</code>. See [https://www.gnu.org/software/coreutils/faq/coreutils-faq.html#I-used-rm-to-remove-a-file_002e-How-can-I-get-it-back-now_003f how to recover deleted files]. | ||
* Don't be afraid of [[wikipedia:Unix_shell|shells]]! except | *Don't be afraid of [[wikipedia:Unix_shell|shells]]! except Bash, that one is a menace.<ref>https://mywiki.wooledge.org/BashPitfalls</ref><ref>https://github.com/anordal/shellharden/blob/1e629728e37d2e78dd3a06ed69cd54e2f66b87b0/how_to_do_things_safely_in_bash.md</ref><ref>https://github.com/oils-for-unix/oils/wiki/Shell-WTFs</ref><ref>https://github.com/koalaman/shellcheck/issues/3067</ref> I use Bash daily but I recommend [https://oils.pub/ Oils]. | ||
==External links== | ==External links== | ||