Most smartphones come with a range of ringtones.
But if you don’t like those, you can make them yourself from music that you are allowed to use.
All software that is used here is open source. They should work on all recent UNIX-like operating systems. In my case, I installed all of these programs using the FreeBSD ports system.