From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 22197 invoked from network); 28 Jan 2022 12:13:32 -0000 Received: from tb-ob0.topicbox.com (64.147.108.117) by inbox.vuxu.org with ESMTPUTF8; 28 Jan 2022 12:13:32 -0000 Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob0.topicbox.com (Postfix) with ESMTP id 7B43F39859 for ; Fri, 28 Jan 2022 07:13:31 -0500 (EST) (envelope-from bounce.mM9e7cea6cac0af336bf4dd3ac.r522be890-2105-11eb-b15e-8d699134e1fa@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 7754613F052D; Fri, 28 Jan 2022 07:13:31 -0500 (EST) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=sirjofri.de; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding :list-help:list-id:list-post:list-subscribe:reply-to :list-unsubscribe; s=sysmsg-1; t=1643372011; bh=5HLWKjOEZUyQbLwn F7Ufi4DYnndBv8+oEcrLJZ7OWzQ=; b=H9ERM2YIJwHK49wxBrFxLyXDjMCMHY5u i87CIQDtef95EDB3fAhACrvtUx2mJRHNTCSe0a8p77Pp7sZ6IFLTBh5mNqGCJow1 oGF1bxdZKRdpxkZg7uQJX1pMoSZbiGr/aZ3gvrSUu2TXXoO51Z68FDA0MN/H7J9w rZpoqIYLyOA= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1643372011; b=dfsQiC3yAx7PM9a3EyPQIpMtOvcIOU/uE1XHOBNBichFGYL3ZH UZVwhyNSIBJoLPYPdqHRpac1LhIJdjiUTlYEJwahthWBvEg/xGv4/T7Cejfqtv7X lby4z9tnOjQWetNcJ8Rf1FBtpCBTYXI88WuyVoBml68ebG12OQoKZT8f4= Authentication-Results: topicbox.com; arc=pass; dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=sirjofri.de; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=sirjofri.de policy.ptr=sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=date:from :to:message-id:in-reply-to:references:subject:mime-version :content-type:content-transfer-encoding:list-help:list-id :list-post:list-subscribe:reply-to:list-unsubscribe; s=dkim-1; bh=5HLWKjOEZUyQbLwnF7Ufi4DYnndBv8+oEcrLJZ7OWzQ=; b=b5NDPotbntXu 2BreHvOzs2g1aiRJjBh1ja+lY241C39jbYuU+vGFBqAShD0I3EwNyt7JnCNPlg7y r3o602ABpBGg9Aaj+YpuKX3j8eNnt1+pONuE0Jcz0suoKLxg7RJyfm6L3dsuj5OO qniojSyt/CGTzYWk+0nYCLbMaBXXwGE= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 7A540FD2EE5 for <9fans@9fans.net>; Fri, 28 Jan 2022 07:13:21 -0500 (EST) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id C90B15839B1; Fri, 28 Jan 2022 07:13:21 -0500 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1643372001; b=JOFyskqpCr79QOz1RIMdBhFsaLiI4u1klV6oNFA1gbQK1Pea9+ ED2dK4h2ot1SUqoiRZGU38E5pirOrZ/iYeQ1bUjVgbCB5X5WYrJ75uzNvbLbr7I3 5pURXzco1LHyP6Z2BhSXx7hG8sS5PFapYuuEEYD8CzCcH86Nz/4EcHmiR6ZKdB0B CcAIWFQqBbDfA93W/k7YXbOiM3pGAmsKhQ8aabs5S/k982ZM/t/yEB5aEPRHSbCW n0n4IsGR2lhjM4YuFrvsQ6EB15KIHpfDyIaVL2rgXkG+yY9OEa74fXZd9hjol/eV Ew9ceAyAchnkmEE14rCgzv1xxfqgXNTyk/lA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=date:from:to:message-id:in-reply-to:references :subject:mime-version:content-type:content-transfer-encoding; s= arcseal; t=1643372001; bh=TB0mNqLmbTrzziTH+Lj1TMxWQqa/vHt7AFqT4B mEF5s=; b=j/dDDH4QNXsn6OZNA/o7PFA/HSy/gqwuGbYnTv3ErARYnxDsqfdejL DpDQsuINgTdtFjngwFZ3jfOlr51bfgoh3dNEZGdTOxcC6a1OdS1xp6io+YIiZvKK ghKCuq981Sj7v0kK1EwmMPK47BMp13V+7WFqXSWAq5YToZ0PpYxNAzwFNI1xyHnT b505CAapXinzThB3ppH617MNDL3Rj+5XC29ZLGbv4V7cvL1vUizhh1F/CKo3hCCP WFYpiRRW+D7Pn5RXM4kWEk80oXp04625WhsRN168Sypl4jYsDlwvlwoKFUfTc9GU TRVZY/jAfc+BKyF+rEubu/dveFK1OiGA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=none (no signatures found); dmarc=pass policy.published-domain-policy=none policy.applied-disposition=none policy.evaluated-disposition=none (p=none,d=none,d.eval=none) policy.policy-from=p header.from=sirjofri.de; iprev=pass smtp.remote-ip=5.45.105.127 (sirjofri.de); spf=pass smtp.mailfrom=sirjofri+ml-9fans@sirjofri.de smtp.helo=sirjofri.de; x-aligned-from=pass (Address match); x-me-sender=none; x-ptr=pass smtp.helo=sirjofri.de policy.ptr=sirjofri.de; x-return-mx=pass header.domain=sirjofri.de policy.is_org=yes (MX Records found: sirjofri.de); x-return-mx=pass smtp.domain=sirjofri.de policy.is_org=yes (MX Records found: sirjofri.de); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-SHA smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvvddrfeehgdefjecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpggftfghnshhusghstghrihgsvgdpuffr tefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtnecunecujfgurhepfffhvffkjg hfufggtgfgsehtqhertddttdejnecuhfhrohhmpehsihhrjhhofhhrihcuoehsihhrjhho fhhrihdomhhlqdelfhgrnhhssehsihhrjhhofhhrihdruggvqeenucggtffrrghtthgvrh hnpeffhfevueevgfdvledvffeutdegfefgleekteegueegtddvfefgvdejieehuefhueen ucffohhmrghinhepshhrrdhhthdpshhhihhthhhusgdruhhspdhtohhpihgtsghogidrtg homhenucfkphephedrgeehrddutdehrdduvdejpdelhedrledtrddvudekrdduhedvnecu vehluhhsthgvrhfuihiivgeptdenucfrrghrrghmpehinhgvthephedrgeehrddutdehrd duvdejpdhhvghlohepshhirhhjohhfrhhirdguvgdpmhgrihhlfhhrohhmpeeoshhirhhj ohhfrhhiodhmlhdqlehfrghnshesshhirhhjohhfrhhirdguvgeq X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (sirjofri.de: 5.45.105.127 is authorized to use 'sirjofri+ml-9fans@sirjofri.de' in 'mfrom' identity (mechanism 'mx' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="sirjofri+ml-9fans@sirjofri.de"; helo=sirjofri.de; client-ip=5.45.105.127 Received: from sirjofri.de (sirjofri.de [5.45.105.127]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Fri, 28 Jan 2022 07:13:19 -0500 (EST) (envelope-from sirjofri+ml-9fans@sirjofri.de) Received: from sirjofri.de ([95.90.218.152]) by sirjofri.de; Fri Jan 28 13:13:12 +0100 2022 Date: Fri, 28 Jan 2022 12:13:12 +0000 (UTC) From: sirjofri To: 9fans <9fans@9fans.net> Message-ID: In-Reply-To: <1942de7a-1126-7600-3b36-69ce2effd610@fjrhome.net> References: <16433354030.97ACA3.134633@composer.9fans.topicbox.com> <1942de7a-1126-7600-3b36-69ce2effd610@fjrhome.net> Subject: Re: [9fans] suggestion : new service targets for plan9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable X-Correlation-ID: Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: b2020cb6-8033-11ec-87b6-bdfad0078a5b Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UMjUxOGY5ZTRmYzEwZWQwMy1NOWU3Y2VhNmNhYzBhZjMzNmJmNGRk?= =?UTF-8?B?M2FjPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:522be890-2105-11eb-b15e-8d699134e1fa:M9e7cea6cac0af336bf4dd3ac:1:-NBN2iWQlVRGhAdZH5_CrR0sPrhYCW0x78XJvPHsQ54 Hey, that was my idea! =F0=9F=98=89 Well, to be precise, I also had the idea of having a filesystem hierarchy=20 for window contents. /mnt/window/mywindow/vbox/hbox/button/label/ and inside that: text, padding, margin, ... Whatever you like. It would be easy to write UIs using shell scripts, and to be fair, many=20 user applications can just be a shell script that hauls data between UI=20 and specialized filesystems for their task. I suggest you look at the rcgui test I did quite some time ago, I believe=20 it's available at https://git.sr.ht/~sirjofri/rcgui. It's sadly not a=20 filesystem, but does an app lifecycle approach and you can react to=20 events like redraw and give simple text draw commands for button=20 controls. I really would like to see the filesystem approach as that's=20 what my goal is, but I was not so good at implementing filesystems=20 (although I have many ideas) and I have very limited time due to=20 ninephone project and especially work. Btw I was planning to have some kinda filesystem wrapper so you can=20 easily write simple filesystems using rc, some kinda glorified 9pcon, but=20 that's another topic. if you're interested in discussing touch UI ideas (or stuff that leads=20 towards touch UI on 9) I set up a garden repository on shithub for this=20 exact purpose. garden means, you only need a shithub account and have=20 push access. The URL is http://shithub.us/garden/touchui/HEAD/info.html .=20 I wanted to add my ideas earlier, but I sadly didn't have enough time for=20 that (I have ideas though, just need to write them down). sirjofri 28.01.2022 10:55:01 Frank D. Engel, Jr. : > I was actually thinking of a somewhat different approach to providing a=20 > more modernized user interface. > > Consider that rio currently exports the required files for each window,=20 > which provide the same interface as the display driver underneath them. > > Now consider adding a new "control manager" file server which exports a=20 > filesystem to manage individual controls arranged inside a window (or=20 > at the root level if not running rio or other window manager).=C2=A0 Crea= te=20 > a directory inside the exported filesystem to add a new control.=C2=A0=20 > Inside the directory would automatically appear those same files that=20 > are exported by rio or by vga, but specific to the control.=C2=A0 There=20 > would also be a file for controlling the scaling and placement of child=20 > controls of the control in some defined manner, allowing "layout=20 > managers" to be defined (such a file would also appear at the root).=C2= =A0=20 > Add a new subdirectory within the directory of a control to create a=20 > child control. > > Individual types of controls can then be implemented as separate=20 > programs or libraries which would interact with those basic elements to=20 > provide the specific functionality of a control or layout manager -=20 > standard controls to be provided would be the typical buttons,=20 > checkboxes, text fields, etc., while layout managers would arrange=20 > their children in specific patterns, such as vertically stacked,=20 > horizontally stacked, grids, etc. > > This mechanism is an extensible way to cover the provision of "modern"=20 > controls within a window, even when still using rio, and is true to the=20 > "everything is a filesystem" nature of plan9. > > > A second step would be to create an alternative to rio which would do=20 > the same job, but with title bars and the like. > > > Some kind of file management / desktop environment application could=20 > then be built on top of these foundations.=C2=A0 Users could mix and matc= h=20 > the use of applications based on the control manager within the=20 > existing rio environment, and the existing command line / rio=20 > applications such as acme would work unmodified with the new window=20 > manager but have "modern" title bars and some sort of "minimize" and=20 > possibly "full screen" functionality, maybe with a dock of some kind. > > > As far as I can tell this would require practically zero core changes=20 > to the system as it is built entirely on existing primitives already=20 > offered. > > > On 1/27/22 9:03 PM, ibrahim via 9fans wrote: > I developed a kiosk version of plan9 (based on 9front and legacy9) and=20 > am about to develop a single user desktop system. Those can coexist=20 > with the existing plan9 system. > > I named the new service targets kiosk and desktop. Both work without=20 > rio. > > Currently I used initdraw, initmouse, initkeyboard, loadimage,=20 > flushimage from devdraw to avoid breaking of compatibility with the=20 > existing plan9 systems while the whole rendering of the windows is=20 > framebuffer based. Instead of the usual plan9 fonts I used regular=20 > truetypefonts. > > So my suggestions would be : > > 1) Define new service targets kiosk and desktop (Currently I do this in=20 > init or /user/.../lib/profile. This makes it possible for a user to=20 > start an alternative window manager or even a single applicaton (kiosk=20 > service) with a modern look and feel. > > 2) Define a layer between vga and devdraw perhaps vgafb which improves=20 > the performance for frame buffer rendered window managers. > > 3) Define events for mouse, keyboard, touchpad, windows which is based=20 > on notes managed by light threads inside the client app. > > Those three steps would protect the existing plan9 from changes and=20 > make it possible to only use the kernel, libraries, tools from=20 > alternative user interfaces. Plan9 is one of the smallest operating=20 > systems accompanied with a compiler and an abstraction which would=20 > attract much more developers and users if it had a modern user=20 > interface. We don't have to throw away anything and rio would even be=20 > able to run inside a window of a modern desktop. > > Plan9 has everything necessary to make it an attractive system not only=20 > for a handful of developers. The compilers, the portability, 9p,=20 > unicode, direct support for video hardware and its small size are=20 > fascinating. > > The only reason why it isn't recognized by more people is its GUI. I=20 > don't get the reason why we wouldn't extent it so we can use other=20 > GUI's while keeping the existing in respect of the developers who=20 > created this system. > > I will integrate this changes but I would prefer staying fully=20 > compatible to the existing projects legacy9 and 9front even more I=20 > would prefer not forking any of them but sharing my parts as=20 > contributions. > > What I need and what those changes need is a separation level between=20 > devdraw and the graphics hardware and a new event mechanism which can=20 > be based on notes or equals. > > I'm not a native English speaker so excuse the many mistakes. > > > *9fans[https://9fans.topicbox.com/latest]* / 9fans / see=20 > discussions[https://9fans.topicbox.com/groups/9fans] +=20 > participants[https://9fans.topicbox.com/groups/9fans/members] +=20 > delivery=C2=A0options[https://9fans.topicbox.com/groups/9fans/subscriptio= n]=20 > Permalink[https://9fans.topicbox.com/groups/9fans/T2518f9e4fc10ed03-M54ac= 272859201587addb6b91] ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/T2518f9e4fc10ed03-M9e7ce= a6cac0af336bf4dd3ac Delivery options: https://9fans.topicbox.com/groups/9fans/subscription