For text, the canonical solution is to use the "Text-Along-Path" function. Prepare the text with the text tool, draw a path, then in the Layers list, right-click the text layer and Text along path.
However this is very lacking in options and not very forgiving, so there is an alternate way that uses a script.
However this is very lacking in options and not very forgiving, so there is an alternate way that uses a script.