C101PA(arm64 chromebook)上のvscodeでremote developmentを試したい


やりたいこと

  • C101PAで最新のvscodeを使用してremote developmentを試したい

結論

なんかエラーで繋げなかった。
まぁsshfssshでいいかと思い断念した。

環境

  • chromebook: ASUS C101PA
  • mac mini

参考サイト

  1. https://www.reddit.com/r/Crostini/wiki/howto/install-vscode
  2. https://github.com/Microsoft/vscode/wiki/How-to-Contribute#build-and-run-from-source

やったこと

  1. vscode 1.34のビルド&インストール
    ビルド済みで公開されているパッケージだと1.32なのでremote developmentが使えないため

  2. remote developmentの設定
    こっちが本命

1.vscodeのビルド

参考サイトの内容をのままです。

  1. .zshrcに以下を追記

    .zshrc
    # Use the default C / C++ compilers,
    # because some makefiles default to CC:=gcc:
    export CC=/usr/bin/cc
    export CXX=/usr/bin/c++
    
  2. 必要なパッケージをインストール

    sudo apt install -y libsecret-1-dev git python2.7 clang make libx11-dev libxkbfile-dev fakeroot rpm
    
  3. nodejsのインストール
    nodebrewを使いたかったけどとうまく動かせずめげたのでnvmを使用しました

    git clone git://github.com/creationix/nvm.git ~/.nvm
    

    .zshrcに以下を追記

    .zshrc
    source ~/.nvm/nvm.sh
    

    nodejsをインストール。バージョンは10.15.3にしました。

    nvm install 10.15.3
    

    yarnをインストール

    npm i -g yarn
    
  4. vscodeのソースを取得
    vscode を shallow cloneします

    git clone https://github.com/Microsoft/vscode.git --depth=1
    cd vscode
    

    ビルド時のメモリ使用を制限したり、いろいろパッチを適用します(詳細は参考サイト参照)

    sed -i 's|require("gulp-sourcemaps");|{write:()=>gulpUtil.noop(),init:()=>gulpUtil.noop()};|' build/lib/optimize.js
    sed -i 's|--max_old_space_size=[0-9]\+|--max_old_space_size=1700|' package.json
    sed -i 's|yarnInstall..test/smoke|// &|' build/npm/postinstall.js
    
  5. vscodeをビルド
    30分くらいかかる

    yarn && yarn run gulp vscode-linux-arm64-min && yarn run gulp vscode-linux-arm64-build-deb
    
  6. vscodeをインストール
    ビルドしたvscodeをインストールします

    sudo apt install -y ./.build/linux/deb/arm64/deb/code-oss_*_arm64.deb
    
  7. vscodeを起動
    以下のコマンドで、起動します

    code-oss
    

2.remote developmentの設定

  1. remote developmentを追加

  2. mac miniに接続

    1. 左側のツールバーに追加されたアイコンを選択。
    2. mac miniを右クリック(たぶん.ssh/configが読み込まれてる。)
    3. Connect to Host〜をクリック
  3. エラーで接続できず断念