Skip to content

Instantly share code, notes, and snippets.

@sahal
sahal / 00_OPML-from-Youtube-Takeout.md
Last active March 6, 2026 04:03
Get opml subscription file from Youtube Subscription takeout

export subscriptions.csv

Visit Google's Takeout site to download your youtube subscriptions.

run convert.sh

  • Note: This depends on GNU date to output the correct date format. I don't use BSD utils, so YMMV. You might want to update the date line to a hard coded value (e.g. Mon, 02 Mar 2026 14:37:58 -0600, though I don't think it matters.)
chmod +x convert.sh
@sahal
sahal / 01_lighttpd-redirects-from-user-home-directory.md
Last active February 10, 2026 19:45
lighttpd redirect configuration moved to user home directory

notes

Software: lighttpd 1.4.79 on Debian 13

This could be used on other distros with some modification.

Not sure what the service names for lighttpd are in your particular distro. Also, www-data is the group in debian that runs the lighttpd daemon, it might be different in your particular distro.

Add redirects from users home directory

I want to be able to manage 302 or 301 redirects from my home directory

@sahal
sahal / 00_BACKUP_PUBLIC_PRIVATE_GISTS.md
Last active January 30, 2026 20:03
Backup your Public and Private Gists
@sahal
sahal / 01-google-voice-short-code-analysis.md
Created May 31, 2025 22:51
Google voice short code analysis

Google voice short code analysis

I'm trying to move away from Google products but one I have yet to move away from is Google voice. I have found an alternative, yay: voip.ms. During the transition though, I do not want to lose any shortcode based two factor authentication. I wish all services provided TOTP, but alas this is not the case, unfortunately.

Grab a dump of your Google voice data

@sahal
sahal / 01_using-linphone-on-android-with-voipms.md
Created April 21, 2025 19:34
Using Linphone on Android with voip.ms
@sahal
sahal / 01_using-joplin-more-securely.md
Last active April 15, 2025 00:35
Using Joplin More Securely

Using Joplin More Securely

I recently watched a digital security training and I learned a few things about the software that I use on a day to day basis. One of the links listed for further readings included this link Beyond pen and paper: Secure note-taking apps for journalists.

Joplin has geo location information enabled by default and sync is not encrypted end to end by default.

@sahal
sahal / Clean-up-PDF-meta-two-ways.MD
Last active April 11, 2025 01:52
Clean up PDF metadata two ways

Clean up PDF metadata two ways

Using exiftool and qpdf

(not recommended)

$ cp output.pdf output_test-1.pdf
# When using clean_pdf_metadata_v1()
$ pdf-clean.sh output-1.pdf
@sahal
sahal / Free-Up-Disk-Space-On-Arch-Linux.md
Last active April 11, 2025 01:46
My strategies to free up disk space on Arch Linux

My / (i.e. root directory) on my system is 25GB and I intend to keep it only 70% full.

Here are some strategies to do that. Some of the strategies might be useful on other distributions too.

Avoid using / for cache

Package Cache

Keep your pacman/AUR helper cache outside of the root disk

@sahal
sahal / 00_pull-podcast-metadata-from-PocketCasts-DB.md
Last active February 28, 2025 03:58
Generate SQL to pull podcast episode names from pocketcasts sqlite db

PocketCasts makes it hard to migrate

Why are you doing this?

😮‍💨 PocketCasts will save "starred" podcasts in your device storage -- but not let you access them. I want more control over my podcasts than PocketCasts gives me, so I'm probably moving away from using this app.

Before I migrate away, I want to create an archive of saved podcast episodes. Unfortunately, unless you have PocketCasts Plus (which has

@sahal
sahal / 01-my-ghostty-configuration.md
Last active February 27, 2025 21:43
Ghosttty configuraiton

Ghostty configuration

I am a heavy Konsole (KDE) user. I was glad that ghostty had a built in solarized theme.

(ins)sahal@shakuntala[~]$ cat $XDG_CONFIG_HOME/ghostty/config
font-family = "Source Code Pro ExtraLight"
theme = "Builtin Solarized Dark"
font-size = "26"
window-theme = ghostty