ラズベリーパイでデスクトップアプリを作れるのか試してみる

ラズベリーパイでデスクトップアプリが作れるのか試してみたいと思います。

Pythonでやってみたいので何とか頑張ってみます。

 

最初なのでHelloからスタートです。

・hello.py

#!/usr/bin/env python
from tkinter import *
 
root = message()
Label(root, text='Hello World').pack()
root.mainloop()

できたらpython3で実行します。

$ python3 hello.py

 

ちっこいウィンドウで表示されました。

ラズパイ28

 

やりたいところまではまだまだ先だな・・・。

 

パソコンで小さな親切大きなお世話と感じる機能!

パソコンを使っていて自動的に勝手に更新されて、なんじゃーこりゃー、とか、うっとしーなーとかありませんか?

意外と多くて徐々にピックアップしていきます。

 

地味に名称(表示機能)が変わる

以前のWindows10の「スタートボタン」を右クリックしたときに表示されるメニュー。

コントロールパネルがあるのですが・・・

win0

 

Windows Update を行っていた後のWindows10の「スタートボタン」を右クリックしたときの表示メニュー

win1

 

もちろん起動するウィンドウも異なります。コントロールパネル→以前からのなじみがある画面。

設定→Windows10の設定画面

 

コントロールパネルを呼び出すのには「検索窓」で「コントロールパネル」と検索しましょう!

コルタナにコントロールパネル!って叫んでもよいかも?→叫んでみたらWEB検索結果が開きました・・・( ノД`)シクシク…

 

 

 

Windows10のIMEの切り替え時に画面中央に表示される

入力を切り替えるごとに表示されて、正直にヤな気分にさせます。

変更するには「コントロールパネル」「時計、言語、および地域」>「言語」「言語のオプション」から「Microsoft IMEの設定」を開きます。

 

win2

 

IME入力モード切替通知の「画面中央に表示する」にチェックが入っているので外します。

ime

 

これで表示されなくなります。

 

ブラウザのファイルダウンロードとかスキャンがかかるけど終わらない

ウィルス対策製品がいろいろと便利に安全に日々していただけいるので安心ですが、時として動作が完了しないとかご勘弁を!ということがまだまだ多くあります。

マカフィーの場合は、WEB保護は、WEBadviserというプログラムがインストールされているのでこちらを削除します。

 

 

 

 

思いついたときにまた更新します。

 

Raspberry Pi 3 でマイクラを初めて見る

かねてからラズベリーパイを試してみたいと思っていましたがなかなか時間がなくて・・・

ちょっと思い切ってやってみることにました。

 

何を買ったらというのがよくわからないのでざっくりと調べて下記のアイテムを購入!

まず、ラズベリーパイの本体

電源

ケース

マイクロSD

をまとめて購入。

 

組み立て

マイクロSDは、ラズパイの裏面にスロットがあります。あ、マイクロSDはOSを入れてからさしましょう!!

ラズパイ

 

ヒートシンクを付けました(2つ)

ラズパイ2

あとはケースに入れて完成!!

 

 

セットアップ!

OSをインストールします。

下記のサイトにいき、必要なファイルをダウンロードします。ラズパイ初心者は「NOOBS」らしいですが、

マインクラフトが最初から入っている「raspbian」にします。

https://www.raspberrypi.org/downloads/raspbian/

・ダウンロードが遅い場合。下記のサイトでも試してみましょう。

http://ftp.jaist.ac.jp/pub/raspberrypi/NOOBS/images/

http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian/images/

 

 

 

 

SDに書き込むために「Etcher」をダウンロードします。

https://etcher.io/

ラズパイ10

 

マイクロSDをパソコンに接続します。

ダウンロードした「Etcher」を起動し、インストールを行います。その後起動

ダウンロードしたラズベリーパイのOSイメージを解凍してその中の「.img」ファイルをを選択します。

マイクロSDも選択されるので「Flash!」ボタンを押して書き込みします。終わるまでしばらく待ちます。

 

ラズパイ11

 

 

これでOSの準備ができましたのでマイクロSDをラズベリーパイにセットし、HDMIや電源を接続して起動します。

電源LEDは光るので電源供給されているのかのチェックはできます。

 

えーとこれで画面に何か映るはず!!

 

 

さらっとデスクトップが表示されます。

 

初期情報

初期ユーザーとパスワード

ユーザー名 pi
パスワード raspberry

*何かと使うのでメモしておきます。

 

 

キーボードの設定

初期は、英語キーボードになっていて不便なので日本語キーボードに変更します。

下記のコマンドを入力します。

$ sudo raspi-config

 

「4.Localisation Options」を選択します。

 

下記の内容を変更

・Change Locale→ja_JP.UTF-8 UTF-8

・Change Timezone→Asia/Tokyo

・Change Keyboard Layout→Generic 105-key(intel)PC→Other→Japanese→「The default for the keyboard layout」→「No compose key」→「Finish」

 

日本語入力をインストールする

anthyというツールを利用します。

$ sudo apt-get install ibus-anthy

iBusの設定をクリックします。

ラズパイ25

ラズパイ26

 

「OK」ボタンをクリックします。

 

入力方法をCtrl+スペースにします。

ラズパイ27

 

設定後、ラズベリーパイを再起動します。

 

これで日本語入力ができるようになりました。

 

 

 

 

ネットワーク接続

DHCPで行うのでLANケーブルをそのままさすだけ。

 

遠隔操作設定:TEAM VIEWER

そのままの操作でもよいのですがリモートツールをインストールします。使うのはTeam Viewer Host

 

下記のサイトからTeamViewerをダウンロードします。

https://www.teamviewer.com/ja/download/linux/#downloadAdditionalDownloads

 

 

ラズパイ21

 

ダウンロードしたファイルをダブルクリックしてインストールを開始します。

アカウントの割り当てを行い、これでリモートで操作ができるようになります。

→Minecraft -Pi Editionを起動したところ画面が真っ黒なので遠隔だとだめでした・・・。

 

 

で、マインクラフトでプログラムをするには?

 

「ゲーム」>「Minecraft Pi」で起動します。

操作方法

キー アクション
W
A
S
D
E インベントリ
スペース ジャンプ
2連打スペース 飛ぶ・降りる
ESC ポーズ・ゲームメニュー
Tab マウスカーソルの解放

 

であそべます・・・・

 

でなくて、プログラム方法は

 

本題のプログラミング方法は?

マインクラフトの起動中、Worldが生成されたあと、Tabキーを押してマウスを解放します。

そこでPythonウィンドウを開いて操作を行うようになります。(Pyton2ね)

 

まずは初歩のHello Worldから。

from mcpi import minecraft

mc = minecraft.Minecraft.create()

mc.postToChat("Hello world")

うまくキャプチャーできなったので画像はありませんが「Hello world」が画面上に表示されます。

 

自分がどこにいるのか知る

どこにいるのか知らないで、ブロックを置くことはできません。それなのでこのコマンドを使って場所をしる方法を覚えます。

x, y, z = mc.player.getPos()

*x,y,zの値を持っているとのことなのでそれぞれを取得する

 

 

スクラッチで利用するには

Scratch2MCPIのインストールを行います。

 

$ curl http://scratch2mcpi.github.io/install.sh | sh

インストールが完了するとデスクトップの下記のアイコンが表示されます。

ラズパイ23

緑の旗アイコンをクリックすると実行されて「hello…」が表示されればOKです。

ラズパイ24

 

とのことで、また次回へ。

 

マインクラフトAPIは下記のサイトにリファレンスがあるとのこと。

http://www.stuffaboutcode.com/p/minecraft-api-reference.html

 

 

 

 

iOS11へのバージョンアップに向けて→iTunesを利用してバージョンアップ

iOS11 が9/19(日本時間20日)にリリースされるようです。リリース直後にアップデートして文鎮化という話はよく聞きますのでまずは、事前準備をしておきましょう。

 

・現在のiPad、iPhoneのデータをパソコンへバックアップ。(クラウドでもよいがパソコンへ取るのが便利なので)

*久々にパソコン版のiTunesを利用する場合、バージョンアップからスタートするのでバージョンアップもしましょう。

・現時点でのiOSの最新版にする(一気に上げると不具合がでそうなので)

・Apple IDのパスワードを思い出す。意外と忘れているので。

・今、ハマっているアプリがiOS11に対応するのかどうか・・・まあ、気にしない方も多いかもしれないですね。

 

例のごとく、初期版は不安定なこともおおいので、安全にバージョンアップしたい人はiOS11リリース後、最低でも2カ月ぐらいは待たれたほうが良いかと思います。

 

iTunesを利用してiOS11へバージョンアップします。

こっからはリリースされたのでiOS11へのバージョンアップ作業方法を残しておきます。

・iPhone(iPad)をパソコンと接続し、iTunesを起動します。

・下記のメッセージが表示されるので、「ダウンロードして更新」ボタンをクリックします。

ios11_1

 

・「次へ」ボタンをクリックします。

ios11_2

 

・規約は「同意する」ボタンをクリックします。

・ダウンロードが開始されます。何も表示されないのでiTunesのiPhoneマークをクリックすると下記のように実行状況がわかります。

ios11_3

しばらくかかるのでそのまま放置となります。

 

・メッセージが表示され、バックアップを暗号化するかしないかと聞かれるので今回は「暗号化しない」にします。

ios11_4

 

・パスコードを聞かれるので入力します。

ios11_5

 

・iPhone(iPad)側が黒い画面になって進行中が表示されます。しばらく待ちます。

・そのうち、iPhone側でパスコードの入力画面が表示されます。

・iPhone側にアップデートが完了しましたが表示され、Apple ID情報を入力して進みます。

・そのほか、画面に表示されたメッセージに従います。その後、完了します。

 

変わったっと感じる機能

下からスワイプでメニューを表示したとき。AirDropの受信先設定は、左上の電波類のところを3Dタッチで表示されるのでぐいっと押します。

ios11_6

 

そうすると下記のようにメニューが表示されます。

ios11_8

 

 

緊急SOS機能

ヘルスケアに登録してある連絡先に通知が届くとのこと(設定アプリより設定)

ios11_7

 

あといろいろと変わっているのでのちのちと。

 

iOS11で画面共有ができるようになったということで試してみます。こっちの記事を参照

 

 

下記の表示が出た場合はアプリがiOS11では使えない。アップデート待ち。

ios11_16

 

WebArena「SuiteX」でWordPress動作させようとしたらPHPの「Out of memory 」でつまずいた

今やWordPress動かすためにこんなに苦労するとは・・・。えーと、PHPのバージョンは5.1!!!だったので下記のように記述してCGIタイプのPHPで5.3を動作させた。

AddHandler application/x-httpd-php53 .php

 

とりあえずWordPressはこれで動いたけど・・・

 

プラグインによっては下記のエラーが発生して動かない。

PHP Fatal error:  Out of memory

 

WebAreaサイト上で、PHP5.3のCGIだと、「.user.ini」でphp.iniの個別ができるそうだが詳細が見当たらない。

 

「.user.ini」は、他のドキュメントを参照したところ、PHPの実行の先頭ルートフォルダにあれば、よいとのこと。

・「.user.ini」

post_max_size = 20M
upload_max_filesize = 20M
memory_limit = 256M

 

設定した値が反映されているのかはphpinfoを使って確認する

<?php
phpinfo();
?>

 

これだけでは何ともなので・・・

wp-config.phpにメモリ制限を追加

define('WP_MEMORY_LIMIT', '96M');
define('WP_MAX_MEMORY_LIMIT', '256M');

 

うーん、それでも「Out of memory」が発生するプラグインがある・・・。CPIでは問題ないんだけど・・・。

結局プラグインのバージョンを下げたりメモリ調整したり、1ページあたりのメモリ容量に気を付けたりした。

PHP5.1ベースだと最近のWordPressのプラグインを動作させることは厳しいと思ったほうが良いかな。