Showing a list of posts when homepage is custom

First, you need to familiarize yourself with the WordPress Template Hierarchy, so that you ensure that you are modifying the appropriate template file:

  • Home: Blog Posts Index page; template file: home.php
  • Front Page: Site Front Page; template file: front-page.php

I am assuming that you want to display a static front page, and to display your blog posts index on a separate page? If so:

  1. Use the front-page.php template file to define the custom front-page markup
  2. Use the home.php template file to define the markup for your blog posts index (or, omit entirely, and let the blog posts index simply fall back to index.php)
  3. Create two static pages: one as the site front page placeholder, and one as the blog posts index placeholder
  4. Set Dashboard -> Settings -> Reading appropriately