[投票] 关于 Windows 端不再支持安装 / 更新时自定义安装路径和用户

本贴最后更新于 665 天前,其中的信息可能已经时移俗易

相关讨论: Windows 端不再支持安装时选择安装路径和用户 · Issue #6385 · siyuan-note/siyuan

前情提要

  • 目前在用户创建/更改工作空间时会阻止用户将 工作空间 设置在 安装目录 下层, 但是无法避免用户将 安装目录 设置在工作 空间上层
  • 目前有用户在更新应用时会将 安装目录 设置在 工作空间 的上层目录中, 从而导致 安装目录工作空间 一块被覆盖了, 目前需要解决该问题

争议

D 大打算直接取消安装程序的 自定义安装路径 功能, 用户没法自定义安装目录, 那么就无法将 安装目录 设置在 工作空间 上层, 但我认为这是因噎废食的做法

我提出了如下方案:

  • 在安装时判断 安装目录 下级是否有 工作空间 (基于 NSIS 的 IfFileExists 命令使用通配符检测安装目录下是否存在工作空间)
  • 如果检测到安装目录下存在工作空间, 则阻止安装并弹窗警告, 提示用户更换安装目录
  • 如果未检测到安装目录下存在工作空间, 则正常安装

但是我的方案被否决了, 希望大家在投票后也说一下自己的想法

替代方案(已采纳)

REF: 调整 Windows 安装程序打包选项 · Issue #6390 · siyuan-note/siyuan

  • 直接安装(双击运行安装程序)
    • 初次安装
      • 用户可选为当前用户安装/为所有用户安装(需要管理员权限)
      • 用户无法自定义安装目录
        • 为当前用户安装默认安装目录为 C:\Users\<用户名>\AppData\Local\Programs\SiYuan
        • 为所有用户安装默认安装目录为 C:\Program Files\SiYuan
    • 覆盖安装(更新)
      • 用户可选为当前用户安装/为所有用户安装(需要管理员权限)
      • 用户无法自定义安装目录
        • 默认安装目录为原安装目录
  • 带参数安装(使用命令行带参运行安装程序)
    • 带参数 /D 自定义安装目录(初次安装/覆盖安装均适用)
      • 示例: 将安装包 siyuan-2.4.8-win.exe 安装至 D:\Program Files\SiYuan 目录
        • ./siyuan-2.4.8-win /D="D:\Program Files\SiYuan"

这样应该能比较兼顾大家的需求啦 🎉~

Windows 端不再支持自定义安装路径和用户

单选 公开 永不结束 103 票
同意
8% 9 票
反对
91% 94 票

  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    23020 引用 • 92599 回帖
2 操作
shuoying 在 2023-02-26 19:34:02 更新了该帖
shuoying 在 2022-10-28 22:21:49 更新了该帖

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • svchord

    不知道这样能不能行:

    安装的第一步选择安装目录,第二步选择工作空间目录(该步骤可以勾选已存在的工作空间),然后如果工作空间目录在安装目录下,就无法点击下一步,并在安装页面上显示红色提示(而不是弹窗)。

    这样有两个好处:

    1. 更简单易懂地保证路径没问题——只需要对比多个目录路径就好了(包括已选择的目录路径和已存在的工作空间路径),不需要用命令查询安装目录下是否有工作空间目录。
    2. 解决用户看到警告弹窗时产生的警惕心理。
    1 操作
    svchord 在 2022-10-28 15:25:24 更新了该回帖
  • 其他回帖
  • 支持, 不过需要带参数启动内核 + 使用浏览器访问, 下面是步骤

    1. 思源程序目录 只需要复制安装目录下的 resources 文件夹
    2. siyuan 中写入如下脚本 start.ps1
      ./resources/kernel/SiYuan-Kernel `
          --wd './resources' ` # 资源文件目录(绝对路径/相对于脚本所在目录的相对路径)
          --workspace './workspace' ` # 工作空间路径(绝对路径/相对于脚本所在目录的相对路径)
          --port '80' ` # 自定义端口号
      

    便携版的目录结构:

    + siyuan
      + resources
      + workspace
      + start.ps1
    
    1 回复
    2 操作
    shuoying 在 2022-10-29 16:28:43 更新了该回帖
    shuoying 在 2022-10-29 16:23:56 更新了该回帖
  • Nofood 3 2 赞同

    目前工作空间是不允许设置在安装目录下的,而初次使用要在安装后才能设置工作空间。同样不能设置在安装目录下。

    image.png

    而重装默认的是上次安装目录。除非用户自己改了路径到工作空间下。

    image.png

    为了验证“安装路径选择不当导致数据被清除”,我重新安装了思源(v2.4.7,操作系统:win10 22H2)。


    第一次重装路径:工作空间。SiYuandata 在同一级的,data 里数据完好。

    image.png

    第二次重装路径:工作空间\data,第一次重装的 SiYuan 被清空。在 data 下产生了一个新的 SiYuan,其他文件夹完好。

    image.png

    image.png


    系统只会清除 SiYuan 文件夹,验证的结果不管是在工作空间还是在 data 里安装,都不会使 SiYuan 之外的文件被删除。而工作空间又不允许设置在 SiYuan 里。

    那么,要如何操作才能使 20220910215245-br3z4jh 之类的笔记文件进入 SiYuan 而在重装时被删除?。

    如果以前的版本有设置工作空间的漏洞。现在没有了,为啥还要改呢?

    所以,我反对“不支持自定义安装路径”。部分用户的误操作不能让全体用户来接受吧

    讲句不好听的,签合同不细看,也是翻到最后就落款?

    都是被某某某全家桶教育过的人,怎么敢狂按下一步下一步?⚠️ 警告要多“醒目”才算醒目呢?

    image.png

  • HowcanoeWang 1 2 赞同

    参考一下为知笔记的安装逻辑:

    安装的时候只能选择安装目录。

    1666959159047.png

    1666959198632.jpg

    然后用户想要自定义数据路径,需要在设置里手动设置,并且可以额外增加判断,确保不是在安装路径下

    image.png

    工作空间 改成 用户笔记数据 这种直观的,别给友商起名字带偏了(workspace 是吧),纯云笔记根本没有担心用户的数据存放地点的烦恼

    一开始给一个默认路径方便软件启动,然后用户需要的时候再修改迁移(退出时复制所有笔记,复制完毕后将之前的数据路径移动到回收站内而不是就地删除)

  • 查看全部回帖