0

背景: Foundation の Scratch の Raspberry Pi バージョンの世話をしています。ほとんどの場合、これは Smalltalk プログラミング、VM 開発、およびシェル スクリプトでのいくつかの非常に苛立たしい瞬間の問題です。

現在、xrdpを使用して他のマシンからPiに接続するときに、UNIXのアクセス許可または関連する問題と思われるものに困惑し、悩まされています。Squeak VM に直接関係する問題ではないことはわかっています。これは、Google が同様の見た目の問題を持つ他のアプリケーションをかなり多く明らかにしたためです。私の問題の一部は、物事を絞り込むために何を検索すればよいかを本当に知るために、この分野について十分に知らないことです。

そのため、問題の説明 - 現在の Scratch システムは Squeak Cog VM ( https://github.com/OpenSmalltalk/opensmalltalk-vmを参照) で実行されます。これはとりわけ pthread を使用し、スレッドの優先順位を設定する必要があります。以前は一部の設定を変更する必要がありましたが、最近の (Raspbian) カーネルでは問題ありません。

xrdp を使用する場合を除いて、私は主に iMac への xrdp 経由で Pi を使用するため、これは苦痛です。これを処理するには、「sudo -E」を前に追加する必要があります。これは、開発者には許容できますが、一般ユーザーにはあまり適していません。VMのmakeプロセスでも使用される簡単なファイルコピーコマンドで同様の問題があり、スレッドや優先作業を使用しませんがsudo make、ターミナルウィンドウで実行する必要があります。

実験として、tightvnc を使用して、何かがうまくいくかどうかを確認しました。完全なインストール手順 ( https://www.raspberrypi.org/documentation/remote-access/vnc/ ) を読み、自動起動の init.d スクリプトなどを追加した後、sudo がいらない!万歳!もちろん、表示処理が遅く見えることに少しがっかりしましたが、気にしないでください。

悲しいことに、これは物語の終わりに近づいていません。私は最近、日本語やその他の非 Latin1 タイプ言語のユーザーがより簡単に文字を入力できるようにする X コンポジション入力ウィンドウ システムのサポートを完成させる作業を行っています。iBus、Anthy、多くのフォントをインストールし、いくつかのセットアップを行うと、かなり賢いです。しかし、直接ディスプレイを備えたPiでは完全にうまく機能し、xrdpディスプレイでは問題なく動作しますが(もちろん、最初にScratchを実行できるようにするためのsudoを使用します)、vnc経由では、須藤。

グーグルで検索すると、関連する XCreateIC() 呼び出しで奇妙な方法で問題を抱えている他の多数のアプリケーションが表示されます ( https://github.com/OpenSmalltalk/opensmalltalk-vm/blob/Cog/platforms/unix/vm-display-X11/を参照)。 sqUnixX11.c line:1659 を​​使用していますが、vnc に接続できるものは何もありません。さらに煩わしいことに、ターミナルではコンボ ウィンドウが正常に表示されます。

要約すると、直接表示 - pthread 優先度またはコンポ ウィンドウ xrdp に問題はありません。pthreads 優先度に sudo が必要ですが、compo ウィンドウは正常に動作します。

私が必要としているもの: これらの問題の原因と、場合によっては解決策を見つけるのを手伝ってください。「sudo」を必要としないように xrdp を構成する方法があれば便利です。

4

1 に答える 1

0

嬉しいことに、同僚がこれに対する非常に効果的な答えを見つけました。/etc/pam.d/common-session ファイルに 1 行追加する必要があるようです。ファイルを編集し、セッションに必要な pam_limits.so を追加します。これにより、以前にパーミッション関連の問題があったすべてのアプリケーションを xrdp で実行できるようになります。PuTTY を使用して同様の問題を抱えていた別の Scratch ユーザーは、その問題も解決したと報告しています。

于 2016-09-01T02:25:48.623 に答える