<?xml version="1.0" encoding="UTF-8" standalone="yes"?><oembed><version><![CDATA[1.0]]></version><provider_name><![CDATA[Software is Crap]]></provider_name><provider_url><![CDATA[https://davmac.wordpress.com]]></provider_url><author_name><![CDATA[davmac]]></author_name><author_url><![CDATA[https://davmac.wordpress.com/author/davmac/]]></author_url><title><![CDATA[X keyboard crap]]></title><type><![CDATA[link]]></type><html><![CDATA[<p>I&#8217;m getting this in my log when I try to start X:</p>
<blockquote><p>[  7780.894] (EE) Error compiling keymap (server-0)<br />
[  7780.894] (EE) XKB: Couldn&#8217;t compile keymap<br />
[  7780.894] XKB: Failed to compile keymap<br />
[  7780.894] Keyboard initialization failed. This could be a missing or incorrect setup of xkeyboard-config.<br />
[  7780.894]<br />
Fatal server error:<br />
[  7780.894] Failed to activate core devices.</p></blockquote>
<p>What&#8217;s going on? &#8220;Couldn&#8217;t compile keymap&#8221; has to be one of the most useless error messages ever. <em>Why </em>can&#8217;t you compile the keymap??!</p>
<p><strong>Update:</strong></p>
<p>I renamed the &#8220;xkbcomp&#8221; executable and replaced it with a script which logged options and output before executing the original. I&#8217;m seeing this output:</p>
<blockquote><p>The XKEYBOARD keymap compiler (xkbcomp) reports:<br />
&gt; Error:            Cannot open &#8220;/tmp/server-0.xkm&#8221; to write keyboard descriptio<br />
&gt;                   Exiting</p></blockquote>
<p>&#8230; However, I don&#8217;t understand why it&#8217;s unable to create a file in /tmp. I&#8217;ve verified the file doesn&#8217;t already exist before xkbcomp is run, and that all users can create files in /tmp (the &#8220;t&#8221; bit is set).</p>
<p>Once again, the error message is bad: please tell my <em>why</em> you can&#8217;t open the file. (Hint: it&#8217;s called <em>perror</em>).</p>
<p><strong>Update: (Solved!):</strong></p>
<p>Turns out the permissions <em>were</em> the problem. They were:  rwxr-xrwt, i.e. the group was denied write permission. I didn&#8217;t think this was a problem seeing as &#8220;other&#8221; users are allowed to write files, but apparently that&#8217;s not how Linux permission checking works.<strong><br />
</strong></p>
]]></html></oembed>