Tiny Player for iOS 2.0

Tiny Player version 2.0 is out now on iOS. This is a rather big update:

  • Refreshed user interface
  • Import from Files
  • ZIP support
  • Equalizer (high-shelf/low-shelf)
  • Embedded lyrics
  • Designated “incoming” folder

  • Removed support for variable playback rate
  • Removed “autosort” feature
  • Requires iOS 15 or newer
If you like the app, you can use the new in-app tip jar.
Bug reports and suggestions are always welcome.
Have a nice day!

Quick update: 2.0.1 is out:

  • Drag playlist items to reorder
  • Small fixes

New server

For the last few years I had been using DigitalOcean to host this website & a few others, file sync and my git repos. Fairly low traffic stuff on a single VPS instance. It was nice and cheap. But still… the recent 20% price increase got me thinking…

Can I build my own server?

Turns out I could! And it was a lot of fun.

I used a 10th generation Intel NUC with a 6-core i7 CPU, 32GB RAM and a 1TB NVMe SSD. Yes, overkill. But the key parameter is power usage. The whole system draws ~7W at idle. What a wonderful little machine!

For the OS I decided to install Ubuntu (22.04 LTS). I’m familiar with it and it was useful having the same OS on both systems. Then, some housekeeping on the old server:

  • removed old disconnected websites
  • put websites under separate user accounts
  • moved from Gogs to Gitea
  • organized my git repositories
  • setup a more thorough backup procedure

When I had everything ready, I brought the NUC to the new Prague data center and turned it on. It went online and the migration could begin. I started moving websites and services one by one. A few days later, the old VPS instance was empty and I turned it off.

CPU RAM Storage
DigitalOcean 1x vCPU 2GB 50GB + $extra
Intel NUC 6x CPU / 12 threads 32GB 1000GB

There’s plenty of headroom for no extra money and I feel like I’m more self-reliant.

To elaborate a little bit on the backup procedure:

  1. daily rsync (soon → rsnapshot)
  2. daily mysql dumps
  3. /etc and apt package list versioned in git
  4. secondary NUC ready for deployment
  5. backup VPS account ready for deployment  (prepaid credit)
  6. up-to-date checklist for configuring the whole software stack

Tiny Player for Mac 1.6.3

Recently I had been getting reports that the playlist wasn’t saved properly but I couldn’t reproduce this error. I added tons of extra logging and asked people to send me log files.

Here’s what I discovered:

  • A database migration was failing while renaming a table column
  • …and it would happen only on macOS 10.14 or older
  • …because those systems include an older version of SQLite
  • …which doesn’t support renaming columns the way newer ones do
  • …and I didn’t notice any of this because my old El Capitan Macbook had died
  • …and some versions of the app silently ignored the migration error

It should be fixed now. Takeaways:

  1. Bundle a private copy of SQLite with the app
  2. Get an old Mac Mini with 10.11 and use it for regression testing

Also new in this version: simple feedback form. Open Preferences → Feedback and let me know what’s on your mind. You can attach the application log file & preferences with a simple checkbox.

Happy Ho ho.

Tiny Player for Mac 1.6.0

I’m happy to announce Tiny Player for Mac version 1.6.0. The headline feature of this release is Quick search. Here’s how it works:

  1. Open Preferences → Library and add your music folder(s).
    Files are not copied anywhere or modified.
  2. Press ⌘F to open the search box and start typing
  3. Drag, drop, boom

As always, if you like the app, you can buy me a coffee. Thanks!

Bonus tip: double click a file in search results to select all from the same folder.