-- Leo's gemini proxy
-- Connecting to nytpu.com:1965...
-- Connected
-- Sending request
-- Meta line: 20 text/gemini;lang=en-US;charset=utf-8
I’ll be going over software that I use daily (or at least often), most good, some not so good. Recommendations are libre, or at least open source.
A decent browser, as good as a web browser can be at least. I like the vim bindings (the main selling point) and the high depth of customization, far exceeding any other browser now that antitrust-shield (a.k.a. “firefox”) killed classic extensions. With the advent of Manifest V3, the mainstream browsers now give users and extensions the same power that the Judenrat held in Nazi Germanyᵇ, so I’ll never be using them any time soon. Qutebrowser /is/ based on qtwebengine, which is based off of chromium, so in the end I still am supporting the google monopoly, but at least not as much as if I actually used chrome/chromium. It’s not like it would ever be possible to write your own browser engine anyways, so might as well use the de facto reference implementation (not that it’s meant to be used as reference for anybody to make their own) and have anti-google features built on top. I’d recommend, better than other browsers at least.
[b]: not that google is necessarily on the same level of the nazis, but let’s admit it, they would wipe out the jews if it gave them $1,000 more profit and they could get away with it.
A beautiful browser for gemini and gopher, replete with a feed reader and lots of awesome features. What I use every day to browse gemini and gopherspace.
I use mpv with some key bindings in qutebrowser to watch any videos I like thanks to mpv’s integration with youtube-dl. I usually find videos via youtube’s rss feeds or by looking on a youtube proxy like invidious.
I use a self-hosted miniflux instance as my rss reader. It’s dead simple to set up.
Miniflux has a good minimalist reader so I read all my rss feeds in that, but for other articles I just stumble across or am sent, I use wallabag. A bit of a pain to set up, but nothing difficult.
I use zsh and oh-my-zshᶜ because I want pretty themes and good completion without having to do much setup work. I use the agnoster theme, and I love the git/fossil integration. I generally want something that works, looks decent, and doesn’t require a lot of setup, configuration, or babysitting, so a near-default omz install works fine for me. I obviously add my own aliases, functions, envvar definitions, etc, but the main shell config I don’t want to deal with.
Like my shell configuration, I just don’t want to do a whole lot configuring my multiplexer. I use the Powerline Cyan Block theme from tmux-themepackᵈ and that’s it. I do use tmuxinatorᵉ scripts to be able to quickly open up common session setups. My usual setup is to have a “messaging” session that has neomutt, weechat, and ncmcpp, and a “main” session that I do stuff in. If I’m working on multiple projects and want clean workspaces then I’ll open up an “editing” session, which has one neovim pane, another in the working directory for testing, compilation, etc, and a third pane for man pages, documentation, running unrelated commands, etc.
Not much to say about this other than the fact that I use it. I love it because it lets me jump to my most commonly used directories without having to type out the full path or define an alias. That’s about it, my entire one line of setup and configuration for it is on line 165 of my .zshrc. It’s written in rust, but as long as I don’t have to compile it I’m okay (until I migrate to an architecture not supported by rust).
I love neovimᶠ, I just can’t bring myself to leave it. I’ve tried emacs, including evil mode and doom emacs, but I just can’t part with my beautiful, beautiful neovim. My vim config is so unorganized and confusing that I can’t in good conscience post it, but it’s not a whole lot other than lots of keys configured for CoC and a few defaults that everyone has set up. I am a heathen that uses plugins, but I don’t think I’m /that bad/ compared to some bloated abominations I’ve seen.
Firstly, I use lots of syntax highlighting plugins, because I like my languages to be beautiful.
First up for the “real plugins,” I use CoCᵍ because I love having autocomplete & fancy lsp and wasn’t too happy with neovim’s built-in lsp support, I don’t think that’s too much despite the fact that CoC is rather heavyweight, but it’s really useful and I use most of its features.
I also use vimwikiʰ as a poor man’s org mode (which is exactly the way I want it, what I use vimwiki for is all I’d use org mode for anyways) that I take notes, plan in, etc. It’s not even a big plugin really, it’s just a convenience for jumping between hyperlinked wiki files. I like that you can export to html, I have a “quick link” on my startpageⁱ to my html-compiled vimwiki, and have it configured to automatically render to html on write so it’s always up to date.
Finally, I use a few more plugins for convenience: vim-plugʲ for managing my plugins, auto pairsˡ for ease of writingᵐ, vim-airlineᵒ for a nice status bar (surprisingly doesn’t require any configuration, pretty plug-’n’-play), gitgutterᵖ to show git changes, fzfʳ/fzf.vimˢ for switching between buffers and files, and goyoᵗ for better writing. I almost always have goyo enabled when writing prose, and almost never use it when writing code. It really is pretty though.
A PSA about Vim & Co and the Editor Wars:
While I love it and use it incessantly, I .never/ recommend it to someone unless they’re already interested in learning vim. If people ask me what editor I recommend, I first always ask what they’re looking for. Small edits on the command line? nano (I can’t bring myself to recommend ed for a “casual user” even though I use it for small edits myself). Want a graphical editor? VS Code OSS or Atom. If, and only if, do I know that 1) they’re willing to put up with the hassle of being really slow for *months* before getting proficient at vim; and 2) they already know about it and were interested in learning it before asking me; would I recommend vim for somebody. I also don’t hold a grudge just because somebody uses a different editor, or tried vim and decided to use something else. I’ve tried a lot and only vim has been right for me, why couldn’t it be the inverse for somebody else? I recommended vim to somebody and they didn’t like it but loved emacs instead, and I was just happy that they’d found something they like, and they have very valid reasons for liking one over the other. Stuff that’s important to me is relatively unimportant to them, and stuff that’s important to them is relatively unimportant to me, so of course we’re going to use different things.
[h]: vimwiki is a personal wiki for vim – interlinked, plain text files written in a markup language
[m]: i have to disable it a lot because it can get annoying when i’m editing something rather than writing new stuff. luckily <M-p> is a global shortcut for disabling/enabling the plugin so it doesn’t get in my way.
While I love me a beautiful visual editor, when making quick edits it feels like…almost too much. I use ed for stuff like changing a few lines in a file, writing commit messages, etc. I also use ed scripts a lot, which are a lot like a simple sed or awk script, but I like ed scripts because if you know vi/ed commands you can convert something you already know how to manually do into an ed script really quickly.
If you thought my vim config was bloated, wait until you see my ed configuration, which is almost incomprehensibly complex and large. Here it is (if you missed it in my .zshrc earlier):
alias ed="ed -vlp'* '"
I know, a true user will immediately know what they do wrong and would never need those error messages wasting their tty’s ink ribbon, but I use -v so I know what errors actually are instead of the all-helpful “?”. I also use -l because otherwise ed will exit nonzero if a single editor command has an error, which gets annoying when using it to write commit messages or something, ’cause git will discard the message if the editor exits nonzero. Finally, I use -p'* ' because I like to know when I’m at the prompt vs. when I’m in insert mode, because I’m not clever enough to innately know, like a true user would.
Now, I know that people might think I’m crazy for using ed, but it really is fast and nice to use for small things once you get to know it. I’d never write code or anything long in it, but it still has its uses. The ed manualᵘ (not the man page, it’s GNU, remember?) goes through everything about it, but it really isn’t that different from vi’s basic command set, it doesn’t take a whole lot to learn it if you use vim.
Yes, I love everything neo-, neovim, neomuttᵛ, both have wonderful features compared to their non-neo predecessors. Neomutt has manyʷ additional patches and features that I can’t live without, while still integrating all of mainline mutt’s changes and features. Of all the features that are included in neomutt, only one (the sidebar patch) was merged into mainline mutt, and that was after the sidebar was maintained as an independent patch for 5 years and as a part of neomutt for 2 years, so it seems like the mutt developers aren’t interested in integrating many community patches or requests—not that I blame them or expect them to, it just means I prefer the fork that does include those patches. On top of neomutt I use isync/mbsyncˣ to sync my email with my server and msmtpʸ for sending email. I also use vdirsyncerᶻ to sync contacts with my phone using nextcloud’s carddav features, and khardᵅ for searching through them when sending.
For syncing and sending mail, my mbsync, msmtp, vdirsyncer, and khard configs are so bog-standard that I’m not bothering to post them. However, I do have a weird method of filtering email. I was using maildropᵝ for filtering and sorting email, but I realized that my configuration was so simple that it wasn’t worth the annoyance of using it, so I migrated my configuration to just use grep.
I use a pretty basic weechatᵟ configuration, all the big stuff goes on in my pounceᵋ, calico, and litterboxᵠ configuration on my server. I’ve actually had people ask me how to set up pounce before, so maybe this will be illustrative for people.
systemd services (yes, I still use systemd on my web server despite ridding all my personal computers of it):
You have to get your muzak somehow, why not also do it in the terminal? I just have it set up to hook into pulseaudio and that’s it. I literally just followed the arch wiki to set them both up:
I use pass to store all my passwords and logins. I use qute-passᵞ for entering logins in qutebrowser, and “Password Store”ᶥ on my phone.
I use it for all my accounting and finances, just keep the journals encrypted somehow. It’s wonderful for keeping track of all your finances, I wholeheartedly recommend.
!!!!!RUST ALERT!!!!!
Other than that though, I do like it for simple searches.
!!!!!RUST ALERT!!!!!
I do prefer it when I’m just searching quickly for files, but I still use find for more complex queries.
ssh
rsync
git
gpg
ps_mem
htop
I use it for syncing a variety of files between my devices.
A KDE utility. The only hex editor that I’ve actually liked, although I’d love to find a decent TUI one (or write my own).
I unwillingly use it for school. Absolute non-recommendation.
See also:
Well, that’s longer than I originally anticipated, but I do use a lot of things regularly. I’ll probably end up making a second (shorter) post when I come up with more. I’m getting into fossilᶿ but don’t have enough use with it to give a recommendation, but it’s very promising. I have a few more things, and I’m sure I’ll remember something I forgot to include on here.
⁂
-- Response ended
-- Page fetched on Fri Apr 19 13:11:47 2024