Circular staves ARE possible with pure LilyPond, just look at this:
<moz-screenshot-50.jpg>
This was made using LilyPondTool's ruler feature, with the
following score:
\score {
\relative c' {
\override Staff.StaffSymbol #'transparent = ##t
\override Staff.KeySignature #'transparent = ##t
\override Staff.TimeSignature #'transparent = ##t
\override Staff.BarLine #'transparent = ##t
\override Staff.Clef #'transparent = ##t
% The clef
\once \override Voice.TextScript #'extra-offset =
#'(-10.6 . -11.8 )
s1^\markup { \rotate #90 \musicglyph #"clefs.G" }
#'(-17.1 . -8.0 )
\once \override Voice.TextScript #'extra-offset =
#'(-17.1 . -8.0 )
s1^\markup { \rotate #85 \note #"4" #UP }
\once \override Voice.TextScript #'extra-offset =
#'(-22.7 . -5.0 )
s1^\markup { \rotate #60 \note #"4" #UP }
\once \override Voice.TextScript #'extra-offset =
#'(-27.9 . -2.8 )
s1^\markup { \rotate #45 \note #"4" #UP }
\once \override Voice.TextScript #'extra-offset =
#'(-33.3 . -1.0 )
s1^\markup { \rotate #30 \note #"4" #UP }
\once \override Voice.TextScript #'extra-offset =
#'(-43.1 . 0.2 )
s1^\markup { \rotate #40 \beam #3.2 #0 #0.5 }
\once \override Voice.TextScript #'extra-offset =
#'(-44.2 . 0.8 )
s1^\markup { \rotate #0 \note #"4" #UP }
}
}