Some things to make the cmus music player more usable on Mac OS
On Linux I use cmus as my music player. This post isn’t about why to use cmus, others have written about that. I started a new job recently where I was issued a MacBook Pro and wanted to access my music collection (on a USB drive, soon to be on NAS) the same way I do on my Ubuntu laptop. This post is how to set up cmus on your Mac.
I used Homebrew to install cmus. If you’re using Homebrew to install other packages, you might as well take advantage of it.
The media controls on the Mac’s keyboard will start Music.app if it’s not running. This will be an annoyance if you’re trying to control the volume of your music or connecting headphones over Bluetooth. To avoid this, install and run the NoTunes app.
Install the menubar version if you want to toggle NoTunes’ behavior, and make sure it’s a startup item.
The cmus-osx app on pypy adds media key and notifications support for cmus. You’ll need pip3 or pipx to install. I recommend using pipx, which adds npx-like functionality. The first time you play music with cmus, you’ll get a notification asking if Python has permission to create notifications.
These steps and programs will get you up and running with cmus on your Mac.
Tolerance is not a moral absolute; it is a peace treaty.
When viewed through this lens, the problems above have clear answers. The antisocial member of the group, who harms other people in the group on a regular basis, need not be accepted; the purpose of your group’s acceptance is to let people feel that they have a home, and someone who actively tries to thwart this is incompatible with the broader purpose of that acceptance.
Tolerance means that when one breaks the rules through (for example) homophobic, racist, or misogynistic behavior, the administrators of the community can use proportionate responses to one’s behavior such as deleting content, suspending or banning accounts.
Some ways to implement that:
Don’t fight in hostile terrain like Twitter and FB
Post, but don’t argue with people responding in bad faith
Don’t hesitate to block them
Twitter and FB rarely ban bad actors, so use platforms where you can ban abusive users
This is Instagram keeping you on the app, instead of using a post as an invitation to see more about someone’s work or cause. If you want to directly convert a view into a sale, you’re forced to use Instagram’s checkout and fulfillment. It encourages inaccessible text in images. And because for many people, Instagram is the web, unless you follow a person or org on Instagram, you miss out on calls to action.
When I talk with artists and creators, they’d love to have their own blogs so their careers and livelihoods aren’t at the whim of Instagram’s policies or algorithms. Enabling linking will free many people and organizations to consider the rest of the web as a place to publish.
RSS in and out
You used to be able to link your personal Facebook account to a RSS feed from your blog or other source. Facebook would pick up new posts from your RSS feed and people who followed you on Facebook would see them. Other than creating an account setting up the feed, you didn’t have to engage with Facebook, but your friends could follow you there. It was one of many ideas that Facebook borrowed from Live Journal.
You could also follow your friends’ public posts through RSS. Now you have to write constantly shifting code to attempt to scrape Facebook and Instagram.
Make links real on mobile
On Facebook, as well as Twitter, when you click a link in a post or a tweet on mobile apps you stay within the app and the site is rendered in a web view. You might even get a warning that you’re leaving Facebook in order to keep you on the app.
Those web views won’t have the same set of features, including tracking protection, which viewing a page on mobile Firefox, Chrome, or Safari.
Treat a link as a link, and have it open in the user’s default browser.
Break the wall, close the company store
The common theme of these proposals is to break the walled garden that Facebook built around itself and Instagram for the sake of engagement and monetization. None of these will destroy it. It’ll make them less valuable, but we as the people, not Facebook can prioritize healthy, independent and diverse media over the portfolios of a few.
GitHub's updated default branch names and GitHub Pages so you can update your GitHub Pages-based blog to use a main instead of a master branch.
I’ve been wanting to change the default branch for some projects on GitHub from master to main but until recently I could only publish GitHub Pages projects from master or a GitHub Pages branch. GitHub recently removed that limitation so you can publish from an arbitrary branch.