I use/abuse "systemd.user.tmpfiles.rules" to ensure important files and folders are present with the desired permissions. These are "for creation, deletion and cleaning of volatile and temporary files automatically", but from what I can tell, if you don't specify values for cleanup etc. then they are just created if they don't exist, permissions adjusted if they do and they are otherwise left alone. See the manpage tmpfiles.d(5) for the exact format.
The config looks something like this:
systemd.user.tmpfiles.rules = [
"d /home/username/path/to/directory 0750 username groupname - -"
"f /home/username/path/to/file.ext 0700 username groupname - -"
];`___`
where username and groupname are replaced with the actual values for the user being home-managed.
I've been running EAC with wine for many years with no problems. The latest release is rated 'Platinum' in the WineHQ App database: WineHQ - Exact Audio Copy.
Some of the UI elements act a bit weird sometimes (like editing track metadata in the list view) but it's mostly just quirky stuff like the text not rendering in some list elements now and then. It's all still there though, so clicking that field renders it correctly and then it stays that way. It's rare enough that I just ignore it.
I've used tools like abcde and others mentioned in this thread, and they work just fine. Since EAC works so well and I get all the accurip validation, metadata/albumart fetching and error recovery goodness, I use it preferentially. I only rip once to a ZFS pool, then put the CD away for backup, so I'd rather have the accuracy than 'native' integration with the desktop or the quick convenience of a CLI rip.