top-banner

G3 MacのHDDをSSDに交換

物の整理をしていて、トランセンドSSD(120GB)が余ったのでG3のHDDをSSDに交換してみました。
ひとまず、MacOS8.6で動作を確認済みです。
PCISATAカードを挿していて、そこに2.5inchのSSDを接続しました。
Ultra Wide 2 SCSIの古いドライブより、数十秒程度、起動が遅いですね。 2022年になって1999年のマシンをイジる…。これぞ男のロマンですね😑
ちょっと久しぶりの改造にワクワクしてしまいました。

Team Viewerが面白い

以前から「外出先から家のパソコンにアクセスできたら素敵だな」なんて思ったり、家の中で「自分の部屋にあるPCを別の部屋からリモート操作して作業したい」という欲望がありました。
外から家にNW接続するのに手っ取り早いのは、VPNルーターVPNサーバを立てて、VPN接続するのが一番手っ取り早いかな?なんて(全然手っ取り早くないww)思ってたのですが、
そもそもVPNってそこまで安全なんだっけ?とか考えたり、それを構築する手間を考えるとモノグサな私には、なかなか実行に移せませんでした。
ちなみにVNCを使ってみたりもしてましたが、ちょっと使いずらいことも多々あり、最近は全然使わなくなっていました。

そんなある日、TeamViewerのTVCMをふと見かけた私はコレだ!っと思い、早速設定してみることにしました。

目次

やりたいこと

やりたいことはこんなことです。
f:id:spacegeek:20220212180025p:plain  
 

アカウントの作成

以下のリンク先からアカウントを作ります。
TeamViewer Management Console  
 

アカウントの二段認証設定

アカウント自体のセキュリティを高めるために、二段認証を設定します。 過去にTeamViewerのアカウントが乗っ取られた事件がありましたが、それを鑑みても設定する価値は十分にあります。
設定手順は以下を参照してください。
2要素認証 – 有効化と無効化 - TeamViewer Support  
 

TeamViewer ホストのインストール

リモート操作したいPCにTeamViewerを入れますが普通のクライアントを入れてしまうと、
リモート接続したいPCを起動後、TeamViewerを起動してさらに、パスコードを事前にメモしとかないとリモートアクセスできない状況になり、非常に面倒です。
今回は無人の状態でもアクセスできるように普通のクライアントではなく、ホストを入れることにしました。
f:id:spacegeek:20220211170744p:plain:w600  
 

ホストの二段認証設定

アカウント自体の二段認証は前段で設定したのですが、ちょっとそれだけだと心配かも?ということで、リモート接続先のPCにリモートログインする際に、二段認証がかかるように設定したいと思います。
Macの環境では、メニューバーからTeamViewer ホストのアイコンをクリックして、「環境設定」を開きます。

f:id:spacegeek:20220212172103p:plain

あとは下記に設定手順があります。
接続用2要素認証の設定 - TeamViewer Support  
 

TeamViewerのインストール

接続に使うPCやスマホにTeamViewerをインストールします。こちらは、普通のクライアントです。  
 

ホストにログイン

TeamViewer経由でホストにログインすると、スマホにアクセス許可して良いかの認証がかかるのでこれを許可すると、リモートアクセスできるようになります。
f:id:spacegeek:20220212172837j:plain:w300 
 
 

やってみた感想

まだ家の外からはアクセスしたことが無いので、画面の遅延がどのくらい発生するのか分からないのですが、少なくとも同じNW内では、遅延なくスムーズに動いており、いい感じです。
ご興味ある方は是非、お試しあれ😑。
 
 
 
 

MacのPython環境でtkinterを使えるようにする

近頃、pythonを勉強中なのですが、それは突然やってきました。
pythonの技術本に記載されているコードをコピーして実行したところ、tkinter が使えないではありませんか!そんなモジュールは無いと怒られます😓
『いやいや、そんなはず無いじゃん。面倒くせえなぁ、変な文字コードが入ったか🌝?』と思って色々修正してみたのですが 、エラーは解消されません。

困ったときのGoogle先生でエラーメッセージを調べたところ、Macpython環境を使っていると遭遇する事象の様です。
解決手順が分かりましたので備忘録として残します。
また、解決にあたり下記のサイトを参考にさせて頂きました。
【Python】tkinterのアップデート失敗した備忘録【インポートエラー】 | 科学のメモ帳


本記事は Homebrew と pyenv の環境を想定しています。
構築手順を知りたい方は以下の記事からどうぞ。
spacegeek.hatenadiary.com



目次


Pythonのアンインストール

pyenv でPythonをインストールしていましたので、pyenvでPythonをアンインストールします。

%  pyenv uninstall 3.8.5



Tcl/Tkのインストール

Hombrewからtcl-tkのパッケージをインストールします。

%  brew install tcl-tk


python-buildを修正

python-buildというファイルの中身を書き換えます。
まずは、pyenvのバージョンを調べます。

%  pyenv --version
pyenv 1.2.27


次にFinder上で、shift + command + G と入力します。
そうすると、ディレクトリパスを入力するポップアップが開きます。
ここで先ほど調べたバージョンを元に以下のようなパスを入力します。
/usr/local/Cellar/pyenv/version/plugins/python-build/bin/

f:id:spacegeek:20210522173924p:plain

該当のディレクトリが開くと、python-build というファイルがあるので、これを適当なエディタで開きます。(私は、CotEditorを使いました。)
ファイルを開いて、782行目に
-with-tcltk-includes='-I/usr/local/opt/tcl-tk/include' --with-tcltk-libs='-L/usr/local/opt/tcl-tk/lib -ltcl8.6 -ltk8.6'
という文字列を追加します。

変更前
$CONFIGURE_OPTS ${!PACKAGE_CONFIGURE_OPTS} "${!PACKAGE_CONFIGURE_OPTS_ARRAY}" || return 1

f:id:spacegeek:20210522174345p:plain

変更後
$CONFIGURE_OPTS --with-tcltk-includes='-I/usr/local/opt/tcl-tk/include' --with-tcltk-libs='-L/usr/local/opt/tcl-tk/lib -ltcl8.6 -ltk8.6'
${!PACKAGE_CONFIGURE_OPTS} "${!PACKAGE_CONFIGURE_OPTS_ARRAY}" || return 1

f:id:spacegeek:20210522175156p:plain


Python再インストール

pyenv でPythonを再インストールし、pyenv versionsコマンドでPythonがインストールしたバージョンに設定されていることを確認します。

% pyenv install 3.8.5
% pyenv versions
  system
* 3.8.5 (set by /usr/local/var/pyenv/version)


tkinterの確認

import tkinter があるファイルを実行します。
エラーが出ずに実行できたら成功です。
f:id:spacegeek:20210522175950p:plain

Amazon Kindle Unlimitedを契約してみた

最近、仕事をしていてスキル不足感が否めない状況に遭遇するようになりました😱
IT系のエンジニアとして業務時間外で自分のスキルアップの時間を確保するのは必須です。
そうでないと、すぐに市場価値の無いエンジニアになってしまいます😵

さすがに市場価値の無いエンジニアにはなりたく無いので、スキルアップを主目的として自分への自己投資を始めてみることにしました。
しかし何から投資すれば良いのかがわからなかったので、 技術本を読み始めてみることにしました。
しかし、紙の技術本は

  • サイズが大きく、普通に買って置いておくにはかさばる。
  • 読み終わると、用無しになるパターンがある。
  • ハズレを引いた際に読まなくなる。
  • 1冊あたり2-3000円するので、ちょっと高過ぎ。

と、自己投資とか言って置きながらデメリットにしか目がいかないので、Amazon Kindle Unlimited を契約してみることにしました。
月額980円で、ある程度の技術本は読み漁ることができます。

まずは、pythonの習得を目指して勉強しようと思います!
費用対効果?のほどは、また別の機会に🌝

MacでPCゲーム(Steam)はオススメできないという話

f:id:spacegeek:20210503171037p:plain:w500

目次

 

Steamデビューして2年ほど経ちましたが、やはりMacでSteamはオススメできないです。。
Macで如何にしてSteamを快適に楽しめるのか、アホみたいな執念を燃やしてやってきましたが、遂に挫折しました🌚
MacでSteamを楽しもうとしているあなた、快適に遊びたいなら無駄な足掻きを辞めて、Windowsを使いなさいw

 

GPUの問題

まずMacでゲームをやろうとして最初にぶつかる壁が、GPUの問題。
最近になってApple Siliconが出てGPU関連は改善されそうな余地がありますが、
intelMacGPUはiGPUがメインなので、ゲームをするには非力過ぎます。 私はMacでゲームがしたいためだけに、eGPU BOXを導入しましたが、Thunderbolt3の帯域制限のためにPCIeの40%の能力しか引き出せないとのこと。 うーん、コスパが悪過ぎですね😓。

 

対応タイトルの少なさ

これは、もう"言わずもがな"です。
当たり前ですが、Windows対応タイトルの方が圧倒的に多いです。 ただしこれは注意があって、遊びたいタイトルがどのOSに対応しているかで確認した方が良さそうです。 しかし数十年前(30年くらい前)であったら、Macでしかできないタイトルもあったかもしれませんが、現在はMac onlyのタイトルはほぼ無い(AppStore除く)かと思います。

 

ゲームパッドの互換性

PCゲームでゲームパッド(コントローラ)を選ぶ際に、オススメ度が一番高いのがXboxのコントローラです。
Xbox自体をMicrosoftが作っているので、PCでも操作しやすいとのネット上の評判を見て、私もXboxOneのコントローラを導入したのですが、
mac OS Catalina(ver 10.15)では最近、サードパーティー製のドライバを導入してなくても、動作するように正式なドライバ(Bluetooth接続のみ)が導入されました。
ところが、このドライバを使うと、Steam上で遅延が発生&一部正常に認識しないキーがあるようです。
一方で、サードパーティー製のドライバを入れても、正式ドライバと競合して上手く機能しない事象も見られます。
正式ドライバを無効化して、サードパーティー製のドライバを有効にすれば良いのかもしれませんが、その手間が面倒ですね。
AppStore配信のゲームでは確認していないので、もしかしたら、そっちでは上手く動くかもです。

 

AppStore配信なら問題ない?

ここまでボロクソwに批判してきましたが、AppStore配信のゲームであれば楽しめると思います。
ただし、有名タイトルが少ないのと割引セールは無いのが現状なので、どうしてもAppStoreでしか購入できないゲーム以外は、 Windowsでやる方が無難かと思います。

 
ちなみに私は、自作PC(ゲーム専用)を1台作っており、そちらで基本的にゲームすることに決めました。
さようなら、Steam on the mac !!

iCloudで再ログインができない

少し前に困ったことが発生したので、その備忘録として。
MaciCloudをサインアウトしたら、再ログインできなくなってしまった😨
なぜ、サインアウトが必要だったのかをよく覚えていないのだが、とあることから、iCloudが正常に同期していないことを発見!
正常に同期させるために、サインアウトしたのだが、そこから再ログインに失敗してしまうようになった😱
再ログイン失敗の事象と解決方法は以下のような感じ。

事象

iCloudにログインするために、AppleIDとパスワードをいれて「次へ」を押しても、正常に認証されず、再度入力画面に戻ってしまい、認証されない f:id:spacegeek:20201010172232p:plain

解決手順

  1. /users//library/keychains 配下のファイルを全て削除

  2. OS再起動

  3. コントロールパネルからiCloudへログイン。「次へ」を押した後で、下記の画面が表示されれば成功

f:id:spacegeek:20201010172240p:plain

MacにPython環境を構築する

年収を上げたいという不純な動機から、「じゃぁ、自分をアップデートしなくちゃダメじゃね?w」ということでPythonを真面目に勉強してみようと思います。
(いつまで続くかはわかりません。もしかしたら環境構築して満足して終わってしまうかもです🌚)


Pythonを勉強するには、まず環境が必要なので、その環境を準備します。
LinuxMacかで悩んだのですが、Linuxでの環境構築は仕事でやったことがあるので、今回はメインで使用しているMacにインストールしてみたいと思います。
Macには元からPython2.7が入っていますが、最新版(3.x)を使いたいので、新たにインストールします。

目次



1. パッケージマネージャー(Homebrew)のインストール

まずは、パッケージマネージャーのインストールから。一昔前?はMacPortsが人気だった?ような気がしますが最近はHomebrewの方が人気のようです。そこは流行に乗ってということで、Homebrewに。
ターミナルを開いて、以下のコマンドを実行します。

%  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"

インストールについては、正規のサイトを見てもらう方が良いと思います。
と言っても、上のコマンドを実行するだけなんですけどね💧
brew.sh
 
 
 

2. pyenv のインストール

元の環境のPythonのバージョンを変えるのは少々気が引けるので、複数のバージョンが扱えるようにします。
pyenvというツールを使うとバージョンの切り替えができるとのことなので、今回は pyenvを導入します。

%  brew install pyenv

次にpyenvの自動補完機能を使えるようにします。
MacはCatalinaから、デフォルトシェルがbashからzshに置き換わったのでzshのファイルに追加します。

#お好きなエディタ等で編集してください。
%  vim .zshrc

export PYENV_ROOT=/usr/local/var/pyenv

if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init -)"
fi


#zshをリロードします。
%  zsh -l

 
 
 

3. python のインストール

この記事作成時点の最新版をインストールします。

% pyenv install 3.8.5 

 
 

4. python のバージョン変更

pyenvでpythonを入れただけだど、pyhonを実行した時にデフォルトでインストールされているバージョン(2.7)が使われてしまいます。
そこで、pyenvコマンドでバージョンを変更します。

# バージョンの確認
% pyenv versions

# *がついているのが現在選択されているバージョンです。
# つまり、デフォルトのバージョン(2.7)が選択されている状態です。
* system (set by /usr/local/var/pyenv/version)
  3.8.5

#バージョンの変更
% pyenv global 3.8.5

#バージョンの確認
% pyenv versions 
# 3.8.5が選択されました。   
  system
* 3.8.5 (set by /usr/local/var/pyenv/version)

#バージョンを再度確認
#もしここでバージョンが変わっていない場合は、ターミナルを再起動すると反映されると思います。
% python --version 
Python 3.8.5

 
 
 
以上で、基本的には最新版のPythonが使えるようになります。