funnybanana, в Linux-е тебе всё равно минимальное знание C потребуется. Тот же биндинг для определения переключения раскладки сделать. Я сейчас в основном на C# пишу, правда 95% под оффтопик в VisualStudio, т.к. консольное для Linux-а мне писать не надо, а для себя что-то с GUI - не очень нравится GTK#, да и протухшим выглядит, т.к. на GTK3 никак обвязку не сделают. Если хочешь, чтобы твою программу много народа юзало, то постарайся не связываться с mono вообще, она большая и её, как и JAVA не все ставят. Vala - хороший ЯП, хотя и сыроват малость (IDE хорошей нет, каких-то либ не хватает, ещё на что-то люди жаловались, то-ли с сетью, то-ли с БД не очень удобно работать, но мне понравился).