From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from atuin.qyliss.net (localhost [IPv6:::1]) by atuin.qyliss.net (Postfix) with ESMTP id 1802796FF; Thu, 06 Aug 2026 02:50:09 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id 5B4069749; Thu, 06 Aug 2026 02:50:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-26) on atuin.qyliss.net X-Spam-Level: X-Spam-Status: No, score=-0.1 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,DMARC_PASS,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=unavailable autolearn_force=no version=4.0.1 Received: from mail-yx1-xb130.google.com (mail-yx1-xb130.google.com [IPv6:2607:f8b0:4864:20::b130]) by atuin.qyliss.net (Postfix) with ESMTPS id B2F509748 for ; Thu, 06 Aug 2026 02:50:04 +0000 (UTC) Received: by mail-yx1-xb130.google.com with SMTP id 956f58d0204a3-6688dfaed31so2710582d50.3 for ; Wed, 05 Aug 2026 19:50:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1785984603; x=1786589403; darn=spectrum-os.org; h=content-type:in-reply-to:autocrypt:from:content-language:references :cc:to:subject:user-agent:mime-version:date:message-id:from:to:cc :subject:date:message-id:reply-to:content-type; bh=WP7wR7EMXFqrT1b8+tjkn+Lo6crVLkxR5U/vX1cIO1s=; b=M7LTVfw3rO1qDlcbmFjTROhECGbVCcSXK6nLFKTkOWxdMUsbUC6+eo/FY8uFXeOff9 MstYREQwQ3nV/JMaDjjgVbwEN5PPVBw5dJGxqtfrg3+EnhXO8HMYP+JB/Ndlo1inzsTW HFheyV/+oKXHJpTvcFwr93Jar0MlC5UH976FAydCHWqR0G0qCizi+pJSO25DXBf9/IXk Jq4m67xY6+7V2SPX7ek56BUt4DZc5YomKM4SM8QQB3GL7rPTzfZ/vrYg+Y7wXfAlXhrr uprCA9W3OmAo84T0Lo1yolF7K9RLGNJQutYCFa0XO7C7RK0CkJcmpOhzMbkgiAa6Fg2N q1pw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1785984603; x=1786589403; h=content-type:in-reply-to:autocrypt:from:content-language:references :cc:to:subject:user-agent:mime-version:date:message-id:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=WP7wR7EMXFqrT1b8+tjkn+Lo6crVLkxR5U/vX1cIO1s=; b=tRzsO65Hm/wXYsMCUZaTRS8yuFnPzZAHkb2GU1UV3dcvktcu18RCXn5AfnlgowPI5L SNyJ6yhROktK7/ORA/fIEZmjvONVagtLxzbPhDIzzrYac35OOvVUgDbugeoDkMQ2K1MP teE5/fNCRHnq+CZCzAiiB1bLCbrUoqylJ0b9X2lFlelpU+LGU570SiWmZOAO53ZFgk76 Spk7udhs1PzT9Jy6Bn7QLQc/BG+8so1LJlosTafRhzfDfI9aGL5Mfj3kWRl1dXE9LEdq 7NdyvecTMP/2kt36/FYrzxLnivMgYUqP/mvrewPeKcw4QQb3iMMxD1ZKCdZTawE+rfNm GC0w== X-Gm-Message-State: AOJu0Yz63rzR6BVlAea0KrX12eWs2ZDWMaExbaNeEb+zk5vg8DLHBYAl 4vsK6feIfoALwhS458Pm05eZO/hpNBtd8CUHCIepX48Ew5KzFQ7BCQbk X-Gm-Gg: AR+sD11QOW5luF/2bh2k4oTnQ5+yv+ZGt3ZZi5W1hyVOu0muNfduETDDNKhF5G5l4Mp 4OqY9BDFN5t22+Na+/svc6nuIc5qIN158Tg+L0PprXdSX2sY4RpUOfrK/0FFl7SikPTKZzH0u3E DYwd8/GOgMKAT77lSeNzHAkVjGaAibN5v9uiNVzmrHRvm4J1iDteN3DvU9HQkHlg8LxmVELW8TR zy7UKY1iT45laKPaUU+4Evf4CLoG13GvM5PxZtpa631OuOaAOBIRNNqIhim9IVdqllaWxgg5qpa BEF0VCt4h01Bigz1/6Kz/cWdueP4/oKdp5P+88zS2LNdsteFmuKPIF1K3u35uuWQ22AR4svJiv8 D7v1q5o4tyTGcxEpjX+uhG/Qq97Wxue/QbGkOeMKoORHbUTDWW5F49QED0Yml/RJlJhEfjyzdxG okYB6R+x2SXvZtn5vlW2Q3LyHwGH0lVFXBNvtBGUpKBICAgv5TTKomYF6GXEwHRXs= X-Received: by 2002:a53:e052:0:b0:664:ed6f:4eb1 with SMTP id 956f58d0204a3-6699a9d55bamr5421299d50.16.1785984603102; Wed, 05 Aug 2026 19:50:03 -0700 (PDT) Received: from [10.138.10.6] ([185.98.168.14]) by smtp.gmail.com with ESMTPSA id 956f58d0204a3-66991642703sm4158737d50.17.2026.08.05.19.50.01 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 05 Aug 2026 19:50:02 -0700 (PDT) Message-ID: <4f49473e-a2a1-48a8-acb9-5237fdaac648@gmail.com> Date: Wed, 5 Aug 2026 22:49:57 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: UX: Initial use cases & actions To: =?UTF-8?Q?Vaida_Plankyt=C4=97?= , Alyssa Ross References: <87cxw43fht.fsf@alyssa.is> Content-Language: en-US From: Demi Marie Obenour Autocrypt: addr=demiobenour@gmail.com; keydata= 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 +MYSfkEjBz0E8CLOcAw7JIwAaeBT In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="------------qBEOPfH19PE3f0X4akP1y0Hj" Message-ID-Hash: JD2LZ3EC6NTWBHE3EWU7WY4M54BSRZV6 X-Message-ID-Hash: JD2LZ3EC6NTWBHE3EWU7WY4M54BSRZV6 X-MailFrom: demiobenour@gmail.com X-Mailman-Rule-Hits: member-moderation X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-devel.spectrum-os.org-0; header-match-devel.spectrum-os.org-1; header-match-devel.spectrum-os.org-2; header-match-devel.spectrum-os.org-3; header-match-devel.spectrum-os.org-4; emergency CC: devel@spectrum-os.org X-Mailman-Version: 3.3.10 Precedence: list List-Id: Patches and low-level development discussion Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------qBEOPfH19PE3f0X4akP1y0Hj Content-Type: multipart/mixed; boundary="------------0r0QkKmC0o209wnfVwQgrj61"; protected-headers="v1"; hp="clear" Message-ID: <4f49473e-a2a1-48a8-acb9-5237fdaac648@gmail.com> Date: Wed, 5 Aug 2026 22:49:57 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: UX: Initial use cases & actions To: =?UTF-8?Q?Vaida_Plankyt=C4=97?= , Alyssa Ross Cc: devel@spectrum-os.org References: <87cxw43fht.fsf@alyssa.is> Content-Language: en-US From: Demi Marie Obenour Autocrypt: addr=demiobenour@gmail.com; keydata= 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 +MYSfkEjBz0E8CLOcAw7JIwAaeBT In-Reply-To: --------------0r0QkKmC0o209wnfVwQgrj61 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 8/5/26 07:23, Vaida Plankyt=C4=97 wrote: > On Thu, Jul 30, 2026 at 12:04=E2=80=AFPM Alyssa Ross wro= te: >> >> Vaida Plankyt=C4=97 writes: >> >>> Sharing some initial key use cases & potential design approaches, so >>> as to move these conversations into the public sphere and get some >>> feedback! >>> >>> I've consciously abstracted away from describing UI, such as how VMs >>> are differentiated visually, user-facing naming of entities and >>> actions, or where actions are located in the UI. There's some ideas >>> being explored around this, but I thought I'd be good to share the >>> high-level thinking first and get people's feedback. The aim is to >>> address key usage scenarios in a user-friendly and flexible way >>> (easier said than done). >>> >>> I'd be most curious to hear if there are obvious usage scenarios that= >>> y'all think should be included as part of this MVP design. One I'm >>> thinking through is whether the user needs the ability to Duplicate a= >>> Persistent or Non-Persistent VM. >>> >>> UC1: Non-Persistent VM for one-off use >>> * AKA "I want to always launch a fresh instance of this app", e.g. To= r Browser >>> * Opening the base app would open a Non-Persistent VM as a default >>> * When closed, VM is discarded>>> >>> UC2: Persistent VM for continuous use>>> * AKA "I want to continuousl= y use an instance and have changes >>> persist", e.g. Signal >>> * "Make Persistent" action on a Non-Persistent VM changes it to >>> Persistent: this happens in-place, i.e. there is only one VM, a >>> Persistent one, as a result of this action >>> * Autosaving a Persistent VM would be a lot friendlier to the user >>> than requiring confirm-on-close or manual snapshotting >>> * When closed, VM persists >>> >>> UC3: Non-Persistent VM based on a Persistent VM, for reproducible set= up >>> * AKA "I want to set up an app with my preferences, and open one-off >>> instances based on this setup for specific situations", e.g. document= >>> viewer >>> * "Create Non-Persistent" action on Persistent VMs; this allows for >>> templating-style functionality: a Non-Persistent VM is spawned off, >>> and is treated as completely separate >>> * When closed, Non-Persistent VM is discarded, while Persistent VM pe= rsists In Qubes OS (https://qubes-os.org): - UC2 is a template-based VM or (much more rarely) a standalone VM. - UC1 is a disposable VM template that has a blank (zeroed) private volum= e. - UC3 is a disposable VM template that has a non-blank private volume. Qubes OS has supported this since its very first public commit in 2010, so I think it would be very helpful to see what insights the Qubes OS community has to offer. >> If I have a persistent "My Configured Document Viewer" configuration*,= >> do I choose "Create Non-Persistent" once, and then I have a separate >> icon or whatever to click every time I want the non-persistent version= , >> or do I click something like "Run Non-Persistent" every time I want to= >> do that? In the former scenario, my new "My Configured Document Viewe= r >> (non-persistent)" configuration will be out of date as soon as I chang= e >> more configuration in the "template", so I'd probably end up wanting t= o >> delete it and create it again from the template, which sounds pretty >> inconvenient. In the latter scenario, that's not a concern, but it >> might be easier to mistakenly end up running a persistent instance whe= n >> I meant to run a non-persistent one. >=20 > I was indeed suggesting the latter: you'd essentially use either the > base app or a persistent instance as an entry point for running a new > non-persistent instance; that instance could then gain an icon for the > length of its lifecycle, until it is closed. So non-persistent > instances are created "on-demand", which avoids the issue you describe > of a separate non-persistent launcher getting out of sync from the > persistent template. I imagine the lifecycle of a non-persistent VM > spans a few seconds (quickly checking out a document) to a few hours > (more involved work/browsing), but not beyond that, so there's no need > to support a "rebase" on a template either. What happens if you click on the "run non-persistent instance" icon twice? Should you launch the application again in the same instance, or should you get a second non-persistent instance? Qubes OS does the latter, which is also what I recommend. That prevents two different websites or files one opens from tampering with each other. Qubes OS also has "named disposables", which have the former behavior. That shows that both behaviors have uses. However, in Qubes OS named disposables are used much less often than automatically-created disposable VMs. >> To me, the latter scenario would >> be the ideal one, but we'd need to be confident our specific design >> mitigated that dangerous potential confusion. >=20 > Yes, it's key to distinguish clearly when you're running one type or > the other, and also have default actions that mitigate confusion! Indeed so! In Qubes OS, opening the disposable VM template (base app) when one wanted to open an application in a new disposable VM is a common mistake. > For visual distinguishing between persistent/non-persistent, we could u= se: >=20 > - App icon outline and window borders (e.g solid vs dashed/dotted) > - Icons/labels in the app navbar, indicating the type of instance > - Naming (custom naming, but also automatic pre- or suffix indicating t= ype) > - Colour - probably not? Seems better suited for theming persistent > VMs for different contexts. Though we could make non-persistent VMs a > paler version of persistent ones Solid vs dashed/dotted seems like a good idea to me. > Regarding default actions: >=20 > It seems use cases where you'd want to primarily use a persistent or a > non-persistent VM are both equally likely. We could allow for a user > setting on a persistent VM that determines whether the persistent > version, or a non-persistent new instance based on it, are launched by > default; both actions would still be available as secondary actions > (i.e. right-click options menu). This would be convenient and avoid > users that almost always want a non-persistent to not have to always > right-click to access the option on a persistent. The downside is in > having different default behaviour across VMs, but if we visually > distinguish well between different types, then maybe having a default > behaviour dictated by the user for that instance's use case is less > risky? I think so. I expect opening base app to be fairly rare. I'd be fine with requiring the user to confirm that this is what they want, and possibly defaulting to the base app having no network access. Changing settings might well not need it. > We could also ensure sensible defaults for this. Making persistent VMs > start with this setting set to "launch a non-persistent instance", if > we feel this would be safer than the other way around? Cognitively, > having to go into the options menu to access the action of opening the > persistent instance itself rather than it being the default action > isn't too bad, as it's equivalent to "i'm editing the settings of a > template". Users that want to always launch it as persistent can just > switch it to the alternate behaviour. This is quite similar to the =E2=80=9Cprivate=E2=80=9D/=E2=80=9Cincognito= =E2=80=9D/=E2=80=9CInPrivate=E2=80=9D features of various browsers, except that those features save downloaded files and passwords. However, password management and downloaded files should ideally be system-wide in Spectrum, meaning that those, too, would= be saved. I don't think we want to reuse the terminology, though. >> * configuration? instance? I wish we had a better name for these thing= s, >> even if it's agreed that it's not necessarily what we end up calling= >> it to users. >=20 > Agreed. I'm almost keen to just use "VM" internally because it's so > much shorter to write, and explanations often end up mentioning the > term as well as "persistent"/"non-persistent" several times a line, so > it's a big space/cognitive saver. But maybe that says something about > how user-facing terms, that'll appear in docs in potentially equally > extensive explanations, should also be short and snappy. "Base app", > "saved app" and "one-off app" or something. Qubes OS uses "Disposable VM". What about "Disposable app"? >> Overall these use cases sound right to me. We should bring them up ne= xt >> time we have some community call or community something else to get mo= re >> input, though! >=20 > Absolutely! Indeed so! --=20 Sincerely, Demi Marie Obenour (she/her/hers) --------------0r0QkKmC0o209wnfVwQgrj61-- --------------qBEOPfH19PE3f0X4akP1y0Hj Content-Type: application/pgp-signature; name="OpenPGP_signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="OpenPGP_signature.asc" -----BEGIN PGP SIGNATURE----- iQIzBAEBCgAdFiEEopQtqVJW1aeuo9/sszaHOrMp8lMFAmpz9lYACgkQszaHOrMp 8lNCPQ/+JkFXQ4N0FxC6oyWlWuYjgrmfU7SaQdrj+6PLFZefAkMXm4Jnf76sPoah BgiiJHTaKbIqX+JdClCwNMbu2NWzsPtFTnyIrnb62DJwiBVpqDywYnMoNdYbQErK ocK3SHDQlQMwi1rQ/OJRuwYKB6erTdJBJ07LBBoIykxAM4Z2yhzykLDipLph4Gcu 4hv1L2h7WSoOT80oizSMGQvjcoqsu+sJs55QAChMHtjsAo9U8sWIg2kT0zli1m2A 4MiVAd44PAPgeXJ2Ca629qcu5eCyy6vfOyQIHmZKgHjwhcqUInNSLKpTqyBwZ5W+ 7EKkBCeG+JXzcXsxMRVCskX/emyXcjV6eduACK+8hXTPaoF8ywMF0lrky2sMX/p6 DqxnmOh6esW/lXiC9yAgzK54WMxgSLPR0OuWDlF/gmdbr8wvk/r8RvJOnyRX1Jij /YL+EJ8MwdDusnqMMbnUUgFQNP9Yh4gH2tgJfmMslOYgwdLCbzn/KL24R/ATdVLM F8rjCix7+I6J1PPr2QdRc4xAXEg4oUs6iZ/rTGpJhQNRXMTTCnZUPQA0WqIwYgyU e7EdFnYq5+9qCIb+CQ2yBaSKWAnYZ94afLyYWhNdR08q31h2JmrZ6VvhiXtPjgAr 5utRwdW99m1xkS4/YG/vZxKAKPbI2+tMXTVccGUGOK+Hpk5i89s= =DB/h -----END PGP SIGNATURE----- --------------qBEOPfH19PE3f0X4akP1y0Hj--