Ubuntu 16.04 で最新の xrdp をビルドした

最近、X11RDP-o-Matic を使うと、ビルドエラーになってしまって、最新の xrdp に更新できません。
なんとかならないかなと色々調べてみたら、launchpad で Ubuntu 向けのビルドを見つけました。

https://launchpad.net/ubuntu/+source/xrdp

Ubuntu 16.04 で、開発中の 17.04 向けの最新パッケージをビルドできれば良いなと考えて、調べてみたら以下のページを見つけました。

http://gihyo.jp/admin/serial/01/ubuntu-recipe/0152

上記記事にほぼ従ったのですが、不足パッケージについては debian/control の内容を参考にしたり、ビルドを行ってエラーになったら対応する事を繰り返したほうが良さそうです。

そういえば、ipv6 を無効にすると xrdp が起動できませんでした。
ローカルの Xubuntu でハマってしまいました、
コンパイルオプションに “–enable-ipv6” が指定されているのが原因です。
どうしても ipv6 を無効にした状態で xrdp を使いたい場合は、ビルドする前にファイルを修正して、コンパイルオプションを指定している行を削除します。

カテゴリー: XRDP, ソフトウェア | コメントする

Raspberry Pi の Xubuntu で xfce4-dockbarx-plugin を使えるようにする

Raspberry Pi の Xubuntu では、xfce4-dockbarx-plugin がなぜかインストールできなかったので、依存関係を解決してビルドしたところ、正常に動作しました。

インストールが完了します。
ついでに、blueman というアプレットが異常終了するので、起動しないように設定しておきます。

blueman-off

一旦ログアウトして、ログインし直します。xfce4-dockbar-plugin をパネルに追加します。

dockbarx-add-1

dockbarx-add-2

dockbarx-add-3

カテゴリー: Raspberry PI | コメントする

xrdp の devel ブランチをビルドする

X11RDP-o-Matic を使って xrdp の devel ブランチをビルドしようとしましたが、エラーでビルド出来ません。
色々調べたけどわからず、github で質問してみました。

Can not build XRDP debel branch.

自作の rootless ブランチを使ったら出来るよーとの事だったので、やってみたけどエラー。
再度質問してみました。

Can not build XRDP debel branch. — metalefty/X11RDP-o-Matic rootless branch.

“–branch devel” オプションが抜けてたらしい。ありがとー。

以下の手順で成功しました。

カテゴリー: 未分類 | コメントする

Raspberry Pi 3 Model B で 5GHz の Wi-Fi を使う

Raspberry Pi 3 Model B ネタです。

電源さえあれば使えるように無線 LAN を使いたいのですが、残念ながら内蔵無線 LAN は 2.4GHz のみで 5GHz が使えません。
我が家では電子レンジや付近の干渉が多いため、5GHz じゃないと使いものになりません。
このため、以前購入していた ELECOM WDC-433DU2HBK を使うことにしました。

まず、ネットで検索してみると WDC-433DU2HBK のチップセットは RTL8811AU らしいのですが、Raspberry Pi の標準のカーネルモジュールには含まれていないようです。RTL8812AU 用のモジュールで対応できるようです。

通常の Xubuntu であれば、linux-headers をインストールすれば、簡単にモジュールをビルドするためのファイルがインストールできるのですが、Raspberry Pi ではちょっと手間をかける必要があるようです。

参考 : カーネルモジュールのコンパイル – RTL8812AUとMT7610U (Raspberry Pi) [メモ]
参考 : Ubuntu 16.04 LTSで、BUFFALO WI-U3-866D を使う

最新のファームウェアとカーネルに更新

カーネルソースを取得

モジュールをビルド・インストール

カテゴリー: 未分類 | コメントする

Raspberry Pi 3 model B に Xubuntu 16.04 をインストール

子供へのサービスで、ちょこっと大阪日本橋のシリコンハウスというお店へ行ってきました。
子供の目当てはLEDネームプレート。パソコンを使って好きな文字列を登録して遊んでいる。
なかなか面白いものです。

さて、モノのついでと言ってはなんですが、ここまで運転してきた自分への慰労の意味もあり、以前から欲しかった Raspberry Pi を購入しました。
特に目的は決まっていないのですが、いじっているうちに何か見つけると思います。
まずは手に入れて、失敗したり、限界を感じたりする事自体が楽しいと期待しています。

Xubuntu 16.04 のインストールに関しては、以下を参考にしました。
Ubuntu Weekly Recipe 第421回 Raspberry Pi3とXubuntu 16.04 LTS

準備するもの
・システムのインストール作業用のパソコン(Xubuntu 16.04)
・microSDHC 16GB or 32GB
・Raspberry Pi 3 Model B
・HDMI接続可能なモニタ(デジタルテレビ)
・USBキーボード + マウス
・LANケーブル
・HDMIケーブル

.xz 形式の解答は xz コマンドで出来るようです。
ダウンロード/ にダウンロードした場合、SDカードが /dev/sdb の場合は以下のようにすれば、インストール完了です。

その後、GParted を使って、システムパーティションを 4GB を残して拡張してから、SWAP パーティションを作成しました。

Raspberry Pi に microSDHC カードを挿入ます。
Xubuntu の起動時には GUI による言語の選択や地域の設定と若干の追加インストールがあるので、モニタとキーボード・マウスとLANケーブルを接続しておきます。
最後に microUSB 端子の電源を差し込めば起動です。

言語の選択、地域の選択、ユーザー名・ユーザーID・パスワードの設定を行うと、アップデートが実行されますが、アップデートはリポジトリを国内のものに修正してからの方が良いと思われるので、キャンセルした方が良いようです。

ログイン画面が表示されるので、ログインして「ターミナルエミュレーター」を起動します。
そして、以下のコマンドでスワップパーティションを有効にしてファームウェアを更新します。

以下を追加。

再度ログインして「ターミナルエミュレーター」を起動して、コマンドを実行します。

以下のように修正。

カテゴリー: Raspberry PI, ソフトウェア, ハードウェア | コメントする

xrdp で xorgxrdp を使う – ビルド編

さて、遅くなりましたが、予告していたビルド手順です。
ビルドは以下の環境で行いました。

・Xubuntu 16.04 amd64
・X11RDP-o-Matic

以上です。

次は設定です。

カテゴリー: XRDP, ソフトウェア | コメントする

PHP の isset() と array_key_exists()

以下の様な変数で、入力値の初期値を設定しようとしました。

$field[ $n ][ ‘default’ ] が設定されていたら初期値として使おうとしたのですが、isset( $field[ $n ][ “default” ] ) とすると、null が設定されている場合に false となってしまいます。
色々調べたのですが、こういう場合は array_key_exists( $field[ $n ][ “default” ] ) とすれば良いようです。

カテゴリー: 未分類 | コメントする

xrdp で xorgxrdp を使う

現在、xrdp のバックエンドには、以下があります。

・VNC — VNCサーバーをバックエンドとして使う
・X11RDP — 自前で構築した X11 サーバーをバックエンドとして使う
・xorgxrdp — ドライバ経由でシステムの X11 サーバーを使う

現在は、ビルドも早く、最新の X11 環境を利用できる xorgxrdp へシフトしつつあるようです。
インストールして試していますが、解像度を 24 ビットに設定すれば、安定して快適です。

次の投稿でビルドについて、その次の投稿で設定について説明する予定です。

ビルド編

カテゴリー: XRDP, ソフトウェア | コメントする

XRDP で「変換」キーが入力できるように対応した — その後

前の記事の「XRDP で「変換」キーが入力できるように対応した」では、キーボードレイアウトのデータを変更して対応しました。
ですが、恒久的に対応するには xkeyboard-config に修正をマージしてもらう必要があります。
さて、どうしようかなと考えていたのですが、なんとバージョン 2.11.1 から対応済みであることが判明しました。
xkeyboard-config 2.12 でビルドした /usr/share/X11/xkb 以下をコピーしても大丈夫と思われます。

Ubuntu 16.04 では xkb-data 2.16 ですので、次の LTS では何もしなくても大丈夫です。

カテゴリー: 未分類 | コメントする

XRDP で「変換」キーが入力できるように対応した

※ 「XRDP で「変換」キーが入力できるように対応した — その後」へ続きます。

あきらは Xubuntu 14.04 に X11RDP-o-Matic で XRDP 導入して Windows 10 のリモートデスクトップ接続で操作しています。

Microsoft の RDCMan だと、リモートデスクトップ接続で高 DPI 環境に対応できそうだとの情報を掴んだので、Surface Pro 3 で試したところ、表示は対応出来たのですが、「変換キー」が入力できませんでした。自分は漢字入力を Mac 風のキーバインドにしているため、変換・無変換キーが使えないと不便でしかたありません。

2日ほど色々調べて、設定ファイルを修正するだけで対応できることが判明しました。
原因は xkeyboard の base ルールの pc105 で、XF86AudioMedia が Henkan を上書きしてしまう事でした。
現在では evdev ルールが主流で、そちらでは同様の問題は無いため何年も放置されているようです。

以下、X11RDP-o-Matic で XRDP を導入している場合の修正内容です。その他の方は参考にして下さい。

/etc/xrdp/xrdp_keyboard.ini

/usr/share/X11/xkb/rules/base

/usr/share/X11/xkb/symbols/inet

/opt/X11rdp/share/X11/xkb/rules/base

/opt/X11rdp/share/X11/xkb/symbols/inet

※ 「XRDP で「変換」キーが入力できるように対応した — その後」へ続きます。

カテゴリー: 未分類 | コメントする