Gentoo Archives: gentoo-user

From: Devrin Talen <dct23@×××××××.edu>
To: gentoo-user@l.g.o
Subject: [gentoo-user] Tablet rotation button broken in <=sys-apps/systemd-226-r2
Date: Sat, 27 Aug 2016 00:25:32
Message-Id: CA+FDhMNTdR2bRASL47O6ok+m+FSiC3hcvMA9iXC17knYsur42w@mail.gmail.com
Hey all,

I noticed recently that the screen rotation button on my Lenovo X201T
tablet was no longer working, whereas it had been working some time ago.
Long story short, there was a change around version 226 of systemd that
broke this.  I wanted to document how I got it working again and send it
out in case it helps anyone else.

This issue on Github [1] explains the problem and the patch that fixes it:

[1]: https://github.com/systemd/systemd/issues/1151

Rather than unmask a newer version of systemd I decided to try applying the
pull request to the current stable version in gentoo, which is
systemd-226-r2.  I created /etc/portage/patches/sys-apps/systemd and saved
the patch from the PR (cleaned up for 226-r2 and attached) there.  I then
rebuilt systemd, rebooted, and - voila - the rotate button is working again.

So (as root):

    # mkdir -p /etc/portage/patches/sys-apps/systemd # then copy the patch
here
    # emerge --oneshot sys-apps/systemd

That took a fair amount of googling around to root cause since I had no
idea where to begin, but ended up being a pretty simple fix.  When a newer
version of systemd gets stabilized I'll probably be able to drop that patch.

I do have a question though for anyone that can explain it: in the
patchfile I ended up putting in /etc/portage/patches I had to delete the
first slash in the filenames.  So for instance lines 27-31 of the patchfile
that works are this:

    diff --git a/Makefile.am b/Makefile.am
    index 8646e55..e3e07b8 100644
    --- Makefile.am
    +++ Makefile.am

But in the raw git diff they were:

    diff --git a/Makefile.am b/Makefile.am
    index 8646e55..e3e07b8 100644
    --- a/Makefile.am
    +++ b/Makefile.am

If I don't delete those prefixes then portage complains when applying the
patch:

    ERROR: prepare
    Failed Patch: fix-keymap-aliases.patch !
     ( /etc/portage/patches//sys-apps/systemd/fix-keymap-aliases.patch )

But existing patches in the /usr/portage/sys-apps/systemd/files directory
have the a/ and b/ prefixes.  So what gives?

Thanks,
Devrin

Attachments

File name MIME type
fix-keymap-aliases.patch text/x-patch

Replies

Subject Author
Re: [gentoo-user] Tablet rotation button broken in <=sys-apps/systemd-226-r2 Stroller <stroller@××××××××××××××××××.uk>