Active Topics

 


Reply
Thread Tools
Posts: 102 | Thanked: 171 times | Joined on Nov 2014
#1
(tl;dr: CLI apps are very functional. If you have some, please tell me about them! )

I've been going through my computer as of late and I've been looking at apps that are unnecessarily heavy and replacing them with more lightweight solutions.

And, by Zeus, there's a whole world of text-based apps that are just as effective and intuitive as their graphical counterparts. I'm not claiming to know the ins-and-outs of these programs; in fact, these are some recent discoveries on my part that I'm just hyped about. Thus far, here's what I replaced and what the replacements are:

Thunderbird--->Mutt (w/ sidebar patch)
A whole email client running in the terminal. Not even the combined memory usage of it and a terminal emulator comes close to being 1/8 of what Thunderbird demanded, yet it works just as well.

IMAP/POP3/Maildir support? Check
GnuPG/PGP encryption? Check
Support for external password managers? Check
Automatic login+syncing? Check
Customizable header (every bit)? Check
Printing? Check
Email alerts? Check
Awesome? Check, check, check.

The main issue I had was in setting it up; you pretty much have to play with the config files, download some extra stuff, and definitely read the manual to be ready. I know I needed to. It's all manual configuration, but once it's set up, you're good to go! Plus, with the sidebar, it looks like any other email client!

So, how much memory does it take? Minus the terminal emulator itself, Mutt takes ~6MB to do the same job Thunderbird does at 110MB (that's without add-ons as well). And it's lightning fast to boot. Insane.

Clementine+Rhythmbox---->Music on Console (moc)
What about a whole music player? It literally does everything Rhythmbox does. Everything. Playlists, sorting, STREAMING music! From the command line! The one thing that's missing is that it doesn't display album art or automatically fetch it, but I'll let that go on the basis of the UI being text-based.

There's another CLI-based music player (Music Player Daemon) with an extremely light+elegant graphical front-end (Sonata), and it can be remotely accessed, but I couldn't get it to read music from my Music folder (it has it's own dedicated folder in the root filesystem). The workaround was that you have to make a whole other user group to give it the right permissions to read the music from the Music folder, and that's just to prevent MPD from becoming a music-playing security hole. MOC doesn't need all that; everything's in the config file.

Transmission--->rtorrent
I could've used the Transmission CLI client, but rtorrent is lighter and more customizable. Also, handling magnet links in rtorrent was easier than Transmission without its front-end; just press "enter" and copy-paste the magnet link into rtorrent.

Ksysguard+GNOME Monitor--->Htop
Not much to say on this one, especially since a lot of people feel the same way about it as I do. It's easy to use at far less memory than the aforementioned task managers. However, htop lacks a network monitor, for which I present...

Ksysguard+GNOME Monitor (the network monitor bit)--->iftop
The perfect companion to htop. It's like they were made for each other. <3

Akregator+Blam--->Newsbeuter
There's an estimated 2.638 billion RSS clients for the command line, so why not use them?! I've been jumping through a lot of them and settled on Newsbeuter because the default keys are similar to Mutt. However, Snownews is pretty easy to use.

I do admit, however, that I'm slightly cheating. I use Newsfox more, primarily because having an RSS feed open in a tab is MUCH easier to switch back-and-forth to than switching to a whole other window/workspace.

Gnote+Quickfox--->hnb
I know what I said about Newsfox, but I have one excuse for using this app- it has structure and can export in many different formats, two things I don't recall Quickfox or Gnote having (I could be wrong, but too lazy to check). Besides, all I have to do is press F5 to drop a terminal down and put it away, so it's not too disruptive to my Firefox experience.

Minitube--->youtube-viewer
I've used Minitube for a couple years. I honestly had no complaints about it. That is, until youtube-viewer came along and hypnotized me into sacrificing Minitube to the based lords that made youtube-viewer. Yes, a whole YouTube client in the command line. It even handles an account and subscriptions like the web-based interface, minus the Google cookies!

The best part about it is that you can choose whatever video player handles the video (as long as the video player can handle streaming video). I just go with mplayer since it's enabled by default and just works. Doesn't tear or anything, plus it outputs the video to whatever resolution I specify!

Another nifty thing about using mplayer with youtube-viewer is that you can kill X/Wayland (whichever one you're using), use GNU screen, and still watch YouTube since mplayer only needs the framebuffer to work.



With all of these nice CLI apps, there's also a handful of apps that I just don't have the heart to replace:

Leafpad
Simple. Elegant. Beautiful. Can actually handle fonts that vim (running in the terminal) and nano can't. My favorite editor until I learn how to use Emacs lol

Firefox
I can easily just compile links with framebuffer support or just use elinks to browse the web. I can just use Midori, which has nearly all the functionality Firefox has with 1/2 of the memory usage (even if I use profile-sync-daemon). But I can't do it. Firefox is love. If I could run Firefox in a framebuffer, I'd probably abandon all desktop environments.

Nautilus/Dolphin
Midnight Commander's a cool file manager, and it really shows how basic the concept of a file manager really is, but Nautilus is, IMHO, easier to use, and Dolphin is, IMNSHO, the best file manager ever conceived by humans.

LXImage
There do exist CLI-based image viewers, but I honestly have no use for them, especially with something as simple as LXImage.

ePDFviewer
Same for CLI-based PDF readers (those exist too). However, no CLI-based PDF readers I've seen have printing support (I could be wrong, but too lazy to look up), which is a deal-breaker for a format whose sole reason of existance is to be printed.


That's all the ones I have thus far. If you've used CLI apps, please tell me about them!

Last edited by Tigerroast; 2014-12-04 at 00:54. Reason: typo
 
Posts: 915 | Thanked: 3,209 times | Joined on Jan 2011 @ Germany
#2
Originally Posted by Tigerroast View Post
Clementine+Rhythmbox---->Music on Console (moc)
What I miss in moc is a music browser/search engine.
This is the only reason why I still have quodlibet installed, but I mostly use moc.
Also have a look at cplay! I used it before I discovered moc and once you know the shortcuts it's good too. I think the UI works even better on small screens.
Basically it's just a front end for various console music players, unfortunately mplayer isn't intended to be one of these. It still works mostly (plays music fine) but cplay isn't able to show things like track duration if used on top of mplayer.

Originally Posted by Tigerroast View Post
Ksysguard+GNOME Monitor (the network monitor bit)--->iftop
Thanks! I use nload so far, but iftop seems to provide more info.

Originally Posted by Tigerroast View Post
Leafpad
Simple. Elegant. Beautiful. Can actually handle fonts that vim (running in the terminal) and nano can't.
Huh?
While I still find leafpad a nice program (for its limited purpose), who ships fonts that vim can't handle?

Originally Posted by Tigerroast View Post
Firefox
I can easily just compile links with framebuffer support or just use elinks to browse the web. I can just use Midori, which has nearly all the functionality Firefox has with 1/2 of the memory usage (even if I use profile-sync-daemon). But I can't do it. Firefox is love. If I could run Firefox in a framebuffer, I'd probably abandon all desktop environments.
It's long ago (5 years?) but I'm pretty sure I've used Firefox on framebuffers.
You may also want to have a look at netsurf. Midori looks bloated in comparison and in contrast to dillo, netsurf can handle javascript in recent versions (although not yet perfect, so you might want to keep another browser as backup).
But I also miss a text browser with css and javascript.

Originally Posted by Tigerroast View Post
Nautilus/Dolphin
Midnight Commander's a cool file manager,
I won't comment on Dolphin here, but as for TUI file managers have a look at vfu and vifm if you want an mc alternative!

Originally Posted by Tigerroast View Post
LXImage
There do exist CLI-based image viewers, but I honestly have no use for them, especially with something as simple as LXImage.
I prefer geeqie.
As for CLI viewers my main problem is, that they rely on either libaa (which only allows black&white output) or on libcaca (which has outright ridiculus performance requirements).

Originally Posted by Tigerroast View Post
ePDFviewer
epdfviewer isn't bad, but it's abandoned. Have a look at zathura! If you like vim then you'll like zathura as well.
 
Posts: 1,048 | Thanked: 1,127 times | Joined on Jan 2010 @ Amsterdam
#3
Just a quick reply...

MOC

For me it's MPD/ncmpcpp over MOC because of the support for remote access. I like to be able to listen my music where ever I may be located at any given time. AFAIK MOC only supports local networks. The config files for MPD really only look intimidating, but if you've done it once, it's fairly straight forward.

TaskWarrior

I use it a lot, mainly because of the excellent syncing function. Adding a task on my laptop will auto update other devices on my local network.
 
nokiabot's Avatar
Posts: 1,974 | Thanked: 1,834 times | Joined on Mar 2013 @ india
#4
Rookie here and i am enjoying mc and mpd for a while and looks like time to drive the mutt and a handful also work on n900 ! great thread btw
Keep it going!
 
Posts: 102 | Thanked: 171 times | Joined on Nov 2014
#5
Originally Posted by sulu View Post
What I miss in moc is a music browser/search engine.
This is the only reason why I still have quodlibet installed, but I mostly use moc.
Also have a look at cplay! I used it before I discovered moc and once you know the shortcuts it's good too. I think the UI works even better on small screens.
Basically it's just a front end for various console music players, unfortunately mplayer isn't intended to be one of these. It still works mostly (plays music fine) but cplay isn't able to show things like track duration if used on top of mplayer.
I'm 90% sure cplay has been unmaintained for a while now. I'm gonna have to check. moc definitely gets the job done though.

Thanks! I use nload so far, but iftop seems to provide more info.
No problem!

Huh?
While I still find leafpad a nice program (for its limited purpose), who ships fonts that vim can't handle?
*slowly raises hand*

It's long ago (5 years?) but I'm pretty sure I've used Firefox on framebuffers.
How? I'd really like to know.

You may also want to have a look at netsurf. Midori looks bloated in comparison and in contrast to dillo, netsurf can handle javascript in recent versions (although not yet perfect, so you might want to keep another browser as backup).
But I also miss a text browser with css and javascript.
I'll have to look at Netsurf. I like Midori mainly because it has a javascript blacklist like NoScript+adblockers built-in. Those two features are indespensible to me.

Btw, links has CSS and image rendering. Idk if it has javascript though. I doubt it does.

I won't comment on Dolphin here, but as for TUI file managers have a look at vfu and vifm if you want an mc alternative!
Will do!

I prefer geeqie.
As for CLI viewers my main problem is, that they rely on either libaa (which only allows black&white output) or on libcaca (which has outright ridiculus performance requirements).
I only use LXimage because I wanted to try MATE and it was left over after uninstalling MATE. I will check geeqie though.

epdfviewer isn't bad, but it's abandoned. Have a look at zathura! If you like vim then you'll like zathura as well.
Thank you for the suggesstion on Zathura!
 
Posts: 102 | Thanked: 171 times | Joined on Nov 2014
#6
I have more CLI apps I've gotten around to using!

These are just some nice programs I now use in conjunction with Mutt:

w3m
Something mutt cannot do is parse HTML. By itself, that is. While I'd prefer it if people/businesses would stop sending HTML mail in general, there's no way to convince them otherwise ("professional-looking" and all that). As an added bonus, Mutt doesn't even have to export the message into another window!

aspell
Command line spell checker? Yes, please! It didn't occur to me that I needed this tool until yesterday, when I needed to send an important email. I wanted to try this from Mutt instead of Gmail's web interface. I was stressing hard over the lack of a spellcheck, to the point where I proofread that email at least three more times than I normally would have. This will surely save me a few gray hairs using Mutt in the future.

figlet
Pretty much all it does on the surface is turn text into their oversized, ASCII-like equivalents and spit them back out in the terminal. However, its functionality and uses extend far deeper than that. I primarily use it to make nice-looking email signatures for my non-business email accounts, but I've seen people use it for login prompts, display messages upon launching a terminal (via scripts, like archey or screenfetch) and even as a screensaver.

antiword
Occasionally, I'll get an email that contains a Word document. Since I've gotten accustomed to checking my email with Mutt, I usually have to open it up with LibreOffice Writer, which takes a while since I'm not running it as a daemon. Then I found this little tool. All it does is rip out the plain text, stripping it of all formatting, and displays it in a new terminal window. I didn't bother gauging the time difference, but I'll estimate that I'm halfway done replying to the email before Writer finishes loading.

fim
Paints images in a framebuffer. It only hit me that I needed this when I got a promotional email from Nintendo, and all of their emails are HTML'd up, plus images. Fits in nicely for stuff like that. I probably won't need it very much, but you know what they say: nice to have it and not need it than need it and not have it.

With all of that, reading some heavier emails is (negligably) more cumbersome. As in, an email with HTML+pictures with a Word doc attached takes an additional ~2MB+ RAM.

In addition to the "addons" for Mutt, here's some more CLI apps I'm now using:

aria2
As a user of Arch, I find myself updating quite frequently. In an effort to speed up the download of the updated packages one of the TUs made a neat wrapper for Pacman called Powerpill. This uses aria2 to allow parallel+segmented downloads of packages. And boy, do they fly! I've gotten around to using this as a backend to Midori's download manager, and it makes me forget how slow my line speed is sometimes.

dict
Wanna look up the definition (and correct spelling+pronunciation) of a word without a web browser, search option in the dash (if you're a GNOME/Unity user), or having an overly clunky app (or frontend) to do the same thing? Bam. I haven't found a good offline American English dictionary that's not too bulky, and I have to constantly search in a browser for definitions, but this is a great middle-ground. It searches online, but very quickly.
 
Posts: 102 | Thanked: 171 times | Joined on Nov 2014
#7
Even more CLI apps!:

Cataclysm: Dark Days Ahead
There's a pack of text/ncurses-based games in a package laying around somewhere (bsdgames, if I recall), and I've been going through them. This one's my favorite. It's a post-apocalyptic rougelike/adventure game that, unlike most other roguelikes, tosses you into an overworld. This game forces you to use your imagination and get creative, and, just like many old-school RPGs, character creation plays a huge role (pun not intended) in how you'll play the game. The devs got really creative with what attributes and stats would be in this game, even going as far as throwing 15+ different fighting styles in the game.

I have two major complaints about this game, however. First off, the combat is somewhat of a letdown. All you do is run into an enemy (or, if you have a firearm, shoot at them) and pray to RNGesus that you can deal good damage. However, there is a saving grace for the combat, and that saving grace is how the rest of the game plays.

In combat, you don't take "turns." Instead, every move you make, every turn you take, advances the world as well. Therefore, all of the player's moves are one "turn" that advances the world. This means that, if you engage an enemy, all other enemies in the vicinity are free to bum rush you.

My second complaint about the game is that chance plays a major role in the game, so you'll be praying to RNGesus a lot outside of combat. It's easy to die because of some BS in the game, or even be killed by an enemy that you have no business losing to.

With all that said, this game has great depth and is a very interesting roguelike if you're interested.


Alpine
Mutt is, IMNSHO, eight levels above Alpine if you're in need of a CLI email client. However, Mutt is daunting in that its configuration isn't very easy to wrap one's head around without RTFM, which people should do more of anyway. For those who would prefer a much easier CLI email client (if interested), Alpine might do the trick. Be warned that configuration in Alpine is a mess.

screenfetch
I mentioned it briefly when talking about figlet, and forgot to give it its own place. It definitely deserves it. screenfetch is a tool that takes a quick snapshot of your system's state (CPU/RAM usage, OS, hostname, user name, etc) and displays it whenever it's run. I, like many others, wrote an autostart script for screenfetch in the shell config file (.zshrc for me) so that it runs each time a terminal is started (whether an xterm or a TTY). It's the first script I've ever written, so screenfetch definitely gets a special place in my heart. <3
Speaking of which...

Zsh + oh-my-zsh
Not really a CLI app, but an alternate shell+framework. When I first starting experimenting with Arch Linux, I was still averse to using the command line (as many others are, and I honestly cannot blame them not one bit), albeit more comfortable, so I thought, "Hey, surely there's a way to spruce it up a bit? Perhaps make it nicer to look at? Easier to use?" I then looked on the ArchWiki and found a list of alternative shells, Zsh looking like the best candidate for an upgrade.

After making it my default shell, I wanted to try out one of the Zsh frameworks, and oh-my-zsh seemed like the friendliest one. Man, I never looked back after that. I hear prezto is faster, but I really don't feel like switching.

While I'm at it, I might as well include my favorite terminal emulator.

Terminology
It depends on just about all of EFL, which is fine by me, considering that I like Enlightenment a lot.

There's a lot to talk about with this terminal emulator, but here's the skinny on my favorite features:
-set a background in the terminal as a picture or video
-optional transparancy
-can use any fonts you please and easily switch between them with the config menu (no playing with config files here)
-options galore to take advantage of everything EFL can offer
-easily enable 256-color mode as a FEATURE! Makes urxvt obsolete in my eyes.
-can make other windows via horizontial/vertical splits, just like GNU Screen.
-very pretty, very shiny. Blends in easily with Enlightenment

My one gripe is that it's pretty heavy for a terminal emulator (~40-50MB), but I can easily let that slide.
 
wicket's Avatar
Posts: 634 | Thanked: 3,266 times | Joined on May 2010 @ Colombia
#8
I'm surprised you haven't mentioned GNU screen or tmux (I used to use screen but later switched to tmux). I personally can't live without it. Not only is it a great way to manage multiple terminal instances but for me the killer feature is the ability to connect and attach your entire session from a remote location via SSH and that you can leave your session running when you disconnect.

As for terminal emulators I've grown very fond of the Quake-style drop-down. I use Yakuake and set it to run "tmux a || tmux" on startup so it will automatically attach a tmux session if one exists otherwise it will start a new one.
__________________
DebiaN900 - Native Debian on the N900. Deprecated in favour of Maemo Leste.

Maemo Leste for N950 and N9 (currently broken).
Devuan for N950 and N9.

Mobile devices with mainline Linux support - Help needed with documentation.

"Those who do not understand Unix are condemned to reinvent it, poorly." - Henry Spencer
 
Posts: 102 | Thanked: 171 times | Joined on Nov 2014
#9
Originally Posted by wicket View Post
I'm surprised you haven't mentioned GNU screen or tmux (I used to use screen but later switched to tmux). I personally can't live without it. Not only is it a great way to manage multiple terminal instances but for me the killer feature is the ability to connect and attach your entire session from a remote location via SSH and that you can leave your session running when you disconnect.
I'm just as surprised as you are that I didn't dedicate a paragraph or 5 or 6 to GNU Screen. I did mention it while talking about how Terminology can split like GNU Screen can, but Screen really is a champ.

I've used Ratpoison quite a bit, which is the X equivalent of Screen. It's quite a nifty desktop. Super-lightweight to boot.

As for terminal emulators I've grown very fond of the Quake-style drop-down. I use Yakuake and set it to run "tmux a || tmux" on startup so it will automatically attach a tmux session if one exists otherwise it will start a new one.
So have I. I use the drop-down terminal extention for GNOME3. It gets the job done for quick tasks (updating, htop/iftop) or running moc, but lack of tabs is pretty disappointing. Yakuake/Guake are pretty nice.

I've looked at tmux before. What are the advantages it has over Screen?
 
wicket's Avatar
Posts: 634 | Thanked: 3,266 times | Joined on May 2010 @ Colombia
#10
Originally Posted by Tigerroast View Post
I'm just as surprised as you are that I didn't dedicate a paragraph or 5 or 6 to GNU Screen. I did mention it while talking about how Terminology can split like GNU Screen can, but Screen really is a champ.

I've used Ratpoison quite a bit, which is the X equivalent of Screen. It's quite a nifty desktop. Super-lightweight to boot.
I hadn't heard of Ratpoison before. There's also Xpra but I still haven't gotten around to trying it out. Unlike Ratpoison it's not a window manager so it should be usable with whatever window manager/desktop environment you like.

Originally Posted by Tigerroast View Post
So have I. I use the drop-down terminal extention for GNOME3. It gets the job done for quick tasks (updating, htop/iftop) or running moc, but lack of tabs is pretty disappointing. Yakuake/Guake are pretty nice.
Who needs tabs when you've got Screen/tmux? :P

Originally Posted by Tigerroast View Post
I've looked at tmux before. What are the advantages it has over Screen?
Check out the tmux FAQ for the main differences. Some of my favourite features include vertical pane splitting, automatic renaming of windows/titles, better UTF-8 support, the status bar being on by default. I also like that the default key binding doesn't break the shell usage of Ctrl-A to move the cursor to the beginning of the line, but bare in mind that a lot people hate it and end up remapping the keys to a layout similar to Screen (the prefix key in tmux is Ctrl-B). I prefer the key mapping for handling nested sessions too (press Ctrl-B twice). The memory usage is much better in tmux too!
__________________
DebiaN900 - Native Debian on the N900. Deprecated in favour of Maemo Leste.

Maemo Leste for N950 and N9 (currently broken).
Devuan for N950 and N9.

Mobile devices with mainline Linux support - Help needed with documentation.

"Those who do not understand Unix are condemned to reinvent it, poorly." - Henry Spencer
 
Reply


 
Forum Jump


All times are GMT. The time now is 00:10.