como eu posso criar uma interface gráfica de sistema operacional
Aprendendo a programar.
A interface gráfica é uma base de código em c++, pra mim é um Knightmare pros programadores é uma base de código onde eles podem por o designer.
Olá! Sua pergunta está vaga, poderia fornecer mais detalhes? Se você pretende desenvolver aplicativos com interface gráfica no Linux (para rodarem no X Window System ou Wayland), pode usar uma série de toolkits e linguagens, há, inclusive, opções que lembram o Visual Basic, como Gambas e Xojo. Uma opção relativamente popular seria usar Python e fazer a interface gráfica usando o toolkit Qt.
Imagino que você não quer desenvolver um ambiente gráfico completo, uma vez que seria uma tarefa hercúlea e pouquíssimo produtiva (a menos que esteja, pensando, sei lá, em desenvolvê-la como passatempo para rodar em um sistema operacional como o FreeDOS, em máquinas antigas e suportando o padrão VESA, se assim for, há opções de código aberto que você poderia investigar para não começar do zero, como OpenGEM e Seal).
Do nada? Nenhuma interface te agrada?
O que vc quer dizer com interface gráfica de sistema operacional? É um Windows Manager ou Um programa tipo KDE ou Gnome ? Se for qualquer uma vc vai ter bastante trabalho. Se vc quer construir um interface gráfica para seu software depende de que linguagem vc tá usando
Imagino que ele queira desenvolver uma DE com suas próprias preferências estéticas, isso é tentador e deve passar pela mente de muita gente.
É possível customizar o que já existe, fazer forks do que já existe ou ainda buscar uma abordagem que usa gerenciadores de janelas e outras ferramentas. Por exemplo, não tem nenhum programa que faça um painel como o do CDE ou do QNX, mas é possível desenhá-los escrevendo uma configuração para o FvwmButtons.