I've always had a little bit of a hardon for the console/terminal/whatever in linux. Only downside is that it's just generally not as capable as what the X server can provide (i.e., Desktop Environments, etc.).
First question: Does using the terminal suck up less power than a DE? I assume not really, but a man can dream. If killing the X server and running terminal-only gives me a noticeable increase in battery life, I'm gonna be all over that shit.
Regardless, I'm still wanting to fuck around in the terminal. So I guess the second question is: What are some good common-user-type programs that can be used from the terminal? Shit like browsers, music players, email clients, etc.
No, none of it's all that great. Kinda goes with the territory though.
What I've got so far:
Browser:
Links and elinks. From what I can tell, they're the same fucking thing except you have to hit enter to type things into an entry field using elinks.
Music player:
Cplay and cmus (I think). I haven't been able to do jack shit with cmus, so I play with cplay and it seems to work alright. I don't know about setting up playlists (or if it can, even), and it doesn't play .mp3s. I've got some .oggs so it's not a huge deal for me, but that would probably be a crippling deficiency for most people.
Email:
Mutt. Man, this thing was a fucking pain in the ass to set up. First you gotta download three or four other things that it needs to work with, and then you have to make a couple of .*rc files... one for sendmail (I think) and the other for mutt. They have to be properly set up, of course. There's no way in hell you will ever be able to download this thing and just get it working off the bat without finding a how-to website and following it step-by-step. Even so, I have to use... I think it's fetchmail before anything shows up in mutt. That's right, I have to run a separate program before the one I want to use if I want it to work. Every single time.
Fucking annoying as shit. I guess you can do what I did, and just make a tiny script that runs one and then the other (I named mine "email"... pretty clever name I think). But that still seems like a lot of bullshit just to get an email client running.
Text editing:
Vi, vim and nano. I far prefer nano, but for some reason a lot of other people are in love with vi. I don't get it, but whatever. I've got all three because I like having multiple programs that all do the same thing... just in case.
Other crap:
Htop. It's a system monitor.. pretty decent.
Mc (Midnight Commander). It's a highly recommended file...system..organizer...thing. Whatever you'd call Nautilus, I don't know the technical name. It's pretty decent from what I've found, but I can't use it without just wanting to ctrl+alt+F7 back into the X server and use those GUIs instead.
Frotz. It's an interpreter for Interactive Fiction (Text adventure) games. Yeah yeah, I'm a fag, etc.
Other than that, I've got whatever comes pre-packaged with the most recent Ubuntu, plus probably a few other things I can't remember at all.
What does everyone else use (aside from Gnome, KDE, xfce, etc.)
Posts
There's also a version of Links with a framebuffer mode, so you can view websites without the need for X.
*alldicks*
Jesus christ I love you.
Edit:
How does one get that stuff working, anyway? Is it easy or a pain in the ass?
Also you'd get less disk I/O, especially at boot time. A little more juice
Not that this is intrinsic to the CLI, but if you set up a script to disable wireless then you'd save power whenever wifi is off.
So I suppose the answer to your question is "a little bit"
I could never be bothered to compile it from source (I ran Mandriva) but any Gentoo or Debian-based system can get this pretty easily.
Now let's not forget NETHACK, the most awesomest ASCII game ever.
And of course, the joy of figlet.
apt-get install figlet
You will thank me later. It is the program of kings.
For graphical Links you'll probably have to compile it yourself.
Mplayer has a ton of different output modules which you can use with the '-vo' command line switch. For coloured ASCII (probably the nerdiest way to watch The Matrix ever) use '-vo caca'.
Before your complete decent into madness however, check out WMii and AwesomeWM. They're tiling window managers which are quite lightweight and, (surprise!) manage your windows! They also let you tile a truly insane number of terminals into all your available screen real-estate. And then some. Plus Firefox!
Darn it! Why did you have to get me started. Now I'll spew out a bunch of random stuff I know, plus stuff I looked up just for you. Because I REALLY like research. You freak.
Ahem!
Don't forget to ratchet up your terminal resolution in your /boot/grub/menu.lst file.
Example:
kernel /boot/vmlinuz26 root=/dev/sda2 ro vga=773
You mentioned vi and vim (I won't crush your spirits by telling you that there's a high chance they both launch vim), but one would be aloof to not call Emacs to your immediate attention. It's very, very, very big and exciting, if you like that sort of thing. It does everything. There have been rumors that it even edits text. I have been informed by my obsolete UNIX manuals that some people have their login scripts configured to automatically launch Emacs because that's the only thing they ever use. It's seriously supposed to be pretty amazing or something. I don't even know why I'm telling you all this because we both Know that Vim is better, amirite?
I'm a fan of IRC, and I like irssi. It is teh best.
I also enjoy AIM. Pork is pretty good for that.
wget is essential for downloading (and resuming, something Firefox still has issues with).
If you want to be all multitasking and stuff, learn how to use screen. It's basically a window manager for the console. I use it mainly because I can start a program going, then disconnect the screen session and forget about it. Then, later, I can reconnect the session and my program is still running. It's better than I make it sound. Think about opening a terminal, typing "screen", typing wget $URL, then closing the terminal without interrupting your download. Yes.
rtorrent is good for your completely legal acquisition of legally distributed files.
Install "bb", if your distribution has it. It's a demo. And it was completely amazing the first time I saw it. Eight years ago.
You want command line music players? MPD is good, though I've only ever used it through GUIs. Herrie looks decent.
Cool kids also learn a lot about pipes and redirection. grep, cat, and /dev/* are your friends. From there I recommend that you learn enough about bash scripting to survive, then pick up perl or python and get decent at it.
Oh yeah, and you can hold down shift and press page up or down to scroll. But you knew that already. Yes, you did. You did, didn't you? (Please?)
the mplayer ascii module .... converts video to ascii ?? Tis a shame dwarf fortress doesn't work in linux natively.. ascii game ftw
Librarians harbor a terrible secret. Find it.
No I didn't, haha. I used to a few years ago, but I'm still basically a linux newb and I forget shit all the time. I was actually coming back here to ask just that question (HOW THE FUCK DO I SCROLL WAH).
About those framebuffer resolutions... what's the formula to calculate those bad boys? Or is there a more comprehensive list floating around? I'm running at 1280x800, and so far the only console mplayer vo that kind of works is the ascii one. And even then, it's just one small line that keeps appearing and disappearing over and over.
It's not that huge a deal, but I'll be honest, I'm dying to watch ascii porn.
Speaking of which, I remember seeing bb some time ago, back when I was fucking around with slackware. I think I ran it by accident and was pretty floored... spent like ten minutes entering random shit into the command line, seeing if I'd stumble over anything new.
...anyway, thanks for the responses. I'm going to go waste a little time trying some of these bastards out.
---
I've got a spare copy of Portal, if anyone wants it message me.
I've gotten fairly handy with piping, redirection and grepping to make commands easier, but what are you doing with /dev/*?
As for the uses of /dev/*, there's a bunch of fun things you can do.
For example, this fun line pipes all errors and warnings generated by a makefile into a text file.
make install > /dev/null 2>mywarninglog
I was pretty sure that you could pipe wav files directly to your sound card device, but I got a permission denied error; apparently "they" expect alsa or whatever to manage that. This is also fun.
ahh hahahahah
cat /dev/random > /dev/mouse, of course
More seriously, it's handy to use /dev/null as a bitdump and /dev/dsp can be used for simple sound alerts.
Isn't that some kind of freaky recursion?
As in the CLI window manager? I tried getting it to work a while ago, but I never got it working (probably a good thing - would've been driven mad by CLI only). Would it work in a terminal app?
Yes, it works perfectly in terminal emulators. I tend to just open more tabs rather than using screen's advanced features, but it's very useful for headless systems -- log in, attach to running screen, do work, detach.
Pft, figures. Well, I dunno, maybe I already have it. I remember Ubuntu 7.10 having really bad issues running terminal only (I'd see about 25% of the screen), and now it works fine out of the box. Maybe that doesn't have anything to do with anything, though.
So, is there something special screen would do that ctrl+alt+F# can't?
Please no facepalming.
And of course, the ability to detach.
Had you said WeeChat instead of irssi I would have agreed with you. Has a nicklist by default, and more importantly, it allows you to write plugins in several different languages like C, Perl, Python, Ruby & Lua. Being limited to just Perl is not a "+" in my book.
Neat, thanks. I'm going to make Screen work this time.