Raspbian Jessie autostart
<p>I think this question could also be useful for other Raspberry-Pi users who updated from Raspbian Wheezy to Jessie.
My python program with Tkinter GUI starts after a reboot on Wheezy but not on Jessie.
None of the methods described in internet worked for me.
I’ve did following:</p>

<p><code>sudo nano /etc/rc.local</code></p>

<p>In the next to last line (before “exit 0”) added following line:</p>

<pre><code>/etc/init.d/cron/start
</code></pre>

<p>This forces crontab to start on reboot.
After that called the crontab window:</p>

<pre><code>sudo crontab -e
</code></pre>

<p>Following line added:</p>

<pre><code>@reboot /home/pi/starter.sh &gt;/home/pi/logs/cronlog 2&gt;&amp;1
</code></pre>

<p>This should execute a script named starter.sh on reboot and log errors in the cronlog file.
The starter.sh script:</p>

<pre><code>#!/bin/bash
sudo python /home/pi/TkinterGUI.py
</code></pre>

<p>Made this script executable:</p>

<pre><code>chmod +x /home/pi/starter.sh
</code></pre>

<p>Checked the file properties - yes, executable. Executing this script from the command line '/home/pi/starter.sh' makes my TkinterGUI program start. On reboot happens nothing? The cronlog looks like this:</p>

<pre><code>Traceback (most recent call last):
File " TkinterGUI.py", line 354, in &lt;module&gt;
root = Tk()
File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1813, in __init__
self.tk = _tkinter.create(screenName, baseName, className, interactive, wantobjects, useTk, sync, use)
_tkinter.TclError: no display name and no $DISPLAY environment variable
</code></pre>

<p>It is the same display, the only difference is staring manually or autostart on reboot. Asking Google gives no useable answers. I don’t do remote access; my keyboard and monitor are directly connected to the Raspberry.</p>