Ah, this old sausage. One of those questions where the very fact it is being asked ("How do I X?"), is itself an answer ("You are not yet ready to even start planning to do X."). You should maybe start with learning what Linux is and isn't; that is, where Linux ends and where the software you choose to install or develop for it begins.
For a practical experiment, I'd suggest installing minimal Ubuntu Server 32-bit (yes, the GUI-less one), and then following this AskUbuntu answer ( http://askubuntu.com/a/706073 ). When you run `apt-get install steam-launcher`, you will be presented with a list of all the software that goes into a window manager, an application stack, and a piece of user-space installation management software like Steam. To develop something like Steam, you will need to write or use nearly all of it.
Having experienced that brute-force education in the size and scope of what you are asking, instead of leaping into this multi-billion lines-of-code project you are asking us to show you "tutorials" for... you can instead tackle something a bit smaller. You don't need to write a Tetris game to develop an OS, but if you can't do the former yet, you definitely can't do the latter yet.