Recently I have been using Arduino more and more, and since I don’t own any actual Arduino boards I had to put the hex generated by the Arduino IDE to my custom AVR Boards either manually or by using the “Upload Using Programmer” option in the IDE.
With a USBasp programmer, you can program an AVR from the Arduino IDE by pressing Ctrl+Shift+U, just need to edit the boards file and add a new board profile with parameters same as your custom board.
I stumbled across a GitHub project which employs VUSB and USBasp and AVRDude supporting bootloader and allows to turn regular ATMega8 Boards into Arduino Boards with direct USB Connection and can be programmed directly via the IDE like regular Arduino Boards, the only catch being that there is no Serial Interface via the USB Port and the boards needs to be reset every time the board needs to be flashed.
GitHub Repo Link: https://github.com/baerwolf/USBaspLoader
Many Thanks to Stephan Baerwolf for his Git-Repo and for all his help.
Instead of making a PCB, I took the path same as the tinyUSBboard and made a vero-board circuit. I made it somewhat shield-compatible by putting in the headers in places similar to the Arduino Boards. tinyUSBboard – the diy AVR (VUSB) board http://matrixstorm.com/avr/tinyusbboard/