RSSAmplifier

Blog

Greg Hilston

Recent content on Greg Hilston

greghilston.comRSS feed ↗152 posts

Latest posts

Ask Questions About Audio and YouTube Locally

Build a local script to summarize and query YouTube videos and audio files using locally-runnable LLMs.

How Python Made One Off Scripts Even Better

How to write one-off Python scripts with described dependencies.

My Personalized Daily Digest (Powered By AI)

I’ve recently had the desire to build myself a daily digest. With the express intent to ensure all data is processed locally. I’m going to use this blog post to detail this project. Before we go over how this was achieved, here’s a lightly anonymized example of an actual digest that landed in my inbox: Weather Today's high is 48°F with a low of 23°F — a significant jump from…

Claude Code With Alternative Models

While Claude Code has become my coding assistant of choice, I don’t always want to be using a remotely hosted LLM. I recently found out it’s pretty easy to use Claude Code with a non-Anthropic hosted model. This allows you to use an alternative remote host like OpenAI, OpenRouter, or even a locally hosted model. To point Claude Code at my LM Studio instance, which I use for local…

Claude Code and Gemini

How to configure Claude Code to leverage Gemini for cheaper execution

Levels of LLM Integration

I’ve been experimenting with integrating LLMs into software development for quite some time now. Having played with countless libraries, frameworks, and tools, I’ve identified what I believe are the key tiers of integration individuals will experience today. Level 1: “Copy + Paste” - Human driven with AI Consultation I believe the first situation developers will experience…

Testcontainers

How easily orchestrating containers can make development, and integration testing easier.

Open Router: A Universal Gateway to LLM APIs

How to easily switch between different LLMs using Open Router as a unified interface

Model Context Protocol (MCP): The Future of LLM Function Calling

How Anthropic’s new open protocol is standardizes the way LLMs interact with external systems and data

Installing Claude Desktop on Linux: An Unofficial Guide

A guide to installing and running Claude Desktop on Linux systems using Nix Flakes

Hugo: How To Display Dynamic Github Content

Learn how to dynamically display Github content in your Hugo website using shortcodes, keeping your content automatically in sync with your repositories

Ninja Creami Recipes: A Guide to Better Homemade Ice Cream

A collection of protein-rich, customizable Ninja Creami recipes with tips for perfect consistency

Drinking From A Firehose

Exploring real-time social media data processing with Go by tapping into Bluesky’s websocket firehose

Setting Up NixOS on Windows Subsystem for Linux (WSL2)

A guide to installing and configuring NixOS on WSL2, including graphical application support.

Automating Windows 11: From Clean Install to Fully Configured with Answer Files and Winget

A guide to my Windows 11 installation process using unattend/answer files for automated, debloated setups, combined with winget for application installation.

NixOS: The Path to Truly Reproducible Linux Systems

A personal journey from distro hopping and manual configuration management to discovering NixOS’s declarative approach, exploring how it solves common Linux setup challenges through configuration files, flakes, and reproducible environments.

My Desk Setup

I describe my work from home setup

How to Pass an Entire Project to a LLM

Create a prompt out of an entire directory

How to Copy to Clipboard From Terminal

Want to quickly copy file contents to your system clipboard from the command line? xclip is the tool for you.

Fixing Wifi Calling

I live on a property that has zero cellular service. This forces me to rely on Wifi for calling, and texting. Only loosely related, but that means when I lose power, I cannot make calls, texts, or use the internet. For that reason, I wrote a separate blog post how I work around this, and still leverage the internet during power outages. I’ve always founds Wifi calling/texting to not be as…

Cat S22 Flip Phone Tips

Battery Save Mode Quirks One of the most frustrating situations I originally experienced Cat S22 Flip was caused by its battery save mode. Since I wasn’t using this phone for much, I elected to have this mode on 24/7. While this helps preserve battery life, it comes with a notable quirk: the GPS gets disabled when the phone is flipped shut. This means if you’re using Google Maps for…

Canpunk: A New Literary Genre

Converting a book/movie script to a new genre using self hosted LLMs

Switching To A Flip Phone

Why I Switched to a Flip Phone Recently, I decided to switch to a flip phone as my daily driver. The main reason? To reduce my access to distracting apps and to be less available to those not incredibly close to me. While I believe willpower is the best defense against distractions, I see the flip phone as “training wheels” — a temporary tool to help me avoid distractions until I can…

How to Load Balance With Preference

When managing multiple servers, it’s important to have a reliable load balancer in place. In many cases, you may want to prioritize one server, using it as the primary, while having a backup server only take over when the primary is unavailable. This approach is called a “preference-based failover.” In this blog post, we’ll go through the steps to configure Caddy as a…

How To Query Your PDFs (and other documents)

How to ask questions about your local files

Querying Notes With Obsidian Dataview Plugin

An Obsidian trick I'm using to keep track of my recipes, and other files.

How to Add a New Application to Dmenu

I’m a big fan of tiling window managers. Today I use i3, which I happen to have configured to use dmenu, which is an efficient tool for searching across all your applications. I often find myself wanting to add custom applications to dmenu, say a custom script I’ve written, and I’d like to capture how that’s done. Example Desktop File Let’s say you want to add Postman…

Supercharging Your Local LLM With Real-Time Information

Intro Large language models (LLMs) are impressive, capable of generating human-quality text, translating languages, and answering questions. However, there’s a catch: they are limited to the data they were trained on. This means their knowledge can be outdated and they may struggle with topics that emerged after their training. But what if we could give our LLMs access to the vast ocean of…

Schema First Development

Introduction In the world of software development, there are many different approaches to building applications. One approach I’ve had the pleasure of using is called “schema first development”. This approach emphasizes defining the verbs, routes, request and response structures before diving into writing code. This methodology proves especially beneficial when developing HTTP…

My Favorite Air Conditioner

Introduction Living in a house without central air, I’ve dreamed about getting heat pumps and mini splits installed. Until I can pull the trigger on that large project. Types of AC Units I’ve made peace with considering window AC units, which come in two main styles: window AC: They sit in your window sill. Part of the unit is inside and part of the unit is outside. portable AC: They…

Argument Passing Preferences

When writing software, we often need to handle various types of input arguments. To maximize flexibility and ease of use, I propose prioritizing the following methods for accepting arguments: Command-line arguments Environment variables Default hard-coded values As we move down the list, the flexibility of defining these values decreases. Command-line Arguments Command-line arguments offer the…

How to teach a LLM, without fine tuning!

Privately chat with your own data using RAG.

How To Create A Reusable Proxmox Template

Allowing you to spin up multiple cloned VMs

Local LLMs, AI Agents, and Crew AI, Oh My!

A walk through of how I run LLMs locally, in a Crew-like fashion.

How To Self Host A LLMs Web UI

How to self host a web UI to interact with LLMs, local or remote

How To Self Host LLMs (like Chat GPT)

How to easily run local LLMs

How to Dockerize JupyterLab

A full example of this repository can be found on my Github here. I often find myself exploring data using Python, Jupyter Lab, Pandas and various graphing programs. This has caused me to want to have a light weight, easy to use, and portable approach to standing up these tools. In the past, I have found myself using tools like pyenv to install a desired version of python for each project.

How To Downgrade Rounds The Game to Maintain Mod Compatibility

Mod compatibility was broken by a new update…

How I Survive Power Outages

A series of things I’ve done to be more comfortable during power outages.

How To Self Host A Palworld Dedicated Server

Using Docker

Setting Up A Reverse Proxy

We’re going to leverage Docker, Cloudflare DNS, and Caddy to set up a reverse proxy for our home-lab, which is both easy to configure, and automatically handles SSL certs for us. Previously, I used Nginx Proxy Manager, but I’ve grown to not love this application, as its both difficult to have your configurations live in code, as well to have SSL certifications both be made, and renewed…

Caring For Your Sourdough Starter

I’ve been maintaining a sourdough culture since early 2020. It’s lived in three different homes, and has been driven across the entire country. I’m always trying to convince anyone to get into baking bread, and frequently give away part of my culture, so someone else can begin enjoying sourdough bread. This post is being written so I can share how to take care of one’s…

Task Prioritization

What a task’s priority is, and a few simple techniques to make prioritization easier

Easily Converting Audio or Video Files To Text Transcripts

How to convert video or audio files into text transcriptions from the command line or Python.

My Favorite Stable Diffusion Generated Images

Come see these beauts

How To Locally Run Stable Difussion (Similar to Midjourney + DALLE-2)

Including using Docker and a GPU

Generating Images Using Diffusion Models (Similar To DALL-E 2)

Learn how to self host your very own Diffusion Model to generate images

How I Organize My Obsidian Vault

My pitch for how to organize your markdown files using Obsidian

My Favorite Obsidian Plugins

The best plugins I’ve found for Obsidian

A Solid Tiling Window Manager For OSX

What tools you can use to recreate a tiling window experience on OS X