From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.3 (2019-12-06) on atuin X-Spam-Level: X-Spam-Status: No, score=-1.6 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, RCVD_IN_DNSWL_LOW,SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.3 Received: from [127.0.1.1] (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 4BC4110235; Sun, 3 May 2020 19:19:20 +0000 (UTC) Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by atuin.qyliss.net (Postfix) with ESMTPS id 5C28A1021A; Sun, 3 May 2020 19:19:11 +0000 (UTC) Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id 485555C0150; Sun, 3 May 2020 15:19:10 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute2.internal (MEProxy); Sun, 03 May 2020 15:19:10 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=alyssa.is; h= from:to:subject:date:message-id:mime-version:content-type; s= fm3; bh=2UHDLM6z4Cfil+z4N6JcIUmAIlPIL4cF0DDZf9orU8I=; b=iGOP4Knc EV/kZoIZwCT43wlpwSWcxSTzW9QMI4/b2O326M1VyOzxDQY01RmFwKT8kwRNkJbr h6Junz25u56+Q/w7I80+RT3L80BlLkLsskt/QBLq9KmumpgfKCR9qvf9Ggas9r/6 gpRVRgqmehiQ2b5TdoajWuCdgKIJaXhg38vzz+rMB091/moD39zHcPdqlh5PXazO RUuUaImzZDnQLp6ZGqXj14a7m4O/q84aZV9hpDo9x2pysBIu+PqrB6oLUMaOYRyd wsLUnndFfwT1X4pCR41R0/O9+Qmhgrsm9qaxeZxwDMvGjrcmWIE5kF3/n2+CzDW7 yStcrooF45gftw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-type:date:from:message-id :mime-version:subject:to:x-me-proxy:x-me-proxy:x-me-sender :x-me-sender:x-sasl-enc; s=fm2; bh=2UHDLM6z4Cfil+z4N6JcIUmAIlPIL 4cF0DDZf9orU8I=; b=SvtPgbf8Gj1o5G/J6hSFMNDS7trdZb3fYVx+49kZI/HtD ea8OFKbaWhbu5QX1fiIc/VeA5wmLLY9mCk7MNrLpg5TAG9GeFv7xwNZbFpeH5BZb vFMlsZMIzP7/QR3l5ygVgXhyiBaYWNEQ8v8iWDImKbiEMMs4taP651L9j6O0ez46 oFW/t+LIumkRyg+IbE9Tt/SjZYuSDAkiu7O94khidEym2knyTpkbc0kJ5shBy1Hf jNW8ENelUoIdyp/vku0Ay2oj8BfTlMve5p0NWzWuqJ7PBBcm9iH8S8N9bB1oR9Zi BGtzu1ej5E5aue7Nm2xGpR4hTlAXyZsdRFWWIxZCg== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgeduhedrjedvgddufeehucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkgggtsehgtderredttd dtnecuhfhrohhmpeetlhihshhsrgcutfhoshhsuceohhhisegrlhihshhsrgdrihhsqeen ucggtffrrghtthgvrhhnpedvheeukeeiheeitedvkedugfdtvdeijefhjeeujeduudeuie ejtdegtefhkeeiheenucffohhmrghinhepghhithhhuhgsrdgtohhmnecukfhppeejledr vdefhedruddviedrudefvdenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmh grihhlfhhrohhmpehhihesrghlhihsshgrrdhish X-ME-Proxy: Received: from x220.qyliss.net (p4feb7e84.dip0.t-ipconnect.de [79.235.126.132]) by mail.messagingengine.com (Postfix) with ESMTPA id A327F3065FDB; Sun, 3 May 2020 15:19:09 -0400 (EDT) Received: by x220.qyliss.net (Postfix, from userid 1000) id 3540A5D8; Sun, 3 May 2020 19:19:07 +0000 (UTC) From: Alyssa Ross To: discuss@spectrum-os.org, devel@spectrum-os.org Subject: This week in Spectrum, 2020-W18 Date: Sun, 03 May 2020 19:19:05 +0000 Message-ID: <874kswddxy.fsf@alyssa.is> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Message-ID-Hash: HCFXCIUANI4ROEXGGEWN4EZD62JUZDYM X-Message-ID-Hash: HCFXCIUANI4ROEXGGEWN4EZD62JUZDYM X-MailFrom: hi@alyssa.is X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.3.0 Precedence: list List-Id: General high-level discussion about Spectrum Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable A belated Happy International Workers' Day. :) I had some other stuff going on this week but I'm still happy with what I got done. Wayfire =2D------ I've been working on packaging Wayfire in Nixpkgs so we can use it in Spectrum. (See last week's update for why I've chosen Wayfire for this.) This has required quite a bit of work on Wayfire itself, because up until now Wayfire has assumed that every component, including plugins, will be installed into Wayfire's prefix. With Nix, a package's prefix is only writable by that package, so we need to make some changes to Wayfire to support each component having its own prefix. This is necessary even for our simple case because even a basic Wayfire setup has at least one plugin to provide the desktop shell. Everything is supposed to be a plugin, after all. And we'll want to add our own plugins at some point. To implement plugins in other search paths, I added two environment variables WAYFIRE_PLUGIN_PATH (for libraries) and WAYFIRE_PLUGIN_XML_PATH (for the XML files that define Wayfire plugin options). These are then searched in addition to Wayfire's prefix. Support for plugins coming from multiple prefixes required some small changes in several parts of the Wayfire ecosystem. Wayfire has so far proven to be a very friendly upstream. They understood the problem I was having, even though it's less of an issue on traditional distributions, and I always got quick answers on IRC when I needed to ask for advice on implementing the search paths. Here's the issue I filed describing the need for search paths: https://github.com/WayfireWM/wayfire/issues/493 And here are all the pull requests I made to implement them across the ecosystem: https://github.com/WayfireWM/wayfire/pull/496 https://github.com/WayfireWM/wf-config/pull/25 https://github.com/WayfireWM/wayfire/pull/497 https://github.com/WayfireWM/wf-shell/pull/52 https://github.com/WayfireWM/wf-shell/pull/53 https://github.com/WayfireWM/wcm/pull/17 https://github.com/WayfireWM/wf-shell/pull/54 https://github.com/WayfireWM/wcm/pull/18 With these changes, I can have Wayfire all nicely packaged up. We can even provide a nice Nix interface for configuring a Wayfire with some specific plugins: (wayfireApplications.withPlugins (plugins: with plugins; [ wf-shell ]))= .wayfire I made a pull request to add Wayfire, with the interface demonstrated above, to Nixpkgs: https://github.com/NixOS/nixpkgs/pull/86606 Unbeknownst to me, while I was working on this, another PR was also opened to add the latest version of Wayfire to Nixpkgs: https://github.com/NixOS/nixpkgs/pull/86569 This PR does a good job of making the basic Wayfire installation work, but it doesn't support extra plugins. Still, it's likely that if this had been available before I started my work, it would have been good enough for us for now. This sort of thing is always a risk, and even if I hadn't done the Wayfire work now I'd have had to come back later anyway to do plugins, so it's not too bad. The author of that PR and I have agreed to work together from here to get Wayfire into Nixpkgs, using my PR as a base because it has the plugins support. So, hopefully by the time I write my next status update all my Wayfire pull requests will have been merged, and Wayfire will be in Nixpkgs. Reviews on the Nixpkgs PR in particular are very much appreciated. :) From=20here, I'll start trying to modify Wayfire/wlroots to make it request host memory rather than allocating its own, as described in last week's status update. I had a quick look, and it appears that there aren't many places these allocations are happening, so hopefully that shouldn't require too much modification. Then, we should be able to run an application in one VM, displayed on a compositor in another. :) --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCAAdFiEEH9wgcxqlHM/ARR3h+dvtSFmyccAFAl6vGSkACgkQ+dvtSFmy ccAfKQ/+MygalnI/J9REtZSVPmpYRYW28MIzP+oJJyi4KDWnfX6Rp1NH2HcaXYay 27a7Mntwta6e7oXV7I0gGC77AR4jD4nlcEDAyouajgLItwZXxcixNpKuZoZgKem4 kE7HRV8o55zE/q8ZGXBUff6iqLGSkQ3bfnQMqW8+Xxg+USo16V+hxEXtUZR22hgz E9lzbqbfBBxdmHMMl6h35AkTm+sBHdSDjK4yiICs0XCsBrtzla5ZPCgwR6LqIufs qwNsKOn8hJyKhhnd64zb+6ERUxvZp+z0DSO4IByvWb1UUAYvJoajDREiOhSHXDW2 Iet18Fz3kGGtT6RJvielqUFlET5GHimB1yyZubiYLOUGxOgTZfC744RUJq2LJHkv NZibNoJDcWPKfFzz5jX1TtMQ42B6ZvdPdcBq1/29hHqlBXuvbthBAMbA5zUGLY7r hnuql6AehKgg3N+n6AAVswGJUWK8DrJvcNOSjtJgYbhLD37B5o+ds+Ndq5PSNslJ O6TKMYU6zeh/TYLGoa40K8eFSmpHvBb1jqoRJs+EQlzsdEd8PYlwKAJujK+e25mH O9DJceeq28jQG+qtGoIXRBDrGFfP70+iO08shYbKmSQdcPwUQNzlPc+CvZyNf+G6 QOqW8dqF19XFygKiVMb1OrxMne3LgAOC3TN+9O8fb/Q5b759FEI= =wD3Y -----END PGP SIGNATURE----- --=-=-=--