You are going to need to replace the 12/2 or 14/2 NM cable with some 12/3 or 14/3 cable. Right now, you have the neutral connected to the light fixture and the always hot connected to the white wire running down to the switch and the black wire from the switch going back to control the light. You have no neutral at the switch location. You need a NM cable with a black,red and white wire and a bare copper ground going from the light to the switch. At the ceiling, the white wire gets connected to the new light white wire and to the ceiling white wire. The black wire get connected to the ceiling black wire and the red wire gets connected to the black new light wire. At the switch, the white gets connected to the neutral of the switch outlet, the black gets connected to the switch and the outlet and the red gets connected to the switch and becomes the switched hot.
The bad news is that outlet will have to be GFCI protected. I'm not sure if they make a GFCI combination switch & outlet so you'd have to change out the breaker to a GFCI breaker or change out the single gang switch box to a double gang and add a GFCI outlet there.