title: Cross-platform support for `data_files` with `setup.py` + `pip`
body: <p>What would be a cross-platform way of shipping <code>data_files</code> with <code>setup.py</code> (compatible with <code>pip</code>)?</p>
  
  <p>From the official documentation, one needs to write:</p>
  
  <pre><code>setup(...,
      data_files=[('bitmaps', ['bm/b1.gif', 'bm/b2.gif']),
                  ('config', ['cfg/data.cfg']),
                  ('/etc/init.d', ['init-script'])]
      )
  </code></pre>
  
  <p>and <code>'bitmaps'</code>, etc. are the sub-directories where those files should go (relative to <code>sys.prefix</code>).</p>
  
  <p>However, this is sub-optimal for cross-platform installations where the standard sub-dir will depend on the system.
  Additionally, installing the package in developer mode will not place the files where they will later be after the installation, making this process of finding/using resources ultimately hard / annoying to debug.</p>
  
  <p>I have looked into <code>appdirs</code>, but it seems difficult to make it work properly during installation, e.g. if using the user directory for data this gets actually tied to my development environment.</p>
  
  <p>The reason I am asking this is because I have a small Python package that implements a simple GUI and I would like to ship an icon with it.</p>
  
  <p>For the record, I am OK with processing <code>setup.py</code> with <code>setuptools</code>.</p>