Ben C Uses...

Here's a list of stuff I use everyday. While I do like all the stuff I list here, keep in mind I'm not trying to tell you that you should/have to use it as well. I just have a lot of love and appreciation for the tools I use and the people who made them, so I wanted to share that here.

Hardware

I'm a big Valve fan so I like naming my devices after companies in their games.

Framework 13 Laptop (aperture)

My main laptop! I bought the Intel version back in 2023 and still love using it. The internal mic doesn't work and the keyboard is failing a bit but I will use this thing until it doesn't turn on anymore.

Custom built Desktop (black-mesa)

Desktop of theseus I've had for a good while now. Currently has an AMD Ryzen 7 CPU and a AMD Radeon RX 7800 XT GPU. I used it a lot for gaming but I haven't played much recently. Now it acts as a server for silly projects like Bingus.

Raspberry Pi 4 (mann-co)

Rpi I use mostly for testing stuff. I also sometimes plug it in and have it WOL my desktop every minute in case my power goes out 💀.

Pixel 7

Phone I use for phone things. I've been trying to use it less and less. I'm hoping I can install an alternative Android version like GrapheneOS soon-ish. Especially since Google is trying to kill the only cool thing about Android.

Software

Too much software.

NixOS (Linux Distro)

I started using NixOS when I started college and never looked back. Having a unified abstraction for configuring my system is a dream come true. All of my configs are public and available as a Git repository.

I use an alternative implementation of Nix called Lix.

Command Line

Nushell

Nushell is my favorite shell. It is data-oriented and nice to use. It has a lot f nice stuff for converting data formats and transforming data. It makes scripting easy.

Starship (prompt)

I use starship to generate my shell's prompt. I like how configurable it is and copy my config to other platforms and shells to get a consistent experience.

Zoxide

Zoxide is a nice utility that remembers directories I've cd'd into. When I cd again it uses that database to find a suitable directory without needing me to type in the whole path. As an example, I can cd into my NixOS config by just typing cd ni.

tldr

tldr is a concise version of man, with a community maintained list of documentation that tells you how to do common actions with a given command.

I use a tldr implementation called tealdeer.

bat

Bat is a pretty version of cat that gives syntax highlighting and auto-pages if needed. It also has stuff for viewing manpages and diffs.

yazi

Yazi is TUI file manager. I really like it for quick file operations. It also has a mount plugin for udisks and can extract archives automatically.

MPD

Daemon for playing music! It's nice that I can change players while still having the same underlying system. It also can announce songs to Discord and MPRIS.

rmpc

Command line controller for MPD, I really like how simple it is. And it supports Cava.

just

A refreshingly simple command runner that just works. I write recipes in a Justfile and it runs the commands I specify.

jujutsu (jj)

An alternative to Git. From the moment I started using it I loved it. It has very good UX and makes my life so much easier. The underlying repository is still Git too!

neovim

I like terminal editors, and Nixvim makes configuring it very nice.

impala, bluetui

Both TUIs for managing Wifi/Bluetooth, very handy!

Graphics

Niri (Window Manager)

Niri is a wayland window manager that lays out windows as an infinite strip of columns. I really like this methodology and have started to like having my sites and apps as columns. I have firefox set to open links in new windows now too since it's easier to manage that way.

In addition to Niri I use the following programs to build a graphical shell.

The config I use for each of these are in my NixOS flake.

Firefox

I've used Firefox for a while. It's my favorite to configure with Nix, and I can disable all their annoying stuff (suggestions, new tab stories, AI stuff, telemetry) pretty easily.

Catppuccin

Catppuccin my beloved. I like the color scheme and the Nix integration is amazing. All must be cat.

QMPlay2

Video player I like to use, it's mostly for local files. For music I use MPD/rmpc.

Wezterm

Wezterm is a nice terminal emulator that is fast enough for me. However, I don't have a use for a lot of its features, might switch to something else soon.

Also it keeps freezing? Although this may be just my laptop so I'm not gonna blame it there.

KDE Connect

Connecting my phone to my computer. It syncs clipboard, media controls, and notifications! I love using it.

KeepassXC

A nice password manager. I can't configure it with Nix that well but I live with it. I like how it can manage SSH keys as well, putting them in my agent when the DB is unlocked.

Syncthing

Not really graphical but putting it here anyway. Easy, reliable sync between my devices. I use it to sync data between my laptop, desktop, and phone. I sync my entire photo and music library (surprisingly fits fine on my phone) as well as my KeepassXC database.

Maple Mono

Nice looking monospace font for my editor! I like the ligatures and it has nerd fonts builtin.

Sites/Services

Witchsky

Alternative frontend for Bluesky. A lot of neat features and a catppuccin theme!!!

Cocoon (Self-hosted)

Self hosting my PDS is scary and fun. Cocoon seemed simple so I went with it, and it works great! I might try tranquil at some point too.

Tangled

I get to self host my own repositories while still getting social features. Tangled is such a neat idea and I really want to see it succeed.

Porkbun

They're a good registrar. I'm not gonna lie "AI generated domain search" seems so silly to me. I really don't get the point. Either way it's a nice experience and their UI is easy to use.

Languages/Frameworks

Stuff I like using.

Nix

I don't just use it for my system! I like using Nix to develop my software. Setting up dev environments is easy and distributing packages is nice. The language itself isn't perfect, but the pros heavily outweigh the cons.

Rust

Rust is a nice language. I struggled to find a "go-to" language for my projects but after learning Rust I really like using it. It's my favorite language.

Tauri

Rust and web, my two favorite things! Tauri lets you write most application logic in Rust and then use a WebView for the frontend. It uses the system webview (for better or for worse). It might be a bit overkill but also nuh uh.

AstroJS

Astro is really nice for SSG. I don't use it for SSR but it's probably good for that too. I just really like having integrations with other frameworks and the content collections system is so wonderful to use. Their docs also made me want to get into technical writing. It's usually my go-to for making any static site since I know it well and it's versatile. This website is made with Astro :)

Vite

Vite is a nice build tool. Astro is built on top of it but when Astro is too much (like when I'm using Tauri), Vite is a great choice.

uv, ruff (Python)

Modern Python tooling THANK GOD. uv is a great package manager with actually nice UX. Ruff is a good lightweight formatter and linter.

oxlint, oxfmt (JavaScript/TypeScript)

Replacements for eslint and prettier. Both are a lot faster and not as bloated. Big fan.

Django

I don't use it much anymore but I'd still die for it. It's so easy to use and the ORM is my favorite

Typst

I use Typst for any documents or slide shows I create. I love having a language to use instead of having to do WYSIWYG editing. My Resume is made with Typst.

Finding Cool Things

Most of this stuff I did not discover on my own! I read a lot of sites like lobsters to learn about new projects. I also like social media (and social media-adjacent) sites like Bluesky, GitHub, and Tangled to find new projects!