From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:470:142:3::10]:37620) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1iLX8V-0006G3-PC for guix-patches@gnu.org; Fri, 18 Oct 2019 14:38:04 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1iLX8U-0005cX-EB for guix-patches@gnu.org; Fri, 18 Oct 2019 14:38:03 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:42735) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1iLX8U-0005cL-6l for guix-patches@gnu.org; Fri, 18 Oct 2019 14:38:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1iLX8U-0006Bx-0p for guix-patches@gnu.org; Fri, 18 Oct 2019 14:38:02 -0400 Subject: [bug#37717] [PATCH 3/3] gnu: Add kmonad. Resent-Message-ID: From: Marius Bakke In-Reply-To: <0d12f8da-b2ca-4b42-a39d-64ed503416d5@www.fastmail.com> References: <4551b258-a4e3-49f8-9c22-5840edbbd3a7@www.fastmail.com> <0d12f8da-b2ca-4b42-a39d-64ed503416d5@www.fastmail.com> Date: Fri, 18 Oct 2019 20:37:31 +0200 Message-ID: <87o8ydyk5w.fsf@devup.no> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha512; protocol="application/pgp-signature" List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Alex Griffin , 37717@debbugs.gnu.org --=-=-= Content-Type: text/plain "Alex Griffin" writes: > I went ahead and added the necessary udev rule to the kmonad package. The revised patch is attached. I've tested it and confirmed that if you add your user to the input group, and include kmonad in your system udev rules [1], you can run kmonad as an unprivileged user. Nice work! > From 93c0d7fd68c8bee08162dfb93725675dfd9d8101 Mon Sep 17 00:00:00 2001 > From: Alex Griffin > Date: Sat, 12 Oct 2019 13:55:49 -0500 > Subject: [PATCH 3/3] gnu: Add kmonad. > > * gnu/packages/haskell-apps.scm (kmonad): New variable. [...] > +(define-public kmonad > + (package > + (name "kmonad") > + (version "0.2.0") > + (source > + (origin > + (method git-fetch) > + (uri (git-reference > + (url "https://github.com/david-janssen/kmonad.git") > + (commit "06d7b8c709efa695be35df9bde91275cbb2ba099"))) > + (file-name (git-file-name name version)) > + (sha256 > + (base32 "1rjr4h5yq63x3kad6yn4p8v26389sd9dgr5n2w73s1chafapzwwd")))) > + (build-system haskell-build-system) > + (arguments > + `(#:phases > + (modify-phases %standard-phases > + (delete 'haddock) ; Haddock fails to generate docs > + (add-after 'install 'install-udev-rules > + (lambda* (#:key outputs #:allow-other-keys) > + (let* ((out (assoc-ref outputs "out")) > + (rules (string-append out "/lib/udev/rules.d"))) > + (mkdir-p rules) > + (with-output-to-file (string-append rules "/70-kmonad.rules") > + (lambda _ > + (display > + (string-append > + "KERNEL==\"uinput\", MODE=\"0660\", " > + "GROUP=\"input\", OPTIONS+=\"static_node=uinput\"")) > + (newline)))))) Nitpicking, but I have a preference for the more explicit 'call-with-output-file', as well as using 'format': (call-with-output-file (string-append rules ...) (lambda (port) (format port "KERNEL...~%"))) YMMV. This phase should return #t, though. Otherwise LGTM. --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAl2qBmsACgkQoqBt8qM6 VPq+XAgAigKGi3F3Pcckjjt0rDHiROIRhsCAXG/KoMoR4DUzdFTThEmdNysxYIBf uIvAsCUvkoEylQZ8Hx/ZItJSZjranK6mqpuyHQkIqOXn0R5qR2zLX/Dh9pgBdvXp a1a974mpCt3S9Nk/ukfrIVmr6ENeBFwLTd245IijP/Y6On2bdDhnnYexFSqI/Omk gMcPvuLT0qv6qoB/5hasOdox8OGoErip2c7MGeKVyO39pMLpPNrVebV/Xuz4XRfi MlFrWu2FiyomBuMOi9zNq7lAKcWlfjTHw/4q4OhicJ94gqJ4cOgU2eewvCfKGPNr vwq52zKpyYEVgWo/wS0ehyWTqurszw== =Nt+U -----END PGP SIGNATURE----- --=-=-=--