Files
shell-rs/packaging/windows/shellrs.iss
T
Xuz f0690fe6b2 在线升级:后台检查、下载并在重启或退出时安装新版本,发布流水线与应用图标
- 新增 update 模块:从 dl.shellrs.com 取已签名的更新清单(minisign,签名绑定通道和版本),
  按大小和 SHA-256 校验安装包;下载可续传、可换镜像,走系统代理
- 按安装方式安装:macOS 整包交换并核对开发者签名,Windows 静默运行安装程序,Linux 覆盖 AppImage;
  开发构建和无法自更新的安装只提示前往下载页
- 设置新增「关于」:版本信息、检查更新、下载进度和「自动检查并下载更新」开关;
  新版本就绪后标题栏右上角提示,更新对话框写明重启会中断什么;退出时自动安装,新版本启动后提示已更新
- 数据库拒绝打开更新版本建的库,迁移已有的库之前先备份成 shellrs.db.v<旧版本>.bak
- 新增 release workflow 和 packaging 脚本:universal macOS 包签名公证、Inno Setup 安装程序、
  AppImage、上传 R2、生成并签名更新清单;新增 CHANGELOG.md
- 应用图标放在 assets/logo;开发模式下 macOS Dock 显示 logo,Windows exe 嵌入图标
- 修正 AppImage 里 shellrs 命令链接到临时挂载点;启动时刷新已安装但过期的 Agent skill
- 新增清单、验签、下载、各平台安装器和界面的单元测试与 UI 测试
2026-10-01 12:33:01 +08:00

74 lines
2.6 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
; The Windows setup program: installs ShellRS for the current user, with no
; administrator rights, under %LOCALAPPDATA%\Programs\ShellRS.
;
; iscc /DAppVersion=0.2.0 /DBuildDir=..\..\target\release /O..\..\dist shellrs.iss
;
; The same program updates an installed copy: ShellRS downloads the next
; version's setup and runs it with /VERYSILENT /SUPPRESSMSGBOXES /NORESTART
; /SP- once it has exited, then starts itself again. AppId must never
; change, or the update installs a second copy beside the first.
#ifndef AppVersion
#error Pass /DAppVersion=<version>
#endif
#ifndef BuildDir
#define BuildDir "..\..\target\release"
#endif
#define IconFile AddBackslash(SourcePath) + "..\..\assets\logo\shellrs.ico"
[Setup]
AppId={{45D9E9F5-84BB-4B09-ABE8-1FFE107ACF96}
AppName=ShellRS
AppVersion={#AppVersion}
AppVerName=ShellRS {#AppVersion}
AppPublisher=ShellRS
AppPublisherURL=https://shellrs.com
AppSupportURL=https://shellrs.com
AppUpdatesURL=https://shellrs.com/download
DefaultDirName={autopf}\ShellRS
DisableDirPage=auto
DisableProgramGroupPage=yes
PrivilegesRequired=lowest
ArchitecturesAllowed=x64compatible
ArchitecturesInstallIn64BitMode=x64compatible
OutputBaseFilename=ShellRS-{#AppVersion}-windows-x86_64-setup
Compression=lzma2/max
SolidCompression=yes
WizardStyle=modern
UninstallDisplayIcon={app}\shellrs.exe
UninstallDisplayName=ShellRS
; A running ShellRS is closed through the Restart Manager rather than
; making the setup fail on files in use.
CloseApplications=yes
#if FileExists(IconFile)
SetupIconFile={#IconFile}
#endif
[Languages]
#if FileExists(AddBackslash(CompilerPath) + "Languages\ChineseSimplified.isl")
Name: "chinesesimplified"; MessagesFile: "compiler:Languages\ChineseSimplified.isl"
#else
Name: "english"; MessagesFile: "compiler:Default.isl"
#endif
[Tasks]
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files]
Source: "{#BuildDir}\shellrs.exe"; DestDir: "{app}"; Flags: ignoreversion
; The `shellrs` command: 设置 › 外部 CLI copies it onto the PATH.
Source: "{#BuildDir}\shellrs-cli.exe"; DestDir: "{app}"; Flags: ignoreversion
[Icons]
Name: "{autoprograms}\ShellRS"; Filename: "{app}\shellrs.exe"
Name: "{autodesktop}\ShellRS"; Filename: "{app}\shellrs.exe"; Tasks: desktopicon
[Run]
; Interactive installs only: an update is restarted by ShellRS's own helper,
; which waits for this setup to finish.
Filename: "{app}\shellrs.exe"; Description: "{cm:LaunchProgram,ShellRS}"; Flags: nowait postinstall skipifsilent
[UninstallDelete]
; Files a later version added, which this uninstaller does not list.
Type: filesandordirs; Name: "{app}"