スキップしてメイン コンテンツに移動

M1 MacbookのWeb開発環境


ng new my-app ちょっと時間が開いてしまいましたが、開発環境の整備をしていこうと思います。

Web開発にはプロジェクトによって色々なプログラミング言語を使ったりしていますが、ここ最近一番多い構成はAngular / node.js / TypeScript な構成です。エディタにはVisual Studio Codeを使っています。

Node.jsのインストール

v15からARM64に対応しているそうなので、v15をインストール。node.jsのバージョン管理には以前からnvmを使用しているので、まずはnvmをインストール。

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.2/install.sh | bash

xcodeをまだ動かしていなかったのでライセンスの確認をするようにメッセージが表示される。

You have not agreed to the Xcode license agreements, please run 'sudo xcodebuild -license' from within a Terminal window to review and agree to the Xcode license agreements.

Failed to clone nvm repo. Please report this!


エラーメッセージの通り sudo xcodebuild --license を実行してライセンスを確認して agree と入力。

もう一度 nvmのインストールスクリプトを実行。


すると今度はシェルの設定ファイルがないから、ファイルを作って再度スクリプトを実行するか、設定ファイルに追記しろってメッセージが表示される。


=> Profile not found. Tried ~/.bashrc, ~/.bash_profile, ~/.zshrc, and ~/.profile.

=> Create one of them and run this script again

   OR

=> Append the following lines to the correct file yourself:


touch ~/.zshrc を実行して再度nvmのインストールスクリプトを実行して無事にインストールできました。


開いているターミナルではパスが通っていないので、一旦ターミナルを立ち上げ直して、nvmコマンドが使えることを確認したら


nvm install v15

を実行してnodejs v15のインストールを行います。バイナリファイルがないようで、ソースコードからビルドを行うので少々時間がかかります。


Visual Studio Codeのインストール

Visual Studio Codeのリリース版ではまだARM64版は提供されていませんが、ベータ版的な位置付けのInsider BuildでARM64版が提供されているのでこちらをインストールしてみます。

https://code.visualstudio.com/insiders/

ARM64版をダウンロードしたら、zipファイルを展開してアプリケーションフォルダにコピーするだけですね。

Insider版はアイコンの色がちょっと違う


まあ、普通に使えてますね。

Angularを動かしてみる

とりあえずnodeとエディタの準備ができたので、angularを動かしてみる。

npm install -g @angular/cli ng new my-app cd my-app npm install ng serve

はい、何事も問題なく動きますね。

コメント

このブログの人気の投稿

MacからWindowsの名前解決をする

Windowsな環境だと、NetBIOSでコンピュータ名で名前解決ができたりしてとても便利です。そんなこともあって、一時期はLinuxサーバに用がなくてもSambaをインストールしたりしていた時代もありました。 ですがMacからはNetBIOS名で名前解決してくれません。Windowsとのファイル共有にはSambaが使われているので、NetBIOSで名前解決しようと思えば簡単にできるはずですが、色々あるんでしょうね。きっと。 実際のところ、ファイル共有だけであればWindowsでもLinux上のSambaでも問題なくできるんですが、pingを打ちたい時や、pingを打ちたい時、ほかhttpとかデータベースに繋げたい時とかに困るんです。pingを打ちたい時の方が多いですが。 とりあえず手動でなら、NetBIOS名からIPアドレスは引けたりします。おもむろにターミナルを開いて $ smbutil lookup ホスト名 とすれば、IPアドレスが引けます。 ので、このIPアドレスを指定してping打ったり、他色々できますが、面倒でやってられませんね。 じゃあMacでNetBIOSのようなものってないのかというと、ちゃんとあって、mDNSという仕組みが使われています。 mDNSの詳しいことは後日調べるとして、LinuxならavahiをWindowsならBonjourをインストールして、ホスト名.localで名前解決ができるようになります。 他、DHCPサーバとDNSサーバを連動されてあげれば、ソフトを追加でインストールしなくて済むのでスマートに仕上がりますが、最近は面倒なのでDHCPサーバはブロードバンドルータに任せっきりなのでありました。 Bonjour for Windowsのダウンロードがイマイチ良く分からないことになっています。 とりあえず Bonjour Print Services for Windows をダウンロードすれば大丈夫そう。

M1 Macbookの仮想化環境 Parallels DesktopでWindows10

 CPUアーキテクチャの変更でもっとも影響を受けるところからいきなりぶっこんでみようと思います。 十数年前にPowerPCアーキテクチャからIntelアーキテクチャへの変更で、ユーザとしてもっとも恩恵を受けられたのがBootCampやParallelsなどの仮想マシン環境を使って、Windowsが使えるところが大きかったりします。 開発作業などはMacだけで行えたとしても、動作確認を行うためにWindowsの環境が必要になったり、Mac版のMS Officeでは印刷がズレてしまったり、Windows版のソフトしか提供されていなかったりなど、手元でWindowsが動いてくれたほうが嬉しい人も多いと思います。 IntelアーキテクチャからARMアーキテクチャの変更によって、一般的に広く使われているIntelアーキテクチャ向けのWindowsは動かなくなっています。 ですがMicrosoftはWindows8の頃から、ARM向けのWindowsをハードウェアベンダ向けには提供していて、これが一般に向け提供されるのかみなさん興味津々な状態です。 一般向けに提供されている訳ではないですが、Microsoftのベータテスト的なプログラム Insider ProgramでWindows 10が配布されており、これを試しに動かすことができるようです。 Windows Insider Program Macの仮想化環境としてはParallels、VMWare Fusion、VirtualBoxなどが使われていると思いますが、私はParallelsを愛用しています。 Parallels DesktopのM1対応のテクニカルプレビュー版 が公開されているので、これを使ってARM版Windows 10を動かしてみます。 早速Parallels Desktopのテクニカルプレビュー版をダウンロードしてみます。ダウンロードした時のバージョンは16.3.0-50385 となっていました。 インストール後に、こんなダイアログが表示されます。Intelベースの既存のVMを動かすことはできないし、新しくIntelベースのVMを作ることはできない的なことを書いていそう。 続いてWindows 10のイメージのダウンロードを行いますが、サイズが7.6GBもあるのでかなり時間がかかります。ビルド番号は202

DebianをSqueezeに上げたらKVMの仮想マシンが起動しなくなった

先日、無事にサーバのDebianをSqueezeにアップグレードした訳ですが、KVMの仮想マシンが起動しなくなっていたのをメモしとくの忘れていました。 実際のところ、KVMの仮想マシンが起動しなくなるという訳ではなくて、libvirtを使っていて、且つ、仮想HDDをrawフォーマット以外(qcow2とか)を使っている場合に Starting SeaBIOS (version 0.5.1-20101112_103537-polaris) Booting from Hard Disk... Boot failed: not a bootable disk No bootable device. なんて可愛らしメッセージが表示されちゃいます。 あまりの可愛らしさに胸がズキューンってなっちゃいますね。 これはlibvirtのバージョンが上がって、XMLのフォーマットに変更が入っているのが原因みたいです。新しいXMLのフォーマットではdiskにdriver要素が指定できるようになっているんですが、指定されていない場合はrawフォーマットとして扱われてるみたいです。 XMLフォーマットの詳細は こちら なのでdriver要素を指定して上げれば問題なく起動します。でもdriver要素チマチマ追加するの面倒だなぁと思っていたら、virshから編集すると、自動的にdriver要素追加してくれてました(rawになってるけど) $ sudo virsh edit ドメイン名 で、rawになっている部分を、実際に使用しているフォーマットに変更して上げればOK。 というかvirshのeditって今回初めて使ったんですが、defineしなくていいので楽チンですね。 今まではXMLファイルを編集して、その後 virsh defineやってました。