読者です 読者をやめる 読者になる 読者になる

VichromeでページをTwitter投稿するalias

Openで指定するURLに%titleは使えないようです。

タイトルをURLに入れるにはwindow.openとencodeURIComponent(document.title)を使う必要がありました。

alias tw Open javascript:var%20d=window.open('https://twitter.com/intent/tweet?url='+encodeURIComponent(location.href)+'&text='+encodeURIComponent(document.title))

Lubuntu 16.04 LTS に urxvt + ranger を導入した時のメモ

Windows 環境では、Paper Plane xUIfenrir を長年愛用しています。

今回、Lubuntu 16.04 LTS でもファイラを導入したので、その記録をメモ。

ファイラ ( ranger )

ファイラは、ターミナルで動作するCLIファイラの ranger を導入してみました。

理由は、PPxカスタマイズサイトを公開している、つかささんが導入してたので(安直)

導入に際しては、以下のサイトを参考にさせて頂きました。

参考ウェブサイト

ターミナル( Guake → urxvt )

ターミナルですが初めはGuake Terminalを利用してみました。

Guakeは、ホットキーで端末の表示 / 非表示を切り替えられるのが特徴です。

一般的なターミナルと違い、窓枠やタイトルバーもなく、ウィンドウの移動は不可能で、ホットキーによる 表示 / 非表示 のトグルに特化。

それまで端末で何かするたびに Alt+tab でフォーカスを移動していたのが、ホットキーに設定した F12 で簡単に端末を呼び出せるのが気に入っていました。

しかし、Guake は w3mimgpreview を利用した ranger の画像プレビュー機能が動作せず、自分では解決法を見つけられなかったので利用を断念。

参考ウェブサイト:Linux Mintのデスクトップ環境で使用するターミナルを「Guake Terminal」にしたら思いのほか快適になった | えんぞーどっとねっと

Guakeから、 urxvt に乗り換え。

urxvtは Unicode 対応で軽量、背景透過なども設定できるターミナルです。

またw3mimgpreview を利用した ranger での画像プレビュー機能も動作しました。

urxvtは一般的なターミナルなので Guake とは違い、ホットキーによる 表示 / 非表示 トグル機能はありません。

そこで、こちらの記事

を参考に、デスクトップ環境自体のホットキーにコマンドを割り当て、ウィンドウ表示 / 非表示をトグルを可能にしました。

ホットキーの割り当ては、Ubuntuでは ccsm を利用してGUIで設定可能ですが、

Lubuntu 16.04 LTS では、 ~/.config/openbox/lubuntu-rc.xml を直接弄る必要があるようです。

ググッてみると ubuntuforums.org で、 rc.xml を書き換えるGUIツールを公開されている方が。

git clone でリポジトリをローカルにコピー。

Pythonで書かれているので sudo python setup.py install でパッケージをインストールします。

obkey で起動してみると、 rc.xml が見つからないというエラーが出ました。

対象ファイルが ~/.config/openbox/rc.xml にターゲッティングされているので、修正する必要があるようです。

ソースの方を弄るのではなく rc.xml に lubuntu-rc.xml へのハードリンクを貼って解決。

F12 の ホットキーに、先ほどの記事を参考にして、togwin --class "rxvt" "rxvt"を設定。

f:id:k9q:20160731235615p:plain

導入後の画像

f:id:k9q:20160731235146p:plain

Lubuntu 16.04 LTSの、パネルウィジェット・天気予報プラグインで地域が設定できない件

Lubuntu 16.04 LTSのパネルウィジェットに、天気予報プラグインがありますが、設定から現在地点をセットしようとしても「・・・という地名は見つかりませ」とエラーが出て利用できなくなっていました。

検索してみると、Weather Appletが地名取得に利用しているYQL(Yahoo Query Language)が変更された為、利用できなくなっていたようです。

lxpanelのフォーラムには、既にバグレポートが上がっており、修正されています。

sudo apt-get install lxpanel でアップデートを取得しようとすると、既に最新バージョンと言われて失敗。

自分で最新のリポジトリを取得して、 インストールする必要があるようです。

取り敢えず、git clone で最新を取得してみます。

$ git clone https://github.com/lxde/lxpanel.git

README.install を読み、手順通りに実行します。

#### Information about building and creating a debian package

#### 1) include the source code in the repositories

#### 2) install all dependencies
sudo apt-get build-dep lxpanel

#2) を実行すると、「E: sources.list に 'ソース' URI を指定する必要があります」と言われる。

こちらによると、/etc/apt/sources.list にパッケージのダウンロード元が記載されており、ソースとなるURLを書いておく必要があるようです。

vim で中を開くと、

#deb cdrom:[Lubuntu 16.04 LTS _Xenial Xerus_ - Release amd64 (20160420.1)]/ xenial main multiverse restricted universe

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://jp.archive.ubuntu.com/ubuntu/ xenial main restricted
#deb-src http://jp.archive.ubuntu.com/ubuntu/ xenial main restricted

のように #deb-src がコメントアウトされているので、コメントアウトを外していきます。

/etc/apt/sources.list を修正したら、ソースリストのアップデートを実行。

$ sudo apt-get update

リストの更新後、もう一度 sudo apt-get build-dep lxpanel を実行すると、 lxpanel をビルドするために必要な依存関係にあるパッケージが全てインストールされました。

README.install の #3) 以降を実行していきます。

#### 3) compile
./autogen.sh --prefix=/usr
./configure --prefix=/usr --enable-man --enable-indicator-support
make

#### 4) build debian package
sudo checkinstall
 :
 :
(略)

checkinstall を実行すると、 lxpanel_0.8.99-1_amd64.deb が作成されました。

deb パッケージを dpkg -i でインストールします。

$ sudo dpkg -i lxpanel_0.8.99-1_amd64.deb

ここで、「'/usr/share/locale/ca/LC_MESSAGES/ ' を上書きしようとしています。これはパッケージ lxpanel-data 0.8.2-1ubuntu2 にも存在します」のエラーで停止。

こちらによると、 dpkg に --force-overwrite オプションを指定することで、強制上書きインストールが可能です。実行。

$ sudo dpkg -i --force-overwrite lxpanel_0.8.99-1_amd64.deb

インストールされました。

lxpanel -v でバージョンをチェック。最新版になっています。

$ lxpanel -v
lxpanel 0.8.99

天気予報プラグインの設定からも地域指定が出来るようになりました。

 

f:id:k9q:20160727225414p:plain

初めて git リポジトリを取得して、 deb パッケージを作成しインストールしましたが、楽しかったですね。

参考にしたウェブサイト

Ubuntu 16.04 LTS と Windows のデュアルブート環境で、時刻がズレる問題

Lubuntu 16.04 LTS と Windowsデュアルブート環境で、時刻が9時間ズレが生じます。

PCのハードウェアクロックをUbuntuUTC(協定世界時)で扱う一方、Windowsはlocaltime(日本標準時)で扱うために発生するとのこと。

BIOSに設定された時間を異なる設定で解釈するため、Windowsでは日本標準時UTC+9と9時間のズレが発生。

解決にはWindowsレジストリを弄る方法、Ubuntu側の設定変更があるとのこと。

従来は /etc/default/rcSUTC=no と記述することで、UTCを無効化出来てたが、16.04からは /etc/adjtime に記述するようになったとのこと。

/etc/adjtime はコマンドで書き換えできる。

以下のコマンドで実行。

sudo timedatectl set-local-rtc 1
参考にしたウェブサイト

Lubuntu 16.04 LTS に tw を入れる

Lubuntu 16.04 LTSに乗り換えました。

Ubuntuではターミナルで使うツイッタークライアント Tw: Twitter client on Ruby. が気に入ってたので、Lubuntuでも使うことにしました。

インストール

Install Error · shokai/tw Wiki · GitHub に従って、RubyとRubygemのバージョンチェックとアップデート。

$ sudo apt-get install ruby
$ sudo apt-get install ruby-dev $ sudo gem install rubygems-update $ sudo update_rubygems

gemからtwをインストール。

$ sudo gem install tw

・・・するとエラー

Building native extensions.  This could take a while...
ERROR:  Error installing tw:
	ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser
/usr/bin/ruby2.3 -r ./siteconf20160726-3157-8kynwb.rb extconf.rb
creating Makefile

current directory: /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser
make "DESTDIR=" clean
sh: 1: make: not found

current directory: /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser
make "DESTDIR="
sh: 1: make: not found

make failed, exit code 127

Gem files will remain installed in /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/http_parser.rb-0.6.0/gem_make.out

調べたところ、LubuntuはUbuntuと違い、makeが入ってないんですね。

apt-getでmakeをインストール。

$ sudo apt-get install make

再び$ sudo gem install twを試してみると、今度はgccがないと怒られる。

Building native extensions.  This could take a while...
ERROR:  Error installing tw:
	ERROR: Failed to build gem native extension.

    current directory: /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser
/usr/bin/ruby2.3 -r ./siteconf20160726-4193-1vqlgfe.rb extconf.rb
creating Makefile

current directory: /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser
make "DESTDIR=" clean

current directory: /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0/ext/ruby_http_parser
make "DESTDIR="
compiling ruby_http_parser.c
make: gcc: コマンドが見つかりませんでした
Makefile:239: ターゲット 'ruby_http_parser.o' のレシピで失敗しました
make: *** [ruby_http_parser.o] エラー 127

make failed, exit code 2

Gem files will remain installed in /var/lib/gems/2.3.0/gems/http_parser.rb-0.6.0 for inspection.
Results logged to /var/lib/gems/2.3.0/extensions/x86_64-linux/2.3.0/http_parser.rb-0.6.0/gem_make.out

gccもインストール。

$ sudo apt-get install gcc

g++もないと言われたので、インストール。

$ sudo apt-get install g++

で、ようやく tw が動くようになりました。

Linuxってこうやって使うんですね。少しずつ覚えていってます。

Ubuntu 16.04 LTSで、chkconfigが使えない。

導入したoracle-xeの自動実行を止めるためにchkconfigを使おうとしたら、Permission deniedと出て使えない。

自動サービス実行の設定は、ランレベルごとに/etc/rc[0-6].d/以下に、/etc/init.d/にあるサービス実行スクリプトへのシンボリックリンクが貼られています。

これをchkconfigで弄れるようだけど、参考サイトによるとUbuntuではchkconfigが使えません。

代用として、sysv-rc-confというものが用意されているので、りようしました。

使い方は、chkconfigと一緒のようです

$ sudo apt-get install sysv-rc-conf

自動実行されるサービスを一覧表示

$ sudo sysv-rc-conf -list

Oracle-xeを全てのランレベルで自動実行off

$ sudo sysv-rc-conf oracle-xe off

参考にしたウェブサイト

~/.bashrcを使って、ターミナルからググる

~/.bashrcに関数を書いて、検索クエリをFirefoxに送る。

# Google search
google(){
     local u="https://google.co.jp/search?q="
     IFS=+
     firefox "${u}$*"
}

$*で引数すべてを羅列し、Firefoxに対する引数とする。

予約変数IFSで引数の区切りを半角スペースから、'+'にして、そのまま検索クエリとする。

$ google test あああ テスト

~/.bashrc は、書き換えたら$ source ~/.bashrcで再読込すること。

参考にしたウェブサイト