移行アシスタントでやるとすぐに同じ状態で使えるのはいいんだが、要らなそうなファイルも持ってきてしまう。きれいさっぱりな状態にしたかったのでひとまず
- まっさらな状態で環境設定
- ファイル共有で必要なファイルだけコピペ
- 隠しファイルの表示はcommand+shift+.(dot)
ミュージック
- ミュージック(iTunes)は、iTunesのメニューで「ファイル」->「ライブラリ」->「ライブラリを整理」を選択して、「ファイルを統合」を実施
- 「ミュージック」内「iTunes」ディレクトリ配下に必要なファイルが作成される
- この「iTunes」ディレクトリを丸ごと、新Macの「ミュージック」へコピー
- 新MacでiTunesを「option」を押しながら起動すると、ライブラリを選択できるようになる
- 「ライブラリを選択」から「iTunes」内の「iTunes Library.itl」を選択すれば、移行完了
写真
- 写真は、「ピクチャ」内に「写真 Library」があり、これを旧Macから新Macの同じ場所にコピぺ
- 新Macで「option」を押しながら「写真」を起動して、今コピーしてきたライブラリを選択して読み込む
Podcast
- podcastで、かつでCDから取り込んだものがあって、これがpodcastでは見た目では存在するがファイルが見つからないと言われる
- podcastのファイルは、ユーザ/名前/ ライブラリ / Group Containers / 243LU875E5.groups.com.apple.podcastsのキャッシュフォルダーに保存されている
- これを同じ箇所にコピペすればいいかと思ったが状況変わらず
- そこで「ブック」の「ライブラリに追加」でオーディオブックとして使っていくことにする
Python
pip3 install numpyができないpipのアップデートはこの段階でもできたx86_64とarm64の違いがあるらしい、後者でやれなくはないがまだいろいろ大変そうなので、x86_64のほうでやるようにするFinderからターミナルの「情報を見る」を開き「Rosettaを使用して開く」にチェックを付けたうえで、ターミナル起動python3 -m pip install numpy
Python続き
ぽいぽいパッケージ入れてさてjupyter使おうとしたらエラーが出る% jupyter notebookzsh: command not found: jupyterどうやら.zshrc作ってパスを通さないといけないらしい% echo $PATH 今のパスを確認してみる/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin% touch .zshrc% open ~/.zshrcexport PATH="$PATH:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin"% source ~/.zshrcだが command not found: jupyterその後python本体のpathが通ってないことに気づくそういえばパッケージ入れてるときになんか表示されてたWARNING: The scripts f2py, f2py3 and f2py3.8 are installed in '/Users/[user_name]/Library/Python/3.8/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.改めて % open ~/.zshrcexport PATH="$PATH:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/[user_name]/Library/Python/3.8/bin"% source ~/.zshrc無事にjupyter使えるようになった
Pythonおまけ
上のjupyter問題のときにパッケージをいったん全部削除したかったpip3 freeze --user | xargs pip3 uninstall -y
prophet使うときに毎度エラーメッセージが出ていたImporting plotly failed. Interactive plots will not work.pip3 install --upgrade plotly.
prophetのcross_validationでdask使用時にエラーが出るpip3 install "dask[distributed]" --upgrade(これやってもdask使用時にエラーが出ることはある)
pipで一括インストールする為のrequirements.txtの書き方
https://www.sukerou.com/2019/03/pip-python-tips.html
読めばわかるMACでのPATH設定を完全理解
https://reffect.co.jp/windows/full_understanding_mac
M1 Mac
https://oku.edu.mie-u.ac.jp/~okumura/macosx/m1.html
M1 Macの開発環境
https://qiita.com/shibukawa/items/797b7cbb7e530842e6f7
Homebrew
homebrewをインストールbrew install imagemagickそしたらpython3.9もインストールされちゃうそしたらpandasが使えないbrew uninstall --force --ignore-dependencies python3
あと、まっさらなosのまっさらなmacを手に入れたら、まずはosアップデートしておくことが大事だと学ぶ。
参考文献
旧Macから新Macへ「移行アシスタント」なしで移行
https://rikei-fufu.com/2019/10/27/post-2187-mac-migration/
macOS Catalinaでは、iTunesの分割によりメディアファイルの扱いに変更が
https://minatokobe.com/wp/os-x/macos-catalina/post-57359.html
Apple SiliconにおけるHomebrewのベストプラクティス
https://qiita.com/yujiod/items/56002a7cef5b5a3be3fb
macOS 11 Big Sur compatibility on Apple Silicon #7857
https://github.com/Homebrew/brew/issues/7857
Homebrew
https://brew.sh/index_ja
HomebrewでいれたPythonの削除
https://qiita.com/baozam/items/268906b5984a37239b7d
Apple M1 チップ搭載の Mac で macOS を再インストール中にパーソナライズエラーが表示される場合
https://support.apple.com/ja-jp/HT211983
Appleシリコンを搭載したMacでmacOS復旧を使用する
https://support.apple.com/ja-jp/guide/mac-help/mchl82829c17/mac
Homebrew&Python 立て直し
現状課題
- macにもともと入ってるpythonにpipでやってた、これを仮想環境でやりたい
- x86_64(rosetta)の方でやってた、これをarm64でやりたい
python環境を作り直す
- 今のスで入れてるライブラリをとりあえず削除
- pip freeze | grep -v '@' | awk -F'==' '{print $1}' | sudo xargs pip uninstall -y
- brewのインストール https://brew.sh/ja/ に行って、コマンドをコピーして、と思ったが
- macOSをお使いの場合は新しい.pkgインストーラーをお試し下さい
- とのことなので https://github.com/Homebrew/brew/releases/tag/4.4.20 で.pkgを落としてきて実行
- ちゃんとbrewがインストールできたかの確認 brew help
- unknown or unsupported macOS version: :dunno (MacOSVersionError) と言われる
- brew update-reset とするといいらしい、やってみた
- brew help やったらいい感じになったらしい
- 現在の PATH を確認 $ echo $PATH
- PATH のどこかに /opt/homebrew/bin が含まれていればOK
- $ which brew 出力が /opt/homebrew/bin/brew になっていれば、正しく PATH が設定されている
- xzのインストール $ brew install xz
- pyenvとは?Pythonのバージョンを管理してくれるツール
- Homebrewコマンドでpyenvをインストールする $ brew install pyenv
- pyenvからPythonをインストールする。ここからはpyenvコマンドを使います。まずは、以下のコマンドを入力します。$ pyenv install --list pyenvでインストールできるバージョンが出力されます
- $ pyenv install 3.11.0
- pyenvのpathを通す(以下を追記した)
などとやってたんだが、pymc5を使いたくて、そしてpymc5はminiforgeがいいよというので、pyenv環境は全部削除して、brewでminiforgeを入れ直すことにした
- miniforgeインストール $ brew install miniforge
- condaのバージョン確認 $ conda --version
- conda 24.11.3 versionを返してくれればcondaの準備はOKです
- $ which conda
- /opt/homebrew/bin/conda path追加した方がいいのかな?でも以下は実行できてるしな conda env list
- 仮想環境作成しつつ、python本体をインストール(causal impactが3.11じゃないと動かないかもなので)
- $ conda create --name pm5_env python=3.11
/opt/homebrew/Caskroom/miniforge/base
/opt/homebrew/Caskroom/miniforge/base/envs/pm5_env
- $ conda activate pm5_env としても
- CondaError: Run ‘conda init’ before ‘conda activate’ と言われる
- https://manabi-corpeng.com/conda-activate-init-error/ をみて、
- 元はここ https://manabi-corpeng.com/miniconda-install/#index_id5
- $ conda init zsh
- として、ターミナル再度立ち上げ直すと
- $ conda activate pm5_env できて、
- $ python --version
- でpython 3.11.11と返ってきた。無事に仮想環境にpython本体のインストール完了
- pymc5をインストール https://www.pymc.io/projects/docs/en/latest/installation.html
- $ conda install -c conda-forge "pymc>=5"
- (arviz, graphviz, lumpy, pandas, scipyなども)
- $ conda install -c conda-forge seaborn prophet matplotlib ipykernel ipywidgets
- $ conda install -c conda-forge seaborn matplotlib ipykernel ipywidgets
- (prophetがないと言われた、statsmodelsも)
- できんな $ conda install -c conda-forge prophet
- prophet causal impactも入れてな https://facebook.github.io/prophet/docs/installation.html#python
uname -m
arm64
imagemagickインストール
- $ brew install imagemagick
- python 3.13がインストールされちゃったのを削除する
- $ brew uninstall --ignore-dependencies python
brewの要らなくなったのを削除
brew cleanup → 古いキャッシュや不要ファイルを削除(推奨)
brew cleanup --prune=0 → すべて のキャッシュと不要ファイルを削除
brew autoremove → 依存関係がなくなったパッケージを削除
rm -rf $(brew --cache) → キャッシュ全削除
conda clean --all すべてのキャッシュ・不要ファイルを削除(推奨)
仮想環境のをbaseに適用したい
仮想環境をアクティベート
$ conda activate myenv
インストール済みパッケージをエクスポート
$ conda list --export > myenv_packages.txt
base 環境に適用
$ conda activate base
$ conda install --file myenv_packages.txt
conda activate pm5_env
conda deactivate
conda activate base
conda create --name base_backup --clone base
このコマンドで、base 環境のコピーを base_backup という名前の新しい仮想環境として作成できます。
不要になった古い環境を削除
conda remove --name pm5_env --all
0 件のコメント:
コメントを投稿