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 BDFE4454E; Thu, 16 Jul 2026 16:10:04 +0000 (UTC) Received: by atuin.qyliss.net (Postfix, from userid 993) id 5FA20452D; Thu, 16 Jul 2026 16:10:02 +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-pg1-x536.google.com (mail-pg1-x536.google.com [IPv6:2607:f8b0:4864:20::536]) by atuin.qyliss.net (Postfix) with ESMTPS id 36413452A for ; Thu, 16 Jul 2026 16:10:01 +0000 (UTC) Received: by mail-pg1-x536.google.com with SMTP id 41be03b00d2f7-c9d1fff21edso4470925a12.1 for ; Thu, 16 Jul 2026 09:10:00 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1784218199; cv=none; d=google.com; s=arc-20260327; b=RBNypolUK+BSULqSZd+1pP6MnmSHTK7R0oG9KDcq2swYpM/GI5iuiyGpsjjBVwuHmn KOmT0YuhKLfdEcHn986tZE7t2Pp0VNTxmhVzQ0QeRgILRfBobE24FtPojfUhwzzg4vhe UUYA6I68rojJbqbVndFYPnCUIXXbUPMzZxhn+v8rpdiehJtM4RkGaVPiolsUX/YWomSu Htt2wRDdffd+FG4p/yFSsJ/3i6ufa6IyvmQLylbvTmEZlL+4SLJUSsh4RcfLCi68Mik4 p32X3joubfN9U+zJYxYi2ZjzcnLYZuCn0AuTMQgoB3n+Nlcib/OyacCcovcKUamSH/tx SOgA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=to:subject:message-id:date:from:mime-version:dkim-signature; bh=vw/0HuCBDi90kI3Gys6ZdTCHM4kejC+9HX1Ym0SEwac=; fh=Tf2h2ZkHXbDIrBriR51sMipTGBy9BMVRTGWNKVEjb7U=; b=V7FYF/tmmXl7c7uK37gMdMljVM953M5UJpzsYI2LKzugrVOIHu+yMHtcRvBTKN7wfu aXm6Zk5+Ew1rco78MHpNP+w2xBxoMCrVAbEydy+APADek/X6nCi7ekFyOO/N1y+3hc6Y jneTJwtCXmbRUdek5kWXo9DiRS6miJ1H4zvMy685ZDHHzcXE8+2W8g8B7M9WArG5n/yq gQIPM+CK5JZ07JSwKWNkD8fVV/21tKUEd2f+ii48iMcc28Ir3AvmVPJCdLJRgtaNzDuQ F0lmEXU9u/T/BXMPIVSQ967MLLIzACRlB1sKYgoF7dFK77EFeks4ry8aOSzJv57P2b61 Qtig==; darn=spectrum-os.org ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1784218199; x=1784822999; darn=spectrum-os.org; h=content-type:to:subject:message-id:date:from:mime-version:from:to :cc:subject:date:message-id:reply-to:content-type; bh=vw/0HuCBDi90kI3Gys6ZdTCHM4kejC+9HX1Ym0SEwac=; b=MKRNCPUzGpNq+uHpKiHeHtTRk7iIyc3PqKHN5LCAktqAq6KqPedm4m2pnyN5ZDVzZl i729+8pkEm6sZtH+5MFEpSt6cnI4/Io25Dt9WxxEJnlPT1fbQiYGkw7Hg3HENtq6YKMA bSgdJLTutyVKi5ke2WcHett0QT8H5J0RhA/Vqx7jHDMPfEuK1fzDJNF0gYMxq7QiAjMQ 4o5ekpibE49ojs7wzRPbb8JO0ADbKM/id1BZtLjZzPsL3AyXskQoKF0hlei4Fd2eqJbD GxZ+1b6GlTq4cnayw1jKCsnOwlwoxe1KsTtn9XahgMG5UXNJIWjnFjlUhcpEYG+XOx0K OatA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784218199; x=1784822999; h=content-type:to:subject:message-id:date:from:mime-version:x-gm-gg :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to :content-type; bh=vw/0HuCBDi90kI3Gys6ZdTCHM4kejC+9HX1Ym0SEwac=; b=XgEHCbDXoMmJ3DdQsUp90+YbSRacA/igBabXarUvTxU8ZLa8XQZqPwsBs5BEOnAejq Urt6CE3HgB2GIVSdCc57LGmldMuT1iZMdHxZYMlTMe3vM0SRCde+iCAXb47e90lUwe2N liZwws95tZyVrYf1n3+Qg+E5QXSqaE82O6fdSGYtGUKb7Cr/B3VyvHmpz6GBlkkId2Hg SLyuO3d68IJBlOLcros33q6KzhvkRDp4BY/BAaRW9m7WKfzVKBzkruUqXGM87TM4lI/u DCyR4hAsc5mLcYD25lZfcSyAAUvrIiRa+szm0pH1xc8q3Em5NFUtb04Sav/U/Q76je+6 4Jtg== X-Gm-Message-State: AOJu0YzSu0EZj7xA3z+VMosh4Q8WRgNWdH6L2UhChOyND7X42eQwtUXE DPjSITM6MADj5lIwtrVpNujSds+T563aA19RYBXJj6X+S0A6F5S7NgY/Wuz3GAEfl2QKejRAHd4 slaqpeoybo/kVK9+LnrVI9IAHDHh99/r+mvGB X-Gm-Gg: AfdE7cmGy5AiVayhXUGaWoUyT+DZDDz+QTOtDBCoqo5G1ZH2whV9GedXmOD/Iw1ZMKi heaV+mkedKyL4Za9ppQ+jwNe/k9hLin9EHlL9zKAGH7qbhZ9CbHNt/ipYgcklFh856+SXy2PjJa vYLV8ZNP5YXmImKlz6dLMxPFTfIqscY6huD6m+VzhVwGzv5bZQ6S+aUbQrq0d1gb8hIEfHE2ZyE e2Z7ZVts3q/XmsxCWsowJIU0/W2OJUnD/sUPL4dgwfCh5hFHQh6VqNphPE4tZ01dh8gNnLdTwSW 5aDlXJ6qvKXDrjia X-Received: by 2002:a05:6a21:7986:b0:3c3:652c:664e with SMTP id adf61e73a8af0-3c3652c7f34mr8929270637.69.1784218198911; Thu, 16 Jul 2026 09:09:58 -0700 (PDT) MIME-Version: 1.0 From: =?UTF-8?Q?Vaida_Plankyt=C4=97?= Date: Thu, 16 Jul 2026 17:09:21 +0100 X-Gm-Features: AUfX_myOIg_31yhg_XQi30WzSeHTom8-8OCdS76NC0txNxLHwf4dtP1MtGIstmY Message-ID: Subject: UX: Initial use cases & actions To: devel@spectrum-os.org Content-Type: text/plain; charset="UTF-8" Message-ID-Hash: LTELI2I4PYNUXBSIY27UPK4CMBVL44JG X-Message-ID-Hash: LTELI2I4PYNUXBSIY27UPK4CMBVL44JG X-MailFrom: vaidaplankyte@gmail.com 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; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header 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: 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. Tor 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 continuously 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 setup * 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 persists