カテゴリ:X-Window( 10 )

Windows Creators Update で Git起動 備忘録 - Bash on Ubuntu on Windows (8/22)

Git on WindowsをインストールしWindows環境で作ったGitを、Bash on Ubuntu on Windowsで開く。

せっかくWindows subsystem for linux を使っているのに、Windows環境でGitを使うためにGit for Windowsをインストールすると、MinGW64がインストールされてしまう。

なんかくやしいのでWindows環境で作成したリポジトリ .gitディレクトリ はどこに出来ているのか、探したがすっかり忘れていた。
で以下備忘録。

Git for Windowsを久々にバージョンアップして起動すると、起動時ダイアログに「~/Documents/bascom」に既存のリポジトリがあるとの事。
なるほどー、/mnt/c/Users/xxxxx/Documents/bascom/にあるのかー。
そこへ移動してからgitkをコマンド起動。Raspi開発で使ってたなじみの画面が。
a0034780_19564578.png
Windowsの方は[スタートメニュー][Git][Git Bash]起動後、~/Documents/bascomに移動してからgitkをコマンド起動。
うん。同じ画面が出た(なぜかメニューフォントは英文字だが)。
a0034780_19565916.png
Windowsの方はスタートメニューの同階層のGit GUIを起動してコミット用画面が出る。
a0034780_20004033.png
ちなみに、GUI上からの画面遷移は、Windows版もBash on Ubuntu on Windows版も同じ。
Git GUI(コミット)からgitk(一覧)画面へは、[メニュー][リポジトリ][ブランチ HEADの履歴/全てのブランチの履歴]から。
gitk画面からGit GUIへの遷移は、[メニュー][ファイル][Git GUIの開始]。

あー、でもBash on Ubuntu on Windowsのgitkで編集かけると、Linuxでファイルを生成する事になり、Git for Windowsのgitkなら、Windows環境でLinuxファイルを編集する事になりまずいか。んー、仕方ない。共通のファイルはLinux → Windows 方向しか編集は保証されないから気を付けないと。日本語はBash on Ubuntu on Windowsの方がちゃんとしてるのにね。

また最近GitHubに脆弱性が出たのでBASCOM-AVRの方はローカルで使おう。


[PR]
by k1segawa | 2017-08-22 19:26 | X-Window | Comments(0)

Windows Creators Update で Xlib-GUI開発 - Bash on Ubuntu on Windows (8/1)

(2017/8/2 追記:BoW 64ビット環境で動作する実行形式をダウンロード可能にした。Linuxでも動作可)
a0034780_23412233.png
Windows Subsystem for Linux (Bash on Ubuntu on Windows) で コンソールCUIだけでなく、GUIも動作・開発出来る環境の構築をまとめておく。

[Windows用X Serverのインストール]
・VcXsrv

もちろんXmingでもよい。

[Bash on Ubuntu on Windowsでxterm系の端末をインストール]
・lxterminal

apt-get install lxterminal
※P.S.でWindows上で端末を用意する方法を追記。ただしCreators UpdateではBashがマルチバイトにきちんと対応しているので特にlxterminalやわざわざmsys2を立ち上げる必要はなくなった。Bashを複数起動すればよい。

[エディタ・コンパイラ]
・vi/vim/gvim
・gcc,g++

もちろんEmacs系でもいい。g++はなくてもOK。

[日本語関係]
・uim-fep
・日本語フォント(lxterminal設定-takao ゴシック)
・nkf
・LANG=ja_JP.UTF-8 定義

[X Window System開発環境]
・xserver-xorg
・xorg-dev

これだけ入れておけばとりあえずOK。
詳しくは前記事のx-windowカテゴリで。

これだけ入れて次のxlibのサイト様のソースをコンパイル。
X アプリケーション工房 Xlib 編 (2) - 68user's page

xlib-2.cをダウンロード。
(ダウンロードもfirefoxをインストールしてX Window上で行うのが簡単)

これはソースに#include <string.h>の追加が必要。
コンパイル方法もサイト様の通り、cc xlib-2.c -o xlib-2 -lX11 -I /usr/X11R6/include -L /usr/X11R6/lib
実行後、マウス左ボタン押下の様子。
xlib-2
a0034780_22571911.png
xlib-3.cの場合はソースの日本語コメントが化けるので、
cat xlib-3.c | nkf -w > xlib-3u.c
でUTF-8に変換。
実行後の様子。
xlib-3
a0034780_23085462.png
この通りマウスで描画も可能。

xlib-4-1.cは変更なし。
実行結果。
xlib-4-1
a0034780_23114185.png
Pixmap関数で画像イメージの転送を繰り返し、円が横移動しているように見える。

xlib-4-2.cはサイト様のX アプリケーション工房トップページから取得。
ちらつかないとあるが、今のPCでは速すぎて逆にわからない。
xlib-4-2

大体これでOKだが、音だけはまだsoundデバイスへのアクセスがよくわかっていない。たぶんioctrl関数の辺りはwindowsとの間でまだ鬼門のような気がする。deamon errorがfirefoxで出てるし。

Ubuntu Desktopマネージャを動かすと、せっかくのマルチウィンドウがルートウィンドウ上の子ウィンドウになってしまうので今のままのVcXsrvの設定でHide Root WindowにしてDesktopマネージャは動かさないでおく(以前は別アプリXsvr Launcherだったが、バージョン1.19.2.0 64bitではタスクトレイアイコンのカスケードメニューにある)。

今のデスクトップはこんな感じ。昔もこんな風にtwmで、縦長のvi用端末とコンパクトなコンパイル・実行用端末を開いていた。
a0034780_23342246.png
上記のダウンロードできるファイルは、Linux elf形式 64bit 版 実行ファイル。なのでBoW 32ビット環境では動かないかも。スタティックリンクでないので、xserver-xorgでインストールされるライブラリが最低でも必要かも。
またstripしてないので実行ファイルのシンボルは見れる。
readelf -s オブジェクトファイル

P.S.
lxterminalなどのLinuxの端末が使いづらいと感じるWindowsユーザは次のサイト様からBashを動かすWindowsアプリをインストールするといい。


[PR]
by k1segawa | 2017-08-01 23:14 | X-Window | Comments(0)

Xlib での UI開発 を Windows 10 Creators Update上で - Bash on Ubuntu on Windows (7/28)

Windows 10 Creators Update後に、Xlibのソースをコンパイルできるようになるかと思ったら全然違った。
単に必要なライブラリが入っていなかっただけ。

こちらのサイト様で気が付いた。
xorg-devをインストールする。

sudo apt-get install xorg-dev

関連ライブラリも含め、100MBもいかない。

たったこれだけで、Xlib関数を使ったUI開発が可能になった。

ソースはこちらのサイト様から。

[簡単なソース]
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
Display *display;
Window w;

/* ディスプレイサーバに接続 */
display = XOpenDisplay(NULL);
if(display == NULL){
fprintf(stderr, "Cannot open display.\n");
exit(1);
}

/* ウィンドウを生成 */
w = XCreateSimpleWindow(display, DefaultRootWindow(display),
50, 50, 400, 300, 1,
BlackPixel(display, 0), WhitePixel(display, 0));

/* ウィンドウを表示 */
XMapWindow(display, w);

/* リクエストを強制的に送信 */
XFlush(display);

/* ウィンドウ表示を確認のため5秒間スリープ */
sleep(5);

/* ディスプレイサーバとの接続を解除 */
XCloseDisplay(display);

return 0;
}
[コンパイル]
cc sample.c -lX11 -o sample
[実行]
./sample
[結果]
どうよ、これで何でもできるぜ~

[PR]
by k1segawa | 2017-07-28 22:38 | X-Window | Comments(0)

Windows Creators Update してみた - Bash on Ubuntu on Windows(4/13)

Windows Updateで更新チェックしても、4月の不具合分しか落ちてこなかったので手動でインストールしてみた。

時間は深夜で3~4時間かかっただろうか。元に戻せるようだがそれにも何時間もかかるから充分時間のある時がよい。

気になる Bash & Ubuntu Linux環境だが、いつも通りこちらのサイト様が参考になる。
1)のBashの日本語表示の改善
2)Bashとコマンドプロンプト間のパイプ(PowerShellはもちろん、cmd.exeのバッチファイルの管理者権限無しでもOK)
3)/sbin/ifconfig等の実行(ネットワーク等の仮想ファイルシステムの正常化)
は、全てUbuntu 14.04.5のままでもきちんと実行できる。

記事ではディストリビューションUbuntuの 14→16へのアップグレードをしているが、Ubuntu独自のパッケージの不具合パッチが提供されないだけで、周辺パッケージやカーネルの不具合パッチは全く別なので今の所あせってアップグレードしなくても大丈夫かな。

uim-fep と Anthyの組み合わせでBash端末上で日本語入力してから、Backspaceキーで2バイト(古い)文字である漢字を1文字削除しても、きちんと削除されるようになった。もちろん環境変数LANG=ja_JP.UTF-8を定義した上で。shを子プロセス起動してLANG未定義だと1バイト分しか削除されず、表示が崩れるのは一緒(正常)。その様子は次の通り。(Bash端末上では日本語入力を起動すると無限ループになってしまっていたのだが、無事起動するようになった。- lxterminal等のXサーバ前提のコンソールはOKだった)

Backspaceキーを押す前
a0034780_15574017.png





正常
a0034780_15580810.png






LANG未定義時
a0034780_15585139.png






アップグレードする時は結構環境構築してしまっているので、パッケージリストを取得しておかないと。下記のサイト様を参考に。

2)のサイト様の例が地味に便利。
dir | bash -c "grep 2015"

今までcmd -c とやっていた所をbash -c にするだけ。bashはWindowsシステム環境変数にパスが通っているので、ショートカットにも可能。
grepを簡単にWindows上のコマンドプロンプト(cmd.exe)で利用できるのは、開発者にとってまさに待っていた機能だ。余分なツールを必要とせずBash on Windowさえ入っていればOKというのはいい。これが最もLinux - Windows 間でシームレスにやりたかった事だ。すばらしい。

Windows Creator UpdateではPowerShell が標準になったが、わざわざgrep等のUnixツール互換のコマンドレットを覚えなくてすむし、もうcmdのバッチファイルでいいんじゃないかな。

3)の/procなどの特殊ファイルがサポートされたおかげで、GUIパッケージ管理のsynapticがBash端末でもlxterminal上でもエラーログを吐かなくなった。
firefoxもまだちょっとエラーログを吐くが綺麗に起動する。
a0034780_18435239.jpg

こちらのサイト様も詳しい。

PowerShell

Ubuntu上でのバックアップ

MS IME 表示中央

既存ソフトの高DPI対応

未対応なCPU

P.S.
今はUbuntu用ビルドとかあるのかー。じゃあ14じゃなく16にした方がいいかも。あとsynapticはio_ctrl系もまだエラーになるな。

[PR]
by k1segawa | 2017-04-13 16:22 | X-Window | Comments(0)

Windows10 Anniversary Update で セキュリティと git とweb ブラウザ (10/4)

Bash On Windowsのショートカットを起動したら、勝手にアップデートが走った。
どうやらアップデートマネージャーがWindowsシステムに登録されていたらしい。
どうせ、セキュリティのために自分でもsudo apt-get update/upgradeするつもりだったので、オッケーだ。
ついでにBASCOM-AVRのBASICソースをバージョン管理するのに、gitも入れたい。
/mnt/c/Users/k1segawa/Documents/bascomに保存しているので、そこへ移動してから、
git init
.gitignoreファイル(git排除ファイル)を作成して色々な拡張子を追加しておく。
GUI操作できるようにgit-guiも追加する。パッケージマネージャーをlxterminal上で、
synaptic
と実行し、gitを検索。git-guiをインストール指定。
更新ボタンでインストール後、
gitk
で実行。
tk上のgit履歴ビューアーで、[ファイル][git guiの開始]でgit-guiが起動される。
Raspberry Piでも使って、github.comにも問題なくリポジトリが作れた実績があるので、不安はない。
synapticで詳細情報「Visit Homepage」へのリンクが見れないので、firefoxを導入する。その前にchromeの前身chromiumを入れて見たが実行時ファイルアクセスしたカーネルモジュールがパニックを起こしてコアダンプを吐いたので止めた。
firefox
で実行。沢山エラーを吐くが何とか起動した。
a0034780_00325222.jpg

BASCOM-AVRのソースをバージョン管理できるようになったので、同ディレクトリを指定してGit for Windowsでgit-guiを入れてもいいかな。
[PR]
by k1segawa | 2016-10-04 00:25 | X-Window | Comments(0)

Windows10 Anniversary Update で パッケージ管理 と 日本語入力(再) (8/30)

RaspberryPiで使用しているパッケージマネージャ synapticをインストール。
apt-getでもいいけど、何が入っているかGUIで調べやすい。

sudo apt-get install synaptic
sudo synaptic
で起動。
ionice: ioprio_set が失敗しました: 無効な引数です、と出るけど何とかOK。
a0034780_09525898.jpg
日本語入力はこちらのサイト様を参考に。
俺の Bash on Windows10 環境 - Qiita
sudo apt-get install uim-fep uim-anthy
上のsynapticでuimを検索してインストール指定してもいい。

~/.uim
(define default-im-name 'anthy)
(define-key generic-on-key? '(" " "`"))
(define-key generic-off-key? '(" " "`"))

次は、うちの環境では最後の行を定義するとbash on Ubuntuで起動したルートのbash自体がエラーになって、立ち上がらなくなって詰むのでコメントアウトしている。
~/.bashrc
export XMODIFIERS=@im=uim
#exec uim-fep -e bash
(ここまで)

lxterminal &
(lxterminal上で)
uim-fep

末尾行にantyh[An- R]と表示されれば成功。
コントロール+スペースで、ON/OFF
(各端末でuim-fep起動しなければならないので、ルートと区別する方法があれば何とかしたい)

詰んだ時の直し方:
デスクトップのbashショートカットを読む。コマンドプロンプト(管理者権限)を開き、
cd c:\windows\system32
bash.exe --norc (.bashrcを読み込まない)
cd /home/xxxxx (ユーザ名)
ed .bashrc (edで編集。総行数が表示される)
p (定義が最終行ならexec uim-fep -e bashと表示される)
d (カレント行削除)
p (最終行export XMODIFIERS=@im=uimと表示される)
w (書き込み)
q (ed終了)
bash - コマンド (プログラム) の説明 - Linux コマンド集 一覧表 - kazmax Linuxで自宅サーバー のサイト様でbashの起動オプション詳細を参照の事。

[PR]
by k1segawa | 2016-08-30 09:55 | X-Window | Comments(0)

Windows10 Anniversary Update で Solarized カラーを vi と ls と lxterminal に適用 (8/25)

Windows10 Anniversary Update で lxterminal を 起動して主にそこで作業しているのだが、Windowsの画面に合わせて白地(肌色も可)に黒の文字で表示したい。
lxterminalは[編集][設定]で前景色・背景色を変えられる。
しかしそれで変えても今度はlsの出力で、実行ファイルの表示が黄緑で白地だと区別しづらい。viを起動するとCソースのキーワードの色も同じように区別しづらい。lsはLS_COLORSという変数で変えるらしいが、viはどうなるのか。

そこで色の事はSolarizedというのが綺麗らしい。
これに合わせる。
lsとviはカラースキームというのが対応しているが、未対応?のlxterminalはそれらしく設定する。

lxterminal:
こちらのgithubから、
My ~/.config/lxterminal/lxterminal.conf with solarized colors
[general]
fontname=Takaoゴシック 10(←各自の環境によって変わるのでここは変えない)
selchars=-A-Za-z0-9,./?%&#:_
scrollback=1000
bgcolor=#fb64f230d695
bgalpha=65535
fgcolor=#000000000000
disallowbold=false
cursorblinks=false
cursorunderline=false
audiblebell=false
tabpos=top
hidescrollbar=true
hidemenubar=true
hideclosebutton=true
disablef10=false
disablealt=false
これを~/.config/lxterminal/lxterminal.confに、バックアップしてから修正する。
新たに起動すると、背景が肌色になる。

ls:
dircolorsというコマンドが必要らしい。なければapt-get。
またはcoreutilsというのを入れるのかな。こちらのサイト様を参照。
LS_COLORSを設定しよう - Qiita
dircolors-solarizedのリンク先が以下のgithubなので、コマンドは以下の通り。
mkdir -p ~/downloads/dircolors-solarized (ダウンロード先を作成)
cd ~/downloads/dircolors-solarized
git clone http://github.com/seebi/dircolors-solarized
(gitが入ってないならまたapt-get。ここで実行してもOK)
ずーっと奥にdircolors.ansi-universalがある。
とりあえずそこへcdで移動。

設定はこのファイルをまたどこかに置く(直接参照してもいいけどあとでdownloadsごと移動したら困るので)。
mkdir ~/settings
cp dircolors.ansi-universal ~/settings/ (settingsというディレクトリの下にコピーする)
cd ~
vi .bashrc
一番下に追記。
eval $(dircolors ~/settings/dircolors.ansi-universal)

これでlsで実行ファイルは黄緑→赤になる。
ディレクトリは青→水色、ファイルは黒→緑。universalだから黒地でも見やすいようだ。

vi:
こちらのサイト様を参考に。
最強カラースキームと言えば SOLARIZED だよね! | blog.remora.cx
やっぱりdownloadsに移動して、
mkdir solarized
cd solarized
git clone git://github.com/altercation/solarized.git
cd solarized (かぶった)
ここにvimのがあるので、
これの中身を.vim直下にコピー。
cp -r vim-colors-solarized/* ~/.vim/
一応これでviでソースを開くとcのキーワードが黄緑→薄い茶色、型が緑になった。

lxterminalの色に関わらず、vi独自にlightとdarkを切り替えられると、このサイト様の「vim-colors-solarized の設定」にある。少し異なるが次のように~/.vimrcに追記する。
let g:solarized_termcolors=16
let g:solarized_termtrans=0
let g:solarized_degrade=0
let g:solarized_bold=1
let g:solarized_underline=1
let g:solarized_italic=1
let g:solarized_contrast='low'
let g:solarized_visibility='normal'
syntax enable
set background=dark
colorscheme solarized
コントラストはnormalだとlightの時黄色が全く見えない。
黒地はこれが一番見やすいかも。白地(肌色も)ならこの追記自体をしないのがよい。
lxterminalの白地の背景がviのデフォルトカラーと合っているので。

画面はlxterminalが白地と肌色とviの黒地(normal+dark)で、黒地はキーワードが見づらい。ディスプレイの調整で明るさとブルーを減らしているせいもあるが。
if文は茶色がわかりやすいようにマウスで反転させている。

[lxterminal:白地 & .vimrc:設定無]
a0034780_19270698.jpg
[lxterminal:肌色 & .vimrc:設定無]
a0034780_20513911.jpg
[lxterminal:何でもいい & .vimrc:設定normal+dark]
a0034780_20515599.jpg
lsがカラー化した時は嫌だったけどこれなら使っていけそうだ。
[PR]
by k1segawa | 2016-08-25 18:35 | X-Window | Comments(0)

Japanino ArduinoISPで ATtiny13 でPWM書込み (3) - GNU Global による解析 (8/21)

(2016/8/25 修正)
前々回の記事で、arduino IDEの「analogWrite」関数はPWMか?という事で、
arduino1.0.5-r2のソースをダウンロードして、(必要なかった)自動的にctagsのような物を作って解析しやすくしてくれるGNU Globalというツールを入れてみた。
下の方にArduino 1.0.x の source code に arduino-1.0.5-src.tar.gzがあるので、有名どころの解凍ツールならtarもgzipもサポートしてるのでそれで解凍。

このあとWindows10 Anniversary Updateで入れたBashとX-Windowで、lxterminalを起動して、GNU Globalをapt-getする。
Ubuntuが入っているので足りないパッケージはその都度入れてもらうとして、コンソール上はほぼフルに動く。

まずはBash on Ubuntu on WindowsのショートカットとVcXsrvのショートカットを起動して、Bash起動。
lxterminal &
sudo apt-get install global (だったかな?)
こちらのサイト様を参考に。
[Linux][開発] GNU GLOBALとvimで快適な開発環境を手に入れる
cd /mnt/c/(arduino-1.0.5-r2のソースを展開したディレクトリ)/arduino-1.0.5-src
global -v

cd /mnt/c/(ソースではなくarduino-1.0.5-r2自体を展開したディレクトリ)
gtags
ls -CでGPATH 等の解析結果が出来ていることを確認。
プロンプトが長いので別シェル起動。
sh
試しにanalogWriteをチェック
global analogWrite
global -x analogWriteで詳細。
cd /usr/share/doc/global/examples
gzに圧縮されておいてあるのでホームへコピー
mkdir -p ~/.vim/plugin
cp gtags.vim.gz ~/.vim/plugin
cd ~/.vim/plugin
gzip -d gtags.vim.gz
あと次の内容を .vimrc に書込み。

map <c-g> :Gtags
map <c-h> :Gtags -f %<cr>
map <c-j> :GtagsCursor<cr>
map <c-n> :cn<cr>
map <c-p> :cp<cr>
<>は半角にする

元のディレクトリに戻るためにシェルを終わらせる。
exit
最初の解析済みディレクトリに移動したので、
vi .
viとの連携はこちらのサイト様を参考に。
GNU GLOBALとvimで巨大なコードでも快適にコードリーディング

あとは色々参考にして。ctagsはUnix/LinuxのツールだがSystem Vにはあったが最近はどうだっただろうか。lintとかもなくなったような気が。秀丸にもtagsを作る機能があるのでそれを使えばこれよりは機能は少ないが関数ジャンプくらいは出来たはず。grepがキー割り当てが惜しいのでctl+Gを再割り当てすればよい。
sakuraエディタもctagsを持って来て入れれば関数ジャンプや変数定義参照は出来る。Grepもあるし、検索に正規表現をONにし、ベースディレクトリ表示ONにすればctl+Gで呼び出せるし、さらにアウトライン解析をメインウィンドウにドッキングするとgrep結果画面でメソッドツリーという関数一覧が出てかなり使える。
あれ?globalいらない?

globalなら
vi .
ctl+G
analogWrite
で行ける。

sakuraエディタなら、
[開く][Arduino.h(何でもいい)]
ctl+G
検索キーワードにanalogWrite、ディレクトリに現在のディレクトリを選んで実行。
1行ずつしか表示されないgrep結果からアタリを付けて選ぶ。
アウトライン解析(あらかじめ実行)画面から関数名analogWriteを選ぶ。

globalの方が手数は全然少ないし、アタリを付けなくてもダイレクトに正しい定義に飛ぶ。調べたい単語のどこにでもカーソルを置いてctl+Gで、さらにEnterキーでその単語を補完してくれるので、入力も省略できる。
不便でいいならWindows上だけでいいが、やはりglobalの方が圧倒的に早い(キーを覚えるのはちょっと大変かも)。(ctl+I,Oで進む戻る :q 2回で終わるなど)

結局digitalWriteを0と255の時使って、中間値は下のようにタイマーでPWMをセットしてる。
// connect pwm to pin on timer 0
sbi(TCCR0, COM00);
OCR0 = val; // set pwm duty
アナログ出力をデジタル的に実現している。

あー、エディタはMS ゴシックが欲しいな。

[PR]
by k1segawa | 2016-08-21 21:41 | X-Window | Comments(0)

Windows10 Anniversary Update 日本語表示 (8/11)

前の記事でとりあえず、X-Windowは動くようになったが、Ubuntuのデスクトップはどうなのか?

試しにXlibとか一緒に入れてみた。
sudo apt-get install xserver-xorg
sudo apt-get install ubuntu-desktop

あと、ホスト名が未接続ですうんたらかんたらと出るのは、
sudo vi /etc/hostname
で定義されているホスト名が/etc/hostsに書いていないかららしい。
sudo vi /etc/hosts
で1行目のlocalhostの定義をコピーして2行目に、自分のホスト名(プロンプトのUsrID@ホスト名)を定義。
127.0.1.1 ホスト名
で一旦bash終了(rebootコマンドがないので)
毎回export DISPLAY=:0 (上記の定義後は127.0.1.1:0.0が正式)するのも何なので、
sudo vi .bashrc
で文末に定義を追加。

ん~、sudo start xdmやらなんやらしても立ち上がらない。
まだ足りないんだ~、って調べてたらどうやらまだX-Window System自体はうまくいかないらしい。
Ubuntuのバイナリを実行することは出来るし、Xserver on Windows(VcXsrv)が動いてるから行けると思ったんだけどな(ps -eafしても全くプロセス動いてないしな)。
initdの設定みたいなのから書かないとダメ?

まあgccも入ったし、日本語フォント入れてターミナルで入出力できればいいか。
sudo apt-get install gcc

少し画面が見づらいので[ウィンドウタイトルバー右クリック][プロパティ][画面の色][画面の文字と背景色]を0,0,0/192,192,255(黒/青灰色)にする。

試行錯誤でgrubとかも入れてみる。(結局動かない)
sudo dpkg-divert --local --rename --add /sbin/initctl
sudo ln -s /bin/true /sbin/initctl
sudo apt-get install grub
sudo update-grub

まあ、ubuntu-desktopでpythonとか入ったようだし、無駄ではないよね?

lxterminalを日本語表示できるようにする。
vlgothicとかTakaoゴシックとかメトロデザインに合う、すっきりとしたゴシックが好み。小サイズで横線が二重になったり、半角フォントに気取った跳ねとかいらないし。
sudo apt-get install fonts-takao

lxterminalも[編集][設定]で背景/前景色を同じにした。
端末のフォントはMonospace 9。
おー見やすい。
画面はw3m http://www.yahoo.co.jpの画面。
Bが戻るっていうのがわかりづらいよ。
a0034780_16482345.png

/usr/bin/X11のicoとかxmanとか結構ちゃんとしてるわ。
xorgのインストールも無駄ではなかったな。
後は日本語入力だが、
sudo apt-get install canna
sudo apt-get install kterm
sudo apt-get install kinput2-canna
とかしたんだが、まだデーモンをどうやって起動するのかrcも最近変わったからな~
[PR]
by k1segawa | 2016-08-11 16:57 | X-Window | Comments(0)

Windows10 Anniversary Update と Xサーバ(8/5)

(2016/8/10に追記)
Windows10 Anniversary UpdateでBashが使えるというのでインストール。
さらにWindows on XserverをインストールしてXも使えるように。
a0034780_9495362.png
まず、手動でアップデートを掛ける。
[設定][更新とセキュリティ][Windows Update][更新プログラムのチェック][更新]で更新プログラムのチェックが行われ、[詳細情報]をクリック。
[Anniversary Updateを入手する]でインストーラがダウンロードされ、ネットからインストールプログラムがダウンロードできるようになる。
実行するとCPU OK、メモリ OK、ディスク容量 OKと出ればインストール可能。
実行後、インストールプログラムがダウンロード。(時間がかかる)
更新後、2回くらい再起動させられる。その後クリーンインストールのような設定や、ようこそ画面が出て不安になるが、プログラムは消えていない。(逆にスタートメニューが見やすくなる)
プログラム実行時の確認ダイアログが黄色のメトロデザインに変化。ちょっと寂しくなる。

次にBashを有効にする。
[スタートメニューの設定]ボタン[更新とセキュリティ][開発者向け][開発者モード][適用]で再起動。
新しいプログラムにオレンジのアイコンで[Bash on Ubuntu on Windows]がそれ。
ベータ版と出て、初期起動時にHost名、UserID、Passwordを聞かれる(Microsoftアカウントでなくてもいい)。
/mnt/c/Windows/System32が起動直後のディレクトリ。Homeは/home/UserIDになる。
プロンプトはUserID@Host名になる。Host名は必要なコマンドの時に”Host名”が未解決ですとなるのできちんとlocalhostかプライベートIPアドレス?を入れる必要があるのかもしれない。
echo $PATHとすれば/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/gamesが設定されている。
echo $LANGはja_JP.UTF-8
コマンドの日本語表示メッセージが尻切れトンボになるのでまだマルチバイト表示がうまくいかないのかな。
vi、top、findなど普通に動く。

Windows上にXサーバを入れてxeyesなどを動くようにする。
色々ググってVcXsrvを導入。
デスクトップにVcXsrvとXLaunchが作られる。XLaunchはXサーバのモードを切り替えるもの。とりあえずMultiple windowsのままにしておく事。(FullScreenなどを選んでしまうとルートウィンドウの終了方法や移動が分からず詰むので)
起動するとWindowsのファイアーウォールにブロックされるので、プライベートネットワークでアクセス許可を与える。

Xクライアント(xeyesやlxterminalなど)導入
Bashの上でxeyesと打つとインストールされていません、と出て丁寧にもインストールコマンドを教えてくれる。
sudo apt-get install xeyesと打つ。
パスワードを入力して、尻切れトンボの日本語メッセージの後で止まったら、y[リターンキー]と打つ。
その後、export DISPLAY=:0とした後xeyesと打てば無事に起動する。

gccも普通にインストール出来てHello Worldも出来る。各種日本語フォントが必要なのと表示が不完全なのがどうにかなれば、cygwinの立場も危ういか。

(2016/8/10 追記)
セキュリティの観点からさらに設定が必要だ。
Gigazine 「2016年8月9日のヘッドライン」から。
Windows 10のLinuxサブシステムは新たな攻撃経路となるか - スラドセキュリティ

こちらのサイト様で指摘している。
Windows10 Anniversary updateで知らぬ間にSSHdが起動している

[コントロールパネル][表示方法-カテゴリ以外][Windows ファイアウォール][Windows ファイアウォールを介したアプリまたは機能を許可][Ssh Server][プライベート OFF][パブリック OFF]

Sshd(Ssh Server)を通信させなくするので、上記のチェックボックス2つをOFFにする。
a0034780_024246.png


うーん、ちょっと使い方に難があるね。ここまでしてやっと使えても製品にならないのだから、開発ツールとしてLinuxを利用するならサブシステム追加せずに、Cygwinで別プロセスにした方が安全かな。
[PR]
by k1segawa | 2016-08-05 23:53 | X-Window | Comments(0)