专栏首页liuchengxu重建 macOS 使用与开发环境

重建 macOS 使用与开发环境

近来由于mac出了点小问题一直没有解决,加上用了已经有好长一段时间,一直想清理一下(精神洁癖作祟),所幸重装了事。没有使用TimeMachine,所以需要先行将一些觉得尚有价值的文件拷贝下来。

写下这篇文章,也是为了以后再次遇到问题能够有章可循,不至于胡乱一通重装。本文放在 gist 上,如有后续也会持续更新,也欢迎大家分享更好的经验。

重装macOS

在线恢复系统实在太慢,进行在windows下制作macU盘启动盘重装系统. 额外所需的物理设备为U盘一个,8G及以上为宜。(如果您的 mac 仍可正常使用,并打算重装系统的话,建议在 app store 中下载镜像并制作启动U盘,会省去很多麻烦。网上有很多指引,这里不在赘述。)

1. 准备软件与镜像

  • 下载软件TransMac TransMac官网下载地址,有15天试用期。
  • 下载镜像文件 如果身边有mac, 可以直接从app store进行下载,如果没有也可以自行搜索从网盘进行下载。这里是我使用的镜像文件: 链接: https://pan.baidu.com/s/1eRXmcMI 密码: s5u6. 版本不重要,安装成功以后更新即可。

2. 制作mac的U盘启动盘

  1. 将U盘接入电脑,打开TransMac,在左侧窗口找到U盘。
  2. 将U盘格式化为Mac下的格式:选中U盘 >> 右键选择 Format Disk for Mac。以前版本的TransMac可能在这个时候还会出现一些选项让你进行选择,现在的最新版本已经没有了。
  3. 格式化完成后,选中U盘 >> 右键选择Restore with Disk Image选项,选择刚刚下载的macOS镜像文件(.dmg).
  4. 时间可能会有点久,耐心等待TransMac将镜像文件写入U盘。大概需要20分钟。

3. 使用制作好的U盘安装macOS

  1. 将制作好的U盘接入mac并启动,按住option键,系统显示可用启动盘后选择U盘并进入。
  2. 选择Install OS X,接下来的操作都很简单,一看就知道怎么做。
  3. 耐心等待安装完成。

注意事项!!! 在革命即将取得胜利的时候,很可能会遇到这样的问题:

安装 OS X Yosemite”应用程序副本不能验证,可能下载过程中有损坏之类的问题出现导致安装终止。

这个问题导致我重装两次失败,浪费了很多时间,最后在v2ex发帖有位朋友给出了知乎的链接: 打开终端输入:date 062614102014.30, 这里是解决方案的知乎链接.

重建软件环境

系统重装好以后就是安装软件。软件大致可分为两类,一是普通用户日常所需的一些软件,二是程序员身份所对应的开发环境。先来恢复开发环境,因为使用的homebrew的brew cask可以帮助安装一些常用软件。

在恢复开发环境之前,有一些问题可能还是必须要先解决的,比如网络问题(访问外国网站),不访问外国网站邮箱连gmail等没法使用。

  • Shadowsocks 我使用shadowsocks,所以需要手动下载ShadowsocksX软件,然后配置完成访问外国网站功能。这部分就不多说了。
  • chrome 我以前试过使用brew cask进行安装chrome,不过可能由于墙的原因,始终无法下载。故采用手动下载安装。能够访问外国网站以后,在chrome安装完成后登录google账号就会自动恢复你的书签,插件等等了,十分方便。
  • 输入法 如果要输入中文,要么在 系统偏好设置 >> 键盘 >> 输入源 >> 左下+号添加简体拼音输入源。要么自行下载输入法,比如常用的搜狗输入法, 或者可以待会儿使用brew cask install sogouinput进行安装。
  • xcode xcode的command line tool在后续操作中用到,先安装整个xcode吧,有备无患, App Store >> xcode。Xcode动辄4到5个G,网速不快的话这里还是挺闹心的。 安装完成后,记得要先打开一次完成components的安装。否则homebrew可能无法顺利安装。
  • 使用习惯 我习惯将左上触发角设置为Launchpad, 系统偏好设置 >> Misson Control >> 左下触发角 >> 左上Launchpad >> 。同样设置左下触发角为桌面。 将F键区设置为标准功能键, 系统偏好设置 >> 键盘 >> 选中将F1、F2 等键用作标准功能键。 移除Docker中能够移除的所有图标,这样Docker中显示的就都是已经打开的应用程序。

开发环境恢复

首先安装homebrew:

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"`

  • brew install安装命令行软件
  • brew cask install安装GUI软件

brew info APP 可以查看有哪些安装选项。目前brew cask更新软件可能没那么优雅,很多APP会自动检测更新,也可先手动卸载再重新安装brew cask uninstall APP && brew cask install APP, 更多用法可自行搜索。

安装好brew以后,有一些软件是必备品,比如git, wget. 我把dotfiles放在了github上,里面维护了一个brew_for_new.sh放置brew的部分安装清单, 这里是我的 dotfies github地址. 因此执行下面的命令即可安装brew必备的一些软件:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/liuchengxu/dotfiles/master/brew_for_new.sh)"`

顺便再将dotfiles克隆到本地:

git clone https://github.com/liuchengxu/dotfiles.git ~/dotfiles
sh ~/dotfiles/bootstrap.sh

oh-my-zsh

sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

vim

我有一个vim配置space-vim放在github上,执行安装命令即可一键安装。

  • curl
sh -c "$(curl -fsSL https://raw.githubusercontent.com/liuchengxu/space-vim/master/install.sh)"

  • wget
sh -c "$(wget -qO- https://raw.githubusercontent.com/liuchengxu/space-vim/master/install.sh)"

不过首先需要安装 vim:

brew install vim --with-lua --with-override-system-vi --with-python3
brew install macvim --with-lua --with-override-system-vim --with-python3
# YouCompleteMe prerequisites
brew install cmake

安装powerline fonts, space-vim 与powerline fonts搭配效果更佳:

git clone https://github.com/powerline/fonts.git ~/.fonts && bash ~/.fonts/install.sh

spacemacs

安装emacs:

brew tap d12frosted/emacs-plus
brew install emacs-plus
brew linkapps emacs-plus 

克隆spacemacs repo:

git clone https://github.com/syl20bnr/spacemacs ~/.emacs.d

Java 与 Python

brew cask install java会安装最新版本的java. 如果需要指定版本,自行搜索具体做法即可。

brew cask install anaconda, 所安装的版本为anaconda3. 如果需要anaconda2, 需要自行从continum.io下载.

非常推荐大家使用anaconda安装python环境,里面的很多工具都非常好用,比如Jupyter Notebook. 如果下载太慢,尝试开启全局ss.

其他

# sourcetree
brew cask install sourcetree

# sublime text
brew cask install sublime-text

# iterm2
brew cask install iterm2

# r语言
brew cask install r-gui

使用 brew cask 的其中一个好处便是有些图形软件 brew 会自动帮你创建一个链接可以从terminal中启动,比如可以使用subl从命令行启动sublime text.

iterm2安装完成后克隆终端主题进行美化,毕竟默认主题选择性不多,且item2,系统自带terminal都可以用。

在用户目录下新建一个GitHub目录,以后从GitHub克隆的repo都可以放到这里:

cd ~/GitHub && git clone https://github.com/mbadolato/iTerm2-Color-Schemes.git

为iterm2设置一个类似Guake的功能,iTterm2 >> Profiles, 添加一个叫做Guake的profile >> Window >> Style选择 Fullscreen , 然后设置ITerm2的热键,iTerm2 >> Keys >> Hotkey, 我习惯将Hotkey设置为F12.

iTerm2 Fullscreen

Guake Hotkey

日常使用软件

使用 brew cask 安装软件时,有时不是一个安装命令就能搞定,还需要一些额外的操作。下面是一些常用软件列表:

# qq
brew cask install qq

# alfred
brew cask install alfred

# 搜狗输入法
brew cask install sogouinput

# 欧陆词典
brew cask install eudic

# macdown
brew cask install macdown

# cheatsheet
brew cask install cheatsheet

# mactex
brew cask install mactex

搜狗输入法:

安装搜狗输入法时,brew 会有提示:

To complete the installation of Cask sogouinput, you must also run the installer at '/usr/local/Caskroom/sogouinput/3.7.0.1459/安装搜狗输入法.app'

因此,我们需要在终端中执行 open /usr/local/Caskroom/sogouinput/3.7.0.1459/安装搜狗输入法.app 才能进一步完成安装。

我喜欢将候选词个数设置为最大。

欧陆词典:

我买了一个欧陆的注册码,因为它的很多词库很好用。另外因为词典比较常用,给它设置一个快捷键 Ctrl + 1欧陆词典 >> 偏好设置 >> 快捷键 >> 显示|隐藏《欧陆词典》窗口 >>按Ctrl + 1. 以后只要 Ctrl + 1, 就可唤出词典。我还将翻译选中内容的快捷键设置为Ctrl + T。默认的激活 Light Peek快捷键与Alfred冲突,去除。

Eudic

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Alpha Casper FFG 测试网指南

    欢迎来到基于 pyethereum的第一个 alpha Casper FFG 测试网版本。该测试网彰显了在加密经济学 POS 上数年的工作成果,以及客户端几个...

    用户1558438
  • 超漂亮 vim 配置:space-vim

    space-vim 现已支持 Layer ,以下内容大都陈旧,欢迎访问 github 查看最新版本: >>>> space-vim

    用户1558438
  • 用 Python 写一个 NoSQL 数据库

    本文译自 What is a NoSQL Database? Learn By Writing One In Python.

    用户1558438
  • 基于DotNet构件技术的企业级敏捷软件开发平台 - AgileEAS.NET - ORM访问器

        上一篇文章AgileEAS.NET之数据关系映射ORM简单介绍了一下AgileEAS.NET平台中ORM对象的组织机构体系,但并没有对其所执行的数据存取...

    魏琼东
  • Mac全栈开发-Homebrew

    拿到一台新的Mac,首先推荐安装Homebrew。 Homebrew是Mac下面的一个包管理器,方便我们安装一些macOS没有的UNIX工具、软件。

    用户1065635
  • linux kernel的cmdline参数解析原理分析【转】

    转自:https://blog.csdn.net/skyflying2012/article/details/41142801

    用户3033338
  • 数据的三维立体化分析

    在学习人力资源数据分析的过程中,除了要去学习基础的EXCEL的技能和人力资源的专业知识以外,我们还有一个技能就是 数据分析的方法这个也是我们需要去学的,数...

    王佩军
  • mac 搭建python+selenium+chromedriver环境

    本人创建了一个go语言专题,但要在搜集许多go语言文章,手工操作很重复,所以就考虑到selenium工具的方便性,做一个自动化的,这样就大大提高效率

    _simple
  • 个人项目框架搭建 -- 仓储模式使用

    文笔有限,就直接贴代码了。记录下自己开发需要到的干货。希望不会误导路过的各位,文中若有误,还望路过的道友指出。

    易墨
  • 基于puppeteer的前端性能测试解决方案

    最近有接手一个新项目需要获取一系列的性能指标:建连时间 ssl握手时长 首包时间 首屏时间 下载时长 下载总时间 下载速率 ,需要模拟一系列的...

    测试邦

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动