给新电脑自动安装软件

2018-09-01 09:36:56 +08:00
 geelaw

在 Windows 上正统的做法一般是用 sysprep 准备一个带软件的操作系统。然而作为消费级别的应用,这样实在是太麻烦了,此外 sysprep 不能直接安装好最新版本的软件——要么准备好固定版本的,要么使用一段代码来安装软件。

总之,对于个人用户来说,我建立了一个(我)常用的软件安装脚本。

GitHub 直达:GeeLaw/PowerShellThingies/scripts/Install-Apps

脚本分两部分:

安装是全自动的,步骤基本上是:找出最新的版本(可能有爬虫)、下载最新的版本、安装最新的版本。每一步都带有查错,如果失败,将会打开对应软件的网址并提示用户自己纠正安装。

每个软件的安装方式?

7-Zip:先下载官方下载页面,找出版本号最高的,然后下载 64 位 MSI,然后用 msiexec 只显示进度条地安装。

Node.js:先下载官方的发行版列表,找出最高版本号的 LTS 版本,然后下载 64 位 MSI。

Git for Windows:先访问官方下载页面,找出当前版本的安装器,下载之后用 Inno Setup 的命令行,只显示进度条、不可撤销地安装。注意 Git for Windows 有一些配置参数,这些配置的情况是:创建文件关联和上下文菜单、桌面上创建快捷方式、自动更新、安装 LFS、使用 Vim、在 Command Prompt 里使用 git、使用 OpenSSH 和 Windows 的证书管理、不要自动做 CRLF 转换、使用 MinTTY 打开 Bash、使用凭据管理器、不用软链接。

iTunes:访问 Apple 的一个地址,直接得到安装器。安装器的参数格式和 msiexec 一样(内部就是 MSI )。

Image Composite Editor:访问下载页然后下载 MSI。

MiKTeX:这个最复杂,最后说。

Visual Studio Code:访问 Microsoft 的一个地址,得到安装器,也是 Inno Setup。安装选项:桌面快捷方式、文件和目录上下文菜单、文件关联、PATH、不要自动启动 Code。

ILSpy:访问 GitHub 的 latest release 页面,得到下载地址并下载,然后解压缩到 Documents。


回过头来说 MiKTeX:

  1. 访问一个地址,得到安装工具;
  2. 解压缩,得到安装工具的 exe ;
  3. 用安装工具下载 basic packages 到本地;
  4. 用安装工具从本地下载结果安装;
  5. 修复这个安装工具产生的一些错误,并安装 cm-super,然后补充安装的大小信息到注册表。

其中安装器产生的错误包括:

  1. 在“添加或删除程序”里,你看不到 MiKTeX 的图标(有这一项,但图标是不正确的)
  2. 在“添加或删除程序”里,点卸载会出错(因为卸载器和普通的安装方式的卸载器不一样,所以我写了一个新的卸载器并替换掉了)

安装 cm-super 是因为这个包可以让某些情况下排版的 PDF 变回高清的(没这个包时有时会有 rasterization 从而放大后走样),但是排版这些文件的时候不会自动要求安装这个包。采用这个脚本可以省去忘记安装的麻烦。


在幸运的情况下,只要启动脚本即可自动完成所有(我)需要的软件的自动安装。但是我最近一次尝试似乎没能成功安装 iTunes,是 iTunes 自己的偶然错误(因为我在其他电脑上成功了,且后来自己一句一句跑这个脚本也成功了)。

同一个仓库里的小甜点:在 OOBE (初始化电脑)之后帮你改变计算机名、更改注册信息、改变不活动标题栏的颜色(我用灰色而不是默认的惨白)、卸载不必要的 Windows 应用商店应用、更新 PowerShell 帮助文档。

6336 次点击
所在节点    分享创造
15 条回复
kingcos
2018-09-01 09:47:58 +08:00
…不错。之前换电脑也是麻烦的要死,相比还是 Mac 容易些吧,大部分软件只需要移动到 Applications。之前简单写了个用 brew cask 安装的 Shell 脚本。不过配置的方案因为之前就没怎么配置过就没写脚本,有空看下怎么自动化写入每个软件的配置…

https://github.com/kingcos/EZconfigs
verrickt
2018-09-01 10:21:07 +08:00
这些传统应用都可以用 chocolate 装吧。
倒是 UWP 之类的要从商店手动下载,麻烦的要死
greed1is9good
2018-09-01 10:53:31 +08:00
然而最新版真的好吗。。。
zc666
2018-09-01 11:30:57 +08:00
哇,这个项目可以的,给楼主点个大大的赞👍
43QYK2JU
2018-09-01 12:29:49 +08:00
楼主忘了一大堆 RTE 了……
shutongxinq
2018-09-01 12:31:00 +08:00
贵系居然还有人用 windows...不如直接装个 steam 一了百了。
looseChen
2018-09-01 12:48:22 +08:00
喜欢 个人强迫症 windows 系列每隔一段时间就想重装系统 每次都得花费一天时间去折腾软件
cchange
2018-09-01 13:22:36 +08:00
多谢 这些很有意义

同时建议尝试虚拟机。
daigouspy
2018-09-01 13:25:08 +08:00
域管理是最方便的
sammo
2018-09-01 13:31:11 +08:00
每隔一段时间就重装系统,是个好习惯阿!只抹掉系统盘,不抹掉其他分区
ysc3839
2018-09-01 14:00:24 +08:00
关于“不活动标题栏的颜色”,我觉得改成 0xffcccccc 会更好,0xff666666 感觉太深了。
geelaw
2018-09-01 21:14:31 +08:00
@greed1is9good #3 都是最新的稳定版,没什么不好的吧。

@43QYK2JU #5 安装 redistributable 是每个软件自己的责任(不过手动安装 Visual Studio 的时候似乎也会带着?)。

@shutongxinq #6 我并不是贵系的。而且无论是贵系还是我系,主流操作系统仍然是 Windows。

@looseChen #7 我倒不是这个原因,我是因为之前安装了一个乱七八糟的软件,最近打算重装一下。

@cchange #8 虚拟机和这个的关系是?

@daigouspy #9 然而个人管理一个域的成本太高了(逃)

@sammo #10 不是一个好习惯,见我的上上上个回复。

#0 此外我忘了说,在安装单用户 Visual Studio Code 之后,会改变当前用户 Git 默认编辑器为 Code。
skschema
2018-09-02 20:32:59 +08:00
感觉回到了 jujumao 论坛一开始做装机软件
ps1aniuge
2018-09-03 21:53:43 +08:00
快使用 ps1 哼哼哈嘿
现在练 ps1 『强』『简』死你
ps1 好能耐 win,linux 不败
屠龙刀手中提 win,linux 无敌
20015jjw
2018-09-04 08:13:31 +08:00
看着不错
但是呢
装这么多乱七八糟的软件有啥用
Windows 只需要 steam origin uplay discord 就够了啊..(滑稽

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/485106

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX