I want to set up a custom Linux OS primarily for hobby and learning use. It doesn't need a desktop environment, but I do want to at least customize the visual appearance of the window manager and maybe a taskbar. Applications (with GUI) can be run using the terminal, which would be the default application after booting. Basically, I want it to have the look-and-feel of an old computer, but relying on my own graphics for the GUI. It also needs to be able to be controlled entirely using the keyboard.
I have knowledge of Linux and understand what a window manager, desktop environment, etc. are, but I don't have direct knowledge of developing for Linux. I have searched around the web for tools and techniques to make such a GUI, but there is so much info that I'm getting a bit confused about what I could use and do. I can get a bare Linux distro without a GUI, and I know I have to install at least a window manager for a GUI to appear, but that's the point, I want to have a custom GUI with taskbar, but I'm looking at this more from a graphic designer's point of view than a programmer's, so I don't really know where to continue from there. I was thinking of using Qt or SDL for the GUI and the applications. So my question is really about how to create a custom GUI without developing a window manager from scratch. Python/Lua or even C# are preferred, but C++ is not a problem.
FYI, it is not meant to work as a standard OS like Ubuntu. It's for specific use and only intended to run my own simple applications (I run the OS as a virtual machine). The system is for a very specific and unique purpose, but I'm unsure how people will react if they knew what is was for. This is not something for professional use, nor really serious, but just some exploration into understanding Linux, and operating systems in general.