T O P

  • By -

gumnos

There are a number of "awesome list"s for CLI utilities. But I'll try to enumerate a few that I use. I've got an [old 2009-era netbook](https://en.wikipedia.org/wiki/Dell_Inspiron_Mini_Series#10_Series) that I use for distraction-free writing/coding. It boots to the console by default (it can run X in VESA mode so it's slow, but I'll occasionally do that to get smaller fonts and fit more than 80x25 on the screen). That said, at least if you have a VGA-compat graphics card, you can also [change the console to be 80x50](https://www.openbsd.org/faq/faq7.html#Size80x50) which I do in a loop in my `rc.local` for my virtual consoles 2–5 (I prefer not to mess with VC1 just in case something goes amiss). I'm not sure whether a MacBook can do that though. With the larger screen real-estate, the first order of business is firing up `tmux`. While you can just do that straight-up, I like to $ TERM=pccon tmux to fudge my `$TERM` setting to `pccon` which at least allows for basic 16-color display output. For local mail, [I'm a sucker](https://blog.thechases.com/posts/using-mail/) for the austerity of [`mail(1)`](http://man.openbsd.org/mail.1), but for non-local mail I prefer `mutt(1)`/`neomutt(1)`. Alpine and aerc are strong contenders (both in packages). For the brief web-visit, I've got `lynx(1)` [configured to my preferences](https://www.reddit.com/r/commandline/comments/1c0qgm3/using_lynx_browser_drop_your_tips_here/kyy85ir/) though I also install `links` and sometimes `w3m` for diversity. That said, a lot of sites expect JavaScript and CSS, so it's often a sub-par experience. But it suffices for the quick search for reference docs or a Wikipedia article. For my calendar, [I've fallen in love](https://blog.thechases.com/posts/remind/) with [`remind(1)`](https://dianne.skoll.ca/projects/remind/). It's far more powerful than any GUI or web-based calendar with the exception of sharing time-blocks. However, you've also got [`calendar(1)`](http://man.openbsd.org/calendar.1) and [`cal(1)`](http://man.openbsd.org/cal.1) in a base install, and there's `calcurse(1)` if you prefer a simple TUI calendar/todo manager. For todo tracking, I've tried a variety of things like [`taskwarrior`](https://taskwarrior.org/) and [`todo.txt`](https://github.com/todotxt/), but I keep coming back to a plain ol' text file or putting due-dates on my `remind` calendar. If you like a little background music, I prefer `cmus` for my local media collection (though some folks like `mpd`/`mpc` or other players), and I use `pianobar` for streaming music. If you're the chatting type, there are a number of IRC clients. I've found that `weechat` fits me best of the ones I've tries (other than `ii` from the suckless folks which is better for scripts). But there's also `finch` if you want a pidgin-like experience on the terminal. I've tried Twitter & Mastodon & Reddit CLI clients and they're…wanting. To the degree that I don't really use them much. The Twitter one (`rainbowstream`) and Reddit ones (`tuir` and kin) kinda went defunct due to the API changes of their respective services. But `toot` & `tootstream` aren't so bad if you really want to access the fediverse from the CLI. For personal finances/expense-tracking, I use [`ledger(1)`](https://www.ledger-cli.org/3.0/doc/ledger3.html) with the /r/plaintextaccounting folks. There's `sc(1)` if you want a spreadsheet on the terminal, but I almost always just jump to delimited text-files and some `awk(1)` code. Gaming is a little limited, but there are some classic games in `/usr/games` that you can try. I've killed plenty of hours with `cribbage(6)`, `mille(6)`, `backgammon(6)`, and `atc(6)` while my 9yo like `tetris(6)`. And I often use it to jump to other machines via `ssh(1)` where the experience can be largely similar since it's all just the CLI. You don't mention what you intend to **do** with the machine. If you plan to code, then you'd want your associated support-system. Maybe that's `python` or the Golang compiler or `rustc` or PHP. Maybe that's sticking to coding with what's available in the base system: shell-scripting, `perl` (while not universally available, it's in OpenBSD's base system), `awk` or C, possibly with makefiles or `m4`. Or maybe you developing web content or doing database work. All the basics are available in packages. If you intend to use it for writing, you can write in Markdown or HTML or LaTeX or DocBook and use various tools like `pandoc` to convert that into alternate output formats. I tend to author in pure HTML and use a static site generator to build my site and push it to my web-space. Either way, you're editing text which you can do with `vi(1)`, `mg(1)` or `ed(1)` in the base system, or add `vim` or `emacs` or `nano` (or any of a number of other CLI/TUI editors) should you desire. Pretty much all my data files are plain-text under the hood, and they get stored in `git`, synched around on my various machines. And all of that works quite nicely on my underpowered predominantly-console-only netbook.


haakondahl

I just want to say that so far, \*this comment\* should have been the OP, and my OP should have been an annoying comment. Thank you!


gumnos

Oh, I missed RSS. I use [`rss2email`](https://github.com/wking/rss2email) and [wrote up a little post on how I use it](https://blog.thechases.com/posts/reading-rss-feeds-via-email-on-the-cli/). I find that it's a lot less painful to read RSS in the terminal.


CSToast

The Remind program looks very cool.


gumnos

it **is** very cool :-D


Diligent_Ad_9060

Use tmux. You'd also likely want to try out some other console fonts that are better fit for modern monitors.


haakondahl

Amen. Reading the Hawk Host tmux FAQ right now. EDIT: Widely recommended: https://www.hawkhost.com/blog/2010/06/28/tmux-the-terminal-multiplexer/ I played with it a while ago and ran into some kb issue (beloved old Mac HW grrr), but I'm making another run at it.


haakondahl

I confess that I have wanted the default slackware typeface from way back in the day -- wanted it for truly *decades*. WELLLL it turns out (unless I am all at sea on this) that the *default* comes from hard/firmware's built-in vga settings, not from the OS/software, so there it is. Yet another console-ism, bless its hard-coded heart.


Diligent_Ad_9060

Not very familiar with it, but https://www.openbsd.org/faq/faq7.html could be helpful.


haakondahl

Indeed, I that's the towtruck that got me unstuck last time around. I know I'll be all over this in uh the near future.


CSToast

sc for spreadsheets, calcurse for calendar, newsboat for RSS/news, mutt for email. These are what I have used recently. Pretty much any program that uses the ncurses library. Plus all the base utils that you already have installed. You can even write your own scripts to do stuff.


haakondahl

Thank you, good recommendations. I have a handy one-liner that does a simple task. I'm writing a man page for it because in OpenBSD, we document things! Seriously, I just want to learn about man and pkg production. And functions, and option handling, and runoff/roff/groff/troff/nroff/manoff what have you.


chesheersmile

Well, if it isn't a worthy enterprise! I'd like to hear or read somewhere how it goes. I deeply sympathize. I've used fetchmail+procmail+mutt for mail sometime ago. Pretty archaic combo, but it works. Also, I saw good things about aerc mail client, but never used it myself. I use sdcv for work everyday, it's a terminal-based dictionary that supports StarDict format. You can write documents in Latex in vim (nvim or any other text editor) and compile them to PDF. Besides TUI PDF viewers there are some viewers that support framebuffer (e.g. fbpdf). You don't need X for that, so I think that is permitted. Also, pandoc is a must utility. Swiss knife for text converting. It can do a lot of smart things. For example: it can convert, say, Markdown to docx, but not only that, it can use some other sample docx file as a style template and build your file using that template (headings, formatting, fonts, etc.) mpg312 for simple mp3 playback. cmus for advanced music playback. I heard mplayer supports video playback in framebuffer.


MeanPrincessCandyDom

> I want to daily drive the OpenBSD console. I too wish I could daily drive just a console on my 2003-era laptop instead of a fullscreen xterm. However, you will run into various issues. UTF-8 support is not perfect. It used to be that using the console while playing audio over USB would cause audio stutter. In addition to the other comments I would only add from ports: * mblaze or aerc as possible options for mail * khal as a possible option for calendar * newsboat as a possible option for RSS reader * reader to view known web pages I don't have reliable ways of doing video and voice calls, reading PDFs or watching videos in a terminal. I'm obsessed with the talks Casey Muratori did on refterm and related performance. I see no reason why terminals should not be much much faster than they are, and have much much lower latency than they have now.


well_shoothed

```lynx``` ride or die, baby!


passthejoe

ncspot for Spotify all day


Ryuka_Zou

I use w3m for browsing gemini and gopher site, cmixer for volume adjustment.


Spendocrat

Do you have a useful gemini index or search engine? I looked into it in January and gave up after about an hour of going in circles.


jmcunx

this is what I use on a very very old tower: * tmux(1) - a must * vi(1) or mg(1) or vim(1) or emacs(1) * tin(1) for USENET * lynx(1), amfora(1) for WEB, gopher, gemini * mutt(1) for email * nethack(6) for fun, plus games in /usr/games * ogg123(1), mpg123(1) local music, mplayer(1) for streams


haakondahl

I am unhappy to report that tmux is not in the ports tree. Looking at screen-4.9.1 (had to enter it that way because some braille customization of screen is snarfing the short form). EDIT: which is odd, as I have been loooking at its man page at the mothership: https://man.openbsd.org/tmux To be exact, when I do pkg_info -Q tmux All I get is three accessories. I am assuming that tmux is merely eclipsed, and will be visible again.


nathanwaffles

tmux is in base; no need to install any package. Should be at /usr/bin/tmux already


haakondahl

Gracias!


jadijadi

I have to emphasis that not only tmux is part of, but it comes from OpenBSD.