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

相关讨论: 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 端不再支持自定义安装路径和用户

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

1 操作
shuoying 在 2022-10-28 22:21:49 更新了该帖

相关帖子

欢迎来到这里!

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

注册 关于
请输入回帖内容 ...
  • J735591117 1 赞同
    订阅者

    先试试把“工作空间”改成“数据空间”之类的吧。“工作空间”容易引起小白误解。

  • zxy0124 1 赞同
    订阅者

    "工作空间“改为”我的笔记“或者”笔记内容“”笔记数据“等等之类的,明显的区分开来,也不要有误导性。

  • godblessgh 3 赞同
    支持者 订阅者

    设立一个检测机制,检测到工作空间和安装目录冲突,直接不让安装安装按钮那里来个抖动变成红色,冒出一串红色的警告文字提醒用户。这不就结了,好多软件都是这么做的吧。

  • svchord
    捐赠者 订阅者

    不知道这样能不能行:

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

    这样有两个好处:

    1. 更简单易懂地保证路径没问题——只需要对比多个目录路径就好了(包括已选择的目录路径和已存在的工作空间路径),不需要用命令查询安装目录下是否有工作空间目录。
    2. 解决用户看到警告弹窗时产生的警惕心理。
    1 操作
    svchord 在 2022-10-28 15:25:24 更新了该回帖
  • ciwoyipang
    捐赠者 订阅者

    我个人也赞同把工作空间名字先改了,比如改成笔记本库。 然后在首次安装的选择和设置里都加上明确的红字提示。

  • goodboy23
    订阅者

    就选择自定义安装位置不就好了,不要再弄工作空间了,这样不仅同步难受,再自定义设置上也容易误删除。反正可以导出,有多个工作空间需求的,多弄几个笔记本不就好了吗,或者多几个文件夹。。。

  • shadowmooner 1 评论
    订阅者

    用户自己放错工作空间位置和自定义安装路径没啥关联啊。放错工作空间位置,那让他放对不就行了。

    工作空间位置又不是每天都要定义一次
    shadowmooner
  • 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

  • thxnder 1 赞同
    订阅者

    即使不再像以前一样支持,也希望留一个在全新安装时能够自定义安装路径的渠道(比如命令行参数),这样既过滤了相当一部分小白用户,也不会引起对路径敏感的用户的争议。

    1 回复
  • 88250
    订阅者

    这个应该是目前已知的最优解决方案,我们期待有社区开发者能够贡献代码。

  • HowcanoeWang 1 2 赞同
    订阅者

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

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

    1666959159047.png

    1666959198632.jpg

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

    image.png

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

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

  • 1995hanjian
    订阅者

    大佬还是强哇!

  • Diamond
    订阅者

    请问,如果想制作成绿色便携版,应该怎么设置,目前思源支持吗?

    目录结构是

    siyuan 总目录

    1. 思源程序目录
    2. 思源工作空间

    只需要拷贝“siyuan 总目录”到其它地方就能用

    1 回复
  • shuoying 1
    捐赠者 支持者 订阅者 作者

    支持, 不过需要带参数启动内核 + 使用浏览器访问, 下面是步骤

    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 更新了该回帖
  • Diamond 4 评论
    订阅者

    谢谢,这种方式只能使用浏览器访问,不太舒服,因为我在思源笔记里有很多自定义快捷键,浏览器模式访问的时候会出问题,先 mark 一下吧

    试试将页面安装为 PWA 应用
    shuoying
    @shuoying 油管可以安装为 PWA 应用,但是思源笔记在浏览器中安装为 PWA 应用,我搞不定,可否截图展示一下?谢谢
    Diamond
    @Diamond Edge 在右上角菜单里面有个将当前页面添加为应用, 不过我也没测试过是否依旧有些快捷键不生效
    shuoying
    @shuoying 谢谢,参考这个搞好了,https://zhuanlan.zhihu.com/p/59692068
    Diamond
请输入回帖内容 ...