~/talk

Licensing and Distributing a Paid CLI With Ruby, Rails, and SwiftUI

Talkat Rocky Mountain Ruby 2023 · 2023-10-05..10-06· [ruby, devops-and-delivery]
slides:none on file

A paid CLI called Ruby on Mac enforces one year of updates and a one‑Mac limit by shipping a signed license file and self‑contained binaries built with ruby‑packer and shc and delivered as a .pkg; Paddle webhooks, a Rails backend and ActiveStorage generate GitLab‑style signed licenses, and Apple’s DeviceCheck API verifies device activations. The rollout mostly works after rewriting bash into Ruby to avoid antivirus false positives (SentinelOne) and handling Macs without Secure Enclave; 15 discount codes exist.

AI-written summary · about

  1. 0:00Ruby installation struggles
  2. 4:56Ruby on Mac features
  3. 7:43Licensing system requirements
  4. 10:11Compile Ruby to binaries
  5. 14:28OpenSSL troubleshooting
  6. 18:01Certificate locations on Macs
  7. 20:05DeviceCheck and restrictions
  8. 22:59MacOS app for token generation
  9. 25:03Code signing and verification
  10. 27:52Perpetual fallback licenses
  11. 29:18Webhook timing in Rails
  12. 31:49License verification flow
  13. 33:15HTTP timeout optimization
  14. 34:42Demo: license verification
  15. 36:50Antivirus issues with Bash
  16. 38:14Bash to Ruby rewrite
  17. 40:00Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.