never setup again! Mac M1 配置

541 阅读4分钟

xcode

从app store下载就可以了。或者在terminal尝试运行git的时候根据桌面提示下载。install requested for command line developer tools 在这行错误提示之后,mac会一连串的提示进行下载xcode。

iTerm2 & oh-my-zsh

homebrew

  •   export HOMEBREW_INSTALL_FROM_API=1
      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
    
  • 在运行完之后,需要根据运行结果执行3条命令,具体如下:

    echo '# Set PATH, MANPATH, etc., for Homebrew.' >> /Users/user-name/.zprofile
    echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> /Users/user-name/.zprofile
    eval "$(/opt/homebrew/bin/brew shellenv)"
    
  • 官网地址
    [docs.brew.sh/Installatio…]

  • 可参考博客:
    Mac M1芯片 安装homebrew踩坑 [juejin.cn/post/715917…]

  • attention:
    1. 需要对网络有要求,需要VPN,如果没有,可以从国内镜像下载,如参考博客中所示。
    2. M1需要更改默认的路径,具体为在.zshrc文件中添加这行export PATH=/opt/homebrew/bin:$PATH
    3. 在安装完运行brew help或者brew -v来确定是不是安装成功。
    4. 遇到的问题:在安装完之后运行brew install redis命令,提示json解析出错,全网没有搜索到相同的状况,并且这个在brew install + 任何应用都会稳定出现json解析的问题,经不断尝试,终于在第二天晚上这个问题自愈了,莫名其妙可以下载了。在写这篇博客的时候发现又出现了相同的问题。。。

jdk 

Git Config

git config --global init.defaultBranch main
git config --global user.name "your name"
git config --global user.email "your mail"

除此之外需要新生成一对ssh key,并添加到github账户中。记得要修改ssh的config。并把之前的public key从github账户中删除。参考链接:docs.github.com/en/authenti…

colima

[www.dbasolved.com/2022/09/run…]

[vividcode.io/colima-appl…]

  • attention:
    1. 兼容x86_64 container,在启动Colima的时候用命令$colima start -c 4 -m 12 -a x86_64, 这同时会把cpu和memory分配好。
    2. 如果用到testcontainers,需要link一下docker.sock的路径
  • images
    docker pull mysql
    docker pull redis

node 

  • brew install nvm
    当完成后,发现nvm ls提示错误zsh: command not found. 这时需要根据brew install nvm 之后的提示,配置一下nvm,具体如下:

  • 先创建文件mkdir ~/.nvm

  • Add the following to ~/.zshrc or your desired shell configuration file: 

    export NVM_DIR="$HOME/.nvm"
      [ -s "/opt/homebrew/opt/nvm/nvm.sh" ] && \. "/opt/homebrew/opt/nvm/nvm.sh"  # This loads nvm
      [ -s "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" ] && \. "/opt/homebrew/opt/nvm/etc/bash_completion.d/nvm" # This loads nvm bash_completion
    
  • run source ~/.zshrc

  • run nvm ls to check whether it installed successfully

  • nvm install v14.14.0 下载任意版本的node,用nvm管理node 版本,版本号可在官网的releases查看👇 . 完成后再运行nvm ls会发现node已被设置了default版本。

  • 官方网站:[nodejs.org/en/download…]

  • 可参考的博客:[juejin.cn/post/702188…]

  • 后续:这个步骤走完之后node -v提示command not found,之后又在.zshrc中手动加入了node的路径:

    # node
    export NODE_HOME="/Users/he.zhu/.nvm/versions/node/v14.14.0"
    export PATH=$PATH:$NODE_HOME/bin
    
  • 安装小工具jwt-cli

       npm install @clarketm/jwt-cli -g

       参考:[github.com/clarketm/jw…]

       签发token的命令:$ jwt sign '{"user": "Travis Clarke"}' "super secret"

jenv

  •   brew install jenv
    

        完成后需要配置环境变量:

$ echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc   
$ echo 'eval "$(jenv init -)"' >> ~/.zshrc

注意在.zshrc中,把jenv的路径加入PATH中的代码片段,需要在添加JAVAHOME的代码片段的后面,下图截取了部分.zshrc中的代码:

# java
export JAVA_17_HOME="/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home"
CLASS_PATH="$JAVA_17_HOME/lib"
PATH=".$PATH:$JAVA_17_HOME/bin"

# jenv
export PATH="$HOME/.jenv/bin:$PATH"
eval "$(jenv init -)"
  •   $ jenv add /Library/Java/JavaVirtualMachines/jdk17011.jdk/Contents/Home
    

configuration: 把现在jdk所在的路径加入在jenv中,可由jenv管理和消费。

  •   $ jenv versions 检查现在已有的jenv管理的java的版本
    

把global的java版本换成特定版本$ jenv global oracle64-1.6.0.39 ; 进入某个project的目录,把当前项目的java版本换成某一版本$ jenv local 1.8.

工具类

ShiftIt

Hammerspoon

  • brew install --cask hammerspoon
  • follow官网的步骤,有许多后续步骤。
  • 官网地址:[github.com/peterklijn/…]

insomnia

  • brew install --cask insomnia
  • 官网地址:[insomnia.rest/\]
  • 移植data:[docs.insomnia.rest/insomnia/im…]
    即从settings -> Data -> Export Data移植出整个文件,之后在新的电脑直接import就可以了,如果import结束之后并没有看到数据,则点击app左上角的Insomnia logo或文字,选取一下document即可。

intellij

  • 官网地址:www.jetbrains.com/idea/downlo…

  • 移植settings

  • 下载Material Theme UI插件

  • 从之前的idea -> File -> Manage IDE Settings -> Export Settings...

  • airdrop 把export出的settings文件传输给新电脑

  • idea -> File -> Manage IDE Settings -> Import Settings...

  • 更改内存占用
    Help -> Change Memory Settings -> 4096M

  • attention:
    针对M1有特殊的版本,在下载页面需要注意,如果不小心下载到了intel版本,会非常卡顿,非常。

typora

brew install --cask typora

autojump

  • brew install autojump

  • 安装完不生效,需要Add the following line to your ~/.bash_profile or ~/.zshrc file: 

    [ -f (brew --prefix)/etc/profile.d/autojump.sh ] && . (brew --prefix)/etc/profile.d/autojump.sh

奇奇怪怪的问题

  • 下载了最新版的IntelliJ,如果外接了显示屏,在锁屏之后再次开启屏幕的时候,会概率性出现屏幕全黑的情况,其他小伙伴反应会出现全红的情况,版本号是IntelliJ IDEA 2022.2.3 (Ultimate Edition)。

  • brew install 程序会概率性出现json解析的问题;

  • 下载了jdk17,JAVA_HOME的版本是17,但是IntelliJ用了它自带的jdk 11,会出现编译项目之后,如果用命令行跑gradle的某些task,其实使用jdk17跑的,跟编译时用的版本不一致,导致某些方法找不到的情况。

  • 微软autoupdate每天都弹,烦死,disable的办法:

    # disable the service
    launchctl disable gui/$(id -u)/com.microsoft.update.agent
    
    # check that the service is disabled
    launchctl print-disabled gui/$(id -u) | grep microsoft
    

       参考:[superuser.com/questions/1…]