r/osx

▲ 33 r/osx+1 crossposts

Following up on my earlier r/cli post about malt - a Homebrew-compatible package manager for macOS written in Zig, with a native post_install interpreter. v0.10.0 just shipped. Quick recap of what landed since.

Brew-parity for the commands people actually use.

  • mt pin / mt unpin for formulas and casks; mt upgrade honours pins; mt outdated --pinned-only for CVE watch on held-back versions.
  • mt shellenv - drop-in for eval "$(brew shellenv)" (bash/zsh/fish, same HOMEBREW_* exports so brew-aware scripts keep sniffing).
  • mt which <bin> - reverse lookup that pairs with mt uses; offline, one call.
  • mt install --only-dependencies, mt run --keep (caches the bottle for next time), mt services logs --follow, mt bundle cleanup, mt doctor --fix for the safe warning classes (stale lock, broken symlinks, refcount-0 store blobs).

mt outdated is now instant - a cached snapshot, filtered through the live DB at read time so a freshly-uninstalled keg can't ghost in. Safe to wire into a shell prompt. MALT_OUTDATED_MAX_AGE tunes the TTL.

Warm installs got 10-17× faster. Four targeted patches collapsed the per-dep cost on the warm path: a post-relocation keg cache keyed by bottle SHA256, a parsed-formula cache, a short-circuit when the keg is already present, and a skipped cask-ambiguity probe on the unambiguous path. Apple Silicon, GHA macos-14, median of 5, true-cold prefix + bottle-cache wipe between rounds:

Package warm before warm now
tree (0 deps) 0.019s 0.012s
wget (6 deps) 0.070s 0.007s
ffmpeg (11 deps) 0.416s 0.024s

The per-dep cost that used to dominate the warm-install path is essentially gone.

More of the toolchain installs end-to-end without Ruby. openssl@3, gnupg, ca-certificates, libidn2, and zig (which depends on llvm@21) all run their post_install inline in the Zig interpreter now. When it genuinely can't handle something, you get a specific --use-system-ruby=<name> hint instead of a silent skip pretending success. "post_install completed" means exactly that.

Trust posture closed. Every release is cosign-signed keyless via GitHub OIDC. install.sh and mt version update both verify cosign + SHA256 against the pinned signing workflow identity before any byte lands on disk; the binary swap is rename-based atomic with .old rollback. Homebrew-installed malt detects the brew receipt and points at brew upgrade --cask malt instead of overwriting it.

Other rough edges fixed. Third-party tap casks shipping DMG/PKG/zip-app payloads now route to the cask installer (was failing through the formula path). macOS 26 bottles install (new arm64_tahoe tag). Light terminals render legibly (OSC 11 detection, WCAG AA contrast). v0.9.1 was a hardening release: 19 fixes around memory ownership, error propagation, archive extraction, lock retry-on-EINTR, and self-update edge cases. Mostly invisible, recommended for everyone.

Still experimental, still early-stage - I use it as my primary package manager and it handles my day-to-day, but expect rough edges on less-common formulas. Bug reports very welcome.

Transparency note (same as last time): all implementation Zig was written by AI (Claude Code + ruflo). Design, architecture, ADRs, threat model, and every merged change were directed and reviewed by me. The interesting question remains the tenth refactor, not the first commit.

u/indaco_dev — 4 days ago
▲ 4 r/osx

MacBook Ownership help

Hi, I recently bought a laptop off my old employer after I left the company. During the process, the battery died and the pin screen reset to a 50 years lock meaning I couldn't enter the pin code. I hooked it up to an ethernet, entered the pin they gave me, and then i clicked Macintosh HD and it let me create a new profile.

But im worried about if they still have access at all, is there any way to check if they can do anything to it? They did give me instructions, but because of the locked pin, the recovery was different to what their instructions were and now I'm not sure if they can still recover it or something

reddit.com
u/Swimming-Pirate-2458 — 4 days ago
▲ 5 r/osx

Any way to install a modern browser on OSX 10.9.5 from 2013?

I inherited an ancient (2013) IMac (system info says 14,1). By the standards of those days, it was top-of-the-line: 2.7GHz Intel core, 8GB ram, 1 TB drive. Safari can't even render modern webpages.

I am not a Mac person, but I like to think I'm relatively computer-savvy (I run Linux on a few other laptops). Is there any way to get a modern browser running on this thing, so it can be useful? As far as I can tell, Chromium Legacy and the legacy version of Firefox require later versions of OS X.

reddit.com
u/notsewkram — 6 days ago
▲ 4 r/osx+5 crossposts

Four years living abroad. Germany for two, now Spain. I'm American, my wife is British. Keeping up with home media across two countries while living in a third is... a special kind of logistical challenge.

For three and a half of those four years, I was either using VPNs + regional streaming services (complicated and expensive) or just missing content from home. Then I found IPTVGreat and it genuinely changed our day-to-day quality of life. That's not hyperbole — when you're an expat, access to your home country's media matters more than people realize until they're in that situation.

Here's my full expat perspective on IPTVGreat after 7 months of use.

Why Regular Streaming Services Fail Expats

Before I get into IPTVGreat, let me explain why this problem even exists and why the "obvious" solutions don't work well:

Netflix/Amazon Prime/Disney+ are geo-locked. Your subscription follows your billing country, not your physical location. American Netflix and British Netflix have completely different content libraries. If you're an American living in Spain, you're getting the Spanish catalog — which is fine for Spanish content but doesn't have your favorite US shows.

VPN + streaming services is a constant battle. Streaming services actively block VPNs. What works today may not work tomorrow. It's a technical arms race that requires ongoing maintenance and troubleshooting.

Local streaming services in your home country require a home-country payment method. BBC iPlayer technically requires a UK TV licence. Peacock, NBC's streaming services, local US affiliates — they geo-block aggressively.

Cable from home country: Not a thing you can ship overseas.

The result is that most expats end up with a fragmented, expensive, and unreliable setup to stay connected to home media. Some people just give up and consume only local media, which is a cultural adjustment most of us didn't plan for when we moved.

How IPTVGreat Solves the Expat Media Problem

IPTVGreat's 140,000+ channel library includes channels from 50+ countries. From wherever you are in the world, with an internet connection and IPTVGreat, you can watch:

American channels (for US expats):

  • ABC, NBC, CBS, Fox (network + local affiliates)
  • CNN, Fox News, MSNBC
  • ESPN, ESPN2, Fox Sports
  • HBO channels
  • Showtime, Starz
  • Comedy Central, FX, AMC, TNT, TBS — all present

British channels (for UK expats):

  • BBC One, BBC Two, BBC Three, BBC Four, BBC News
  • ITV, ITV2, ITV3, ITV4
  • Channel 4, E4, More4
  • Channel 5, 5Star
  • Sky Sports (multiple channels), Sky Atlantic, Sky One
  • Dave, UKTV channels

And whatever country you're currently living in: If you're in Germany like I was, you get ARD, ZDF, RTL, ProSieben, SAT.1, and more. In Spain: TVE, Antena 3, La Sexta, Telecinco. France: TF1, France 2, France 3, Arte. And so on for 50+ countries.

For my household specifically: I watch US sports and US news. My wife watches BBC programmes and follows UK news. Both of us watch some Spanish content because we live here. All three are covered in one IPTVGreat subscription.

That's the key value proposition for expats: one subscription, home country + destination country + international content, no geographic restrictions.

My Setup as an American/British Couple in Spain

Here's our actual day-to-day setup:

Hardware: NVIDIA Shield TV Pro in the living room, Amazon Firestick 4K in the bedroom. Both connected via Ethernet (our apartment has good infrastructure). Internet is 600 Mbps fiber — Spanish fiber infrastructure is excellent.

IPTV App: TiviMate on the Shield, IPTV Smarters on the Firestick.

Plan: IPTVGreat 6-month plan ($62.99, 5 connections). The 5-connection allowance means we can stream on both TVs plus our phones simultaneously when needed. At ~$10.50/month for the household, it's genuinely absurd value.

VPN: I do run a VPN on the Shield TV Pro, primarily for privacy. IPTVGreat works with a VPN active — just set VPN to a neutral/uncongested server (Switzerland or Netherlands work well from Spain). Don't use your home country's VPN server for the IPTV connection itself — it adds unnecessary routing and can introduce lag.

Content I Watch Regularly as an Expat

Let me get specific because vague claims about "everything works" aren't helpful when you're deciding whether to pay $14.99:

US Content I Watch Weekly:

  • NFL regular season and playoffs — every game, all season, via ESPN/FOX/NBC/CBS feeds. Being an Eagles fan in Spain is only sustainable because of this. ✅
  • CNN International for US news perspective ✅
  • Late night US shows (Tonight Show, etc.) — available in VOD within 24-48 hours of air ✅
  • ESPN College Football on Saturdays ✅

UK Content My Wife Watches Weekly:

  • BBC News at One and BBC News at Ten (live, UK time — we watch slightly delayed) ✅
  • EastEnders (she still watches despite herself) — usually available same-day or next day ✅
  • Gogglebox — present in VOD ✅
  • Sky Sports for EPL games — she's a Liverpool fan, this matters ✅
  • ITV shows — present ✅

Spanish Content We Watch:

  • La Liga via Spanish broadcast feeds — watching Atlético Madrid locally is a different experience than the US ESPN+ broadcast ✅
  • Spanish news (TVE) when we want local perspective ✅
  • Documentaries in Spanish for language practice ✅

International:

  • BBC World Service ✅
  • Al Jazeera English ✅
  • Euronews (multilingual) ✅

Reliability Report: Spain-Based Streaming

Stream quality from Spain using IPTVGreat:

US channels: Excellent. The servers are geographically distributed, so routing from Spain to US channel streams is smooth. HD consistently, 4K where available.

UK channels: Excellent. Spain → UK is low latency, so BBC, ITV, Sky streams are clean. No buffering on Sky Sports even during high-demand EPL matches.

Spanish channels: Excellent. Being in-country actually gives you the best possible connection for local streams.

Overall: In 7 months of use from Spain, I've had 3 brief outages (all under 30 minutes, all resolved automatically). The service has been more reliable than anything I used in Germany (I tested 2 other providers there).

What Expats Specifically Should Know

Time Zones Are Your Friend and Enemy

US primetime TV airs at very different hours when you're in Europe. NFL Sunday games start at 6pm, 7pm, 9pm local time in Spain/Germany — actually more convenient than waking up at 9am for early games when visiting the US. NBA games air very late (1am-3am European time) which requires some commitment.

IPTVGreat's EPG (electronic program guide) shows schedule times based on the channel's local time. Be aware of this — you'll need to mentally convert. TiviMate can be configured to show local times based on your timezone setting.

Use Catch-Up and VOD for Time-Shifted Viewing

If a key US show airs at 3am your time, you obviously can't watch live. IPTVGreat's catch-up feature (available on channels that support it) lets you watch content from the past 3-7 days. The VOD library also often has recent episodes. This makes time zone differences much more manageable.

Get the Multi-Connection Plan

As an expat household, you probably watch different content simultaneously (different countries!). A single-connection plan won't work for two people with different viewing preferences. Get at least the 3-month plan (2 connections) or 6-month plan (5 connections).

Keep Your Home-Country Payment Method Active

IPTVGreat accepts multiple payment methods. Keep a credit card from your home country active for subscriptions, or use a payment service like PayPal which works across borders.

Comparing IPTVGreat to Alternative Expat Solutions

Solution Monthly Cost Setup Complexity Reliability Content Coverage
IPTVGreat $14.99 Low Excellent 50+ countries
VPN + multiple streaming services $50-100+ High (ongoing maintenance) Variable Partial
Expat satellite TV service $80-200 Requires dish installation Good 2-3 countries
Local cable in destination country $40-80 Simple Good Destination country only
Nothing (give up) $0 None

IPTVGreat wins on every axis that matters for expats: cost, coverage, reliability, and ease of setup.

The Emotional Dimension of Expat Media Access

I want to say something that doesn't fit neatly into a comparison table.

When you're an expat, access to home media matters in ways that go beyond entertainment. Watching your home country's news keeps you connected to your culture and family context. Watching sports with your home team active in the season creates a through-line to your identity and your relationships back home. When my parents call and ask what I think about the latest political development, I'm in the conversation because I've been watching the same news they watch.

My wife's ability to watch EastEnders and BBC news is not about the content quality — it's about maintaining a sense of connection to home across a real geographic and cultural distance. IPTVGreat enables that for both of us simultaneously, in one subscription, for $14.99 a month.

That's worth a lot more than $14.99 in terms of quality of life.

Getting Started with IPTVGreat as an Expat

  1. Visit https://iptvgreat.store from anywhere in the world
  2. Sign up for the plan that fits your household (1-month to test, 3-month for 2 connections, 6-month for 5 connections)
  3. Payment processes globally — credit cards and PayPal accepted
  4. Get your credentials via email within minutes
  5. Set up on Firestick, Android TV box, or any device using IPTV Smarters Pro or TiviMate
  6. Browse to your home country's channel group and start watching

There's no geographic restriction on signing up or using the service. It works in Spain, Germany, France, Australia, Canada, UAE — wherever you have a decent internet connection.

If you're an expat who's been cobbling together an expensive and unreliable media setup, IPTVGreat is genuinely the solution. Happy to answer questions about any specific country combination (home country + destination country) in the comments — I've talked to other expats using this service in a dozen different country combinations and can probably point you in the right direction.

u/AutoModerator — 9 days ago
▲ 288 r/osx+1 crossposts

I made an app that gives every window the same corner radius on Tahoe

EDIT: Just shipped v0.4.2. Main change: FileVault can be re-enabled after install (only needs to be off during the initial Recovery setup commands). Couple of install/uninstall fixes in there too.

macOS Tahoe ships with different corner radius across windows. Apple's own apps render at one value, third-party at others, and the new Liquid Glass design makes the mismatch more visible. Default Tahoe has about 35% of apps consistent. Liquid Radius brings that to 95%.

It works by injecting a dylib into SkyLight (macOS's compositor) so every window gets unified corner radii. There's no public API for window radii, so injection was the only route

liquidradius.com

$6.99 one-time. No subscription.

Requirements:

  • macOS Tahoe
  • SIP and FileVault disabled (EDIT: FileVault can now be re-enabled after install)
  • Setup is about 5 min with instructions in app

Happy to answer questions. This is my first solo dev project so feedback welcome.

u/olyevns — 11 days ago
▲ 3 r/osx+1 crossposts

AINoter - AI Prompt Manager

AI prompts quickly become scattered across notes, chats, and text files. Reusing them usually means interrupting your workflow to search, copy, and paste manually.

AINoter is a keyboard-first prompt manager for macOS designed for people who work with ChatGPT, Claude, Gemini, and other AI tools every day. It keeps reusable prompts instantly accessible from anywhere on your Mac through global shortcuts and a Quick Access window.

Prompts are stored locally, organized in folders, searchable, and can be copied into any app without switching contexts. The workflow is simple: trigger a shortcut, paste the prompt, and continue working.

Unlike generic note-taking or snippet apps, AINoter focuses specifically on reusable AI workflows instead of becoming another workspace, editor, or AI assistant.

Website:
https://ainoter.net

u/KirillPRG — 10 days ago
▲ 5 r/osx+1 crossposts

Keychain is lost after password change

Hi everyone,

I’m trying to recover Safari Keychain passwords after a macOS password reset for my good friend, and I’d appreciate some guidance.

Device / OS

  • MacBook Pro 13" 2020, Intel
  • macOS Sonoma 14.6.1

My friends kid entered the Mac login password incorrectly many times. After that, he reset the Mac login password using the Apple ID option. After logging back in, all Safari/password entries were gone. Only passwords that were already present on the iPhone/iCloud seem to have synced back.

  • iCloud Keychain is enabled.
  • In Keychain Access, several renamed login keychains appeared:
    • login_renamed_1
    • login_renamed_2
    • login_renamed_3
  • These can be added/opened in Keychain Access, but they seem to contain mostly newer/synced data, not the missing old Safari passwords.
  • The current login.keychain-db is only about 130 KB, so it looks like a newly created login keychain after the reset.
  • Time Machine backup is not available.

There is folder i've found on the keychain:

~/Library/Keychains/UUID/

there is a keychain-2.db file, around 16.6 MB, originally created back in 2022 when the macbook first bought. This looks like the Local Items / iCloud Keychain database. My suspicion is that the old Safari/iCloud Keychain state might be inside this UUID folder, but I understand that keychain-2.db cannot simply be imported into Keychain Access like a normal login.keychain-db.

Files in that folder include:

  • keychain-2.db
  • keychain-2.db-wal
  • keychain-2.db-shm
  • user.kb
  • user.kb-invalid
  • some com.apple.security...TrustedPeersHelper database files

Unfortunately here is no Time Machine backup, but local APFS snapshots exist:

tmutil listlocalsnapshots /System/Volumes/Data

shows:

  • com.apple.os.update-(Most likely UUID number)
  • com.apple.os.update-MSUPrepareUpdate

We tried to mount one snapshot using:

sudo mount_apfs -s com.apple.os.update-(Most likely UUID number) /dev/disk1s1 /Volumes/oldsnapshot

but got:

mount_apfs: volume could not be mounted: No such file or directory

No files were modified; we were only trying to inspect the snapshot.

Is there any realistic way to restore or read the old Local Items/iCloud Keychain state from the UUID folder or from these APFS update snapshots?

Specifically:

  1. Can keychain-2.db from ~/Library/Keychains/<UUID>/ be restored safely if we can find an older snapshot version?
  2. Is there a correct way to mount these com.apple.os.update... APFS snapshots on Sonoma?
  3. If the old Safari passwords are not in iCloud/iPhone and there is no Time Machine backup, is recovery basically impossible?
  4. Is there any safe forensic method to inspect whether keychain-2.db contains old Safari website password entries, without damaging the current keychain?

I’m not trying to bypass security or recover someone else’s data. The owner knows the old Mac password and the Apple ID. We’re just trying to recover passwords lost after the Apple ID password reset / keychain mismatch.

Any advice from macOS/keychain experts would be appreciated.

PS. I've used AI to get together the sentences, unfortunately my brain is jelly due to doom scrolling and when I write things it's all over the place. So, this is not an AI post, I am human.

reddit.com
u/jestemzturcji — 13 days ago
▲ 8 r/osx

I built a free menubar resolution switcher for macOS (EasyRes-style) — VibeRes

TL;DR: Free, open-source macOS menubar app for switching display resolution and refresh rate. Saves multi-display setups as profiles ("Work", "Presentation") that you can apply with one click. Inspired by EasyRes, which got discontinued. Built it because I needed it myself. — https://github.com/m-moravcik/VibeRes

Why I built it

EasyRes used to live in my menubar for years. When it disappeared from the App Store I tried a few alternatives but none did exactly what I wanted: switch resolution + Hz across multiple monitors, save the whole setup as a named profile, and apply it on a single click. So I built it.

What it does

  • Lists every connected display with all resolutions + refresh rates (including HiDPI scaled modes)
  • Saves your whole multi-display setup as a profile — "Work" might be Built-in 120Hz + external 4K@75Hz, "Presentation" might be the same built-in + "any external monitor at 1080p"
  • One-click revert if a switch was a mistake (⌘Z works)
  • Auto-applies the matching profile when you plug or unplug a monitor (silently, no prompt)
  • Live screenshot preview on hover (opt-in, requires Screen Recording permission)
  • Available in English, Slovak, German
  • Shortcuts.app integration (so you can build automations like "Monday 9 AM → switch to Work profile")
  • Companion CLI (viberes) for terminal nerds

Tech

Native SwiftUI on macOS 26 (Tahoe), no Electron, no background processes other than the menubar itself. Source code is MIT-licensed.

Install

brew install --cask m-moravcik/viberes/viberes-app

Or grab the .app from the latest release (notarised? no — ad-hoc signed; you'll need to right-click → Open the first time).

CLI: brew install m-moravcik/VibeRes/viberes

Requires macOS 26 Tahoe. Earlier versions aren't supported on purpose — I'm using the new u/Observable macro and Swift 6 concurrency.

Feedback / issues / PRs welcome. Cheers.

u/SignatureBrave — 12 days ago