Agregar un sufijo a muchos files mientras conserva las extensiones

Tengo un directory ~/mydir/ con muchos files. Algunos de estos files son

 ~/mydir/foo.py ~/mydir/foo.tex ~/mydir/foo.pdf ~/mydir/foo.log 

Me gustaría cambiar cualquier file en ~/mydir/ cuyo nombre base sea foo to foo-bar . Por lo tanto, los files anteriores deben renombrarse como

 ~/mydir/foo-bar.py ~/mydir/foo-bar.tex ~/mydir/foo-bar.pdf ~/mydir/foo-bar.log 

No me preocupan los nuevos nombres de files que entran en conflicto con los files existentes ( $ ls ~/mydir/foo-bar* no devuelve nada).

Parece que esto debería ser fácil de hacer en bash, pero no puedo resolverlo.

¿Hay un script simple para realizar esta tarea?