RSSAmplifier

Blog

mrod.space

A technology blog focused on Linux, Ruby, and 3D printing.

mrod.spaceRSS feed ↗10 posts

Latest posts

OpenSSH Config Tags How To

How to Use Tags in the SSH Config File Define the Tag with “Match tagged” Tagging with “Tag” How to use Tags on the Command Line OpenSSH is one of my favorite pieces of software. I try to keep up with the new features and changes and noticed something interesting in the OpenSSH release notes for version 9.4 about config tags. * ssh: add support for configuration tags to ssh. This adds a…

PipeWire / PulseAudio Network Audio Sync

Intro Prerequisites Overview Target Setup Source Setup Find the Sink Names Surviving Reboot PipeWire Target: Source: PulseAudio Target: Source: Gotchas System Mode / Ensuring a PA/PW Session is Running Stuttering Audio on Pause Restarting to Reload Configuration Changes Wrap Up Intro So, you’ve got various computers on your network running PipeWire or PulseAudio, and you want to play audio through…

Ruby - Control Venstar Thermostats via their Local API

Install the gem Find a thermostat on the network Controlling the Thermostat Heat to 80 degrees: Cool to 60 degrees: Automatically keep the temp between 70 and 74 degrees: Turn off heating and/or cooling Control the fan: Control the schedule: Set Home/Away: I’ve got a nifty Venstar thermostat that hooks up to the wifi so I can control it from the Venstar mobile app. The app works fine, and uses a…

Block Twitter Ads with uBlock Origin

Ads and Promoted Tweets Suck I like to occasionally go through my Twitter feed and read interesting posts or articles in the tech space. People love to complain about the vitriol on Twitter, so I’ll skip that. What really grinds my gears is scrolling through interesting Tweets only to have to scroll past a huge “Promoted” Tweet. They really make the experience jarring, and I’m very unlikely to…

Ruby - Download Daily Image from Bing with Mechanize

Intro Setup The Environment The Script Other Stuff Intro Anyways, I got sick of looking at a boring wallpaper, and I got sick of downloading new wallpapers for my desktop. Bing has a great daily image that appears on their page… every day. It’s usually some nature thing, or something otherwise visually interesting. Today, as I write this, it’s some fanc looking birds taking off from a mossy rock.…

Ruby - How to Build a Simple Sinatra App

Intro Setup The Environment Edit the Gemspec Creating the Sinatra App Require Sinatra Subclassing Sinatra::Base Sinatra Configuration Route Lambdas Hooking up the Lambdas Putting it All Together Running the App Rackup Configuration Intro Web-based applications are all the rage these days. You can apply your Ruby knowledge to build useful applications easily with a great DSL called Sinatra . With…

SSH Port Forwarding - Local, Remote, Dynamic

Intro Local Port Forwarding Definition Usage Example Remote Port Forwarding Definition Usage Example Dynamic Port Forwarding Definition Usage Example Summary Intro In this blog, we’ll dig into three different types of port forwarding you can do with SSH. We’ll look at what use cases each is good for, and how to actually use it in practice. Generally, SSH port forwarding allows you to securely…

How to Secure your SSH Server

1. Disable Insecure SSHv1 2. Disable direct root login 3. Disable Password Login, Use Keys Server-Side Setup Client-Side Setup Demystifying SSH Keys Distributing your Public Key 4. Setup fail2ban to Block Bots Setup on Ubuntu (18.04 and up) 5. Setup Dynamic DNS to Get in from Anywhere Honorable Mentions Summary If you’ve used Linux for any amount of time, you’re familiar with SSH. It’s a wondrous…

See Inside an NES Controller: A Detailed Teardown with Pictures

Teardown Putting It Back Together Reassembly Tips NES Controller Teardown Photos Circuit Board Front Rear Shell Front w/ Old Pads Front w/ Buttons Rear Buttons D-Pad Button Front Rear Old/New Pad Comparison A & B Buttons Old/New Pad Comparison Start & Select Buttons/Pads Retro gaming is all the rage these days. I got into video games in the early 90s. My earliest memories of gaming are Super Mario…

cURL Command Examples

GET Examples show response body: show response headers and body: show only response headers: don’t show progress meter or errors: follow redirects: skip SSL certificate verification: use a specific network interface: force IPv4: force IPv6: basic authentication: save response to a file of the same name (like wget): save response to a specified filename: send URL-encoded key/value pair options in…