2019/05/14

Ubuntu 18.04 でキーボードレイアウトが突然変わってしまった

先日のアップデート後だと思うのですが、キーボードレイアウトが英字キーボードになってしまいました。

Mozc の `Show Keyboard Layout` で確認してみると、確かに英字キーボードになっています。
2019/02/27

RTNETLINK answers: File exists が出てしまった時の対処方法

@Ubuntu  18.04.1 LTS

一度 DHCP で IPアドレスを取得してしまったネットワークデバイスを静的アドレスに変更すると、以下のようなエラーが出ることがあります。

```console
`gutter: false;
$ sudo ifup eth0
RTNETLINK answers: File exists 
Failed to bring up eth0
```

これを解消するには、登録されているIPアドレスを一度消去してやります。

```console
`gutter: false;
$ sudo ip addr flush dev eth0
```

> 参考
>
> [networking - Solving “RTNETLINK answers: File exists” when running ifup - Raspberry Pi Stack Exchange](https://raspberrypi.stackexchange.com/questions/13895/solving-rtnetlink-answers-file-exists-when-running-ifup/51947#51947)

2018/12/15

Android Studio で "Argument for @NotNull parameter 'message' of ..." が発生するようになってしまった

@Android Studio 3.2.1 on Ubuntu 18.04 LTS

Android Studio を 3.2.1 にしたところ、IDE Fatal Errors が発生するようになってしまいましたAndroid Studio をアップデートするまでは特に問題がなかったプロジェクトです。

具体的には以下のようなエラー。

``` Argument for @NotNull parameter 'message' of com/android/tools/idea/gradle/project/sync/GradleSyncState.syncFailed must not be null java.lang.IllegalArgumentException: Argument for @NotNull parameter 'message' of com/android/tools/idea/gradle/project/sync/GradleSyncState.syncFailed must not be null at com.android.tools.idea.gradle.project.sync.GradleSyncState.$$$reportNull$$$0(GradleSyncState.java) at com.android.tools.idea.gradle.project.sync.GradleSyncState.syncFailed(GradleSyncState.java) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask.doPopulateProject(IdeaSyncPopulateProjectTask.java:135) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask.populate(IdeaSyncPopulateProjectTask.java:97) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask.access$000(IdeaSyncPopulateProjectTask.java:39) at com.android.tools.idea.gradle.project.sync.idea.IdeaSyncPopulateProjectTask$1.run(IdeaSyncPopulateProjectTask.java:86) at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:750) at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$1(CoreProgressManager.java:157) at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:580) at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:525) at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:85) at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:144) at com.intellij.openapi.progress.impl.CoreProgressManager$4.run(CoreProgressManager.java:395) at com.intellij.openapi.application.impl.ApplicationImpl$1.run(ApplicationImpl.java:305) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.run(FutureTask.java:266) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) at java.lang.Thread.run(Thread.java:745) ```
2018/10/30

Ubuntu 18.04 で Vino を有効にする方法

「[Vino の設定は gconftool-2 では出来ない](https://kokufu.blogspot.com/2017/09/vino-gconftool-2.html)」 に書いたように、Ubuntu 16.04 までは gsettings を用いて [Vino](https://people.gnome.org/~markmc/remote-desktop-2.html) を有効に出来ましたコマンドラインで。

しかし、Ubuntu 18.04 では `org.gnome.Vino` の中に `enabled` というキーが存在しません。
つまり、先の方法では Vino を有効に出来ません。

2018/10/06

qpdf で PDF のパスワードを解除する

qpdf 8.0.2 on Ubuntu 18.04

単純なんだけど、すぐ忘れてしまうので備忘録。

```console
`gutter: false;
$ qpdf --password=パスワード --decrypt input.pdf output.pdf
```

> 参考
> 
> [QPDF - TeX Wiki](https://texwiki.texjp.org/?QPDF)

2018/10/05

qpdf で PDF ファイルを結合する

qpdf 8.0.2 on Ubuntu 18.04

前もやったのにすぐ忘れてしまうので、備忘録。

`original_01.pdf`, `original_02.pdf` のように連番のファイルがあるとして、それらを単純に結合して出力する方法。

```console
`gutter: false;
$ qpdf --empty --pages original_*.pdf -- out.pdf
```

一部のページを抜き出したりしたい場合は、以下を参照。

> 参考
>
> [QPDF - TeX Wiki](https://texwiki.texjp.org/?QPDF)

2018/10/02

Gnome 3 の Favorite apps にカスタムアプリを登録する方法(コマンドラインで)

@ Ubuntu 18.04 LTS

[Unity のランチャにカスタムアプリを登録する(コマンドラインで)](https://kokufu.blogspot.com/2018/01/unity.html) で Ubuntu 16.04 用に書いた方法が
Ubuntu 18.04 では少し変更されました。

といっても、gsettings で指定するキーと形式が少し変わっただけです。

2018/09/14

Gnome 3 の workspace をマルチモニタ対応にする方法

Ubuntu 18.04 LTS にアップグレードしたところ workspace の動作がかなり変わってしまいました。
具体的には、左右への移動ができなくなり、マルチディスプレイの場合、プライマリディスプレイのみが移動するようになりました。

Unity から Gnome になったので、この程度の差異は想定内ですが、マルチディスプレイに対応していないのは少し使い勝手が悪いです人によっては使いやすいのかな?。

「同じように思っている人もいるはず」と思って探してみると、マルチモニタ用のアドオンを作ってくれた人がいたので、紹介します。

なお、動作確認は Gnome 3.28.2 で行っています。
2018/09/13

Ubuntu 18.04 にしたら NetBios name で Windows マシンにアクセスできなくなった【解決】

Ubuntu を 18.04 LTS にアップグレードしたところ、Windows マシンへのリモートアクセスが出来なくなってしまいました。

winbind, libnss_wins もインストールしてあるのに。

> 参考
>
> [Winbind をインストールしたのに NetBIOS nameでアクセスできない on Ubuntu 13.10 | 穀風](https://kokufu.blogspot.com/2014/03/winbind-netbios-on-ubuntu-1310.html)

2018/08/03

.desktop ファイルを作ったのに Unity のランチャに表示されない場合の対処方法

先に結論を書いておくと、「**`.desktop` ファイルを直接 `~/.local/share/applications` 以下に作成するのではなく、`desktop-file-install` を使用してインストールしましょう。**」ということです。

2018/08/02

Remmina で RDP 接続したら IME 経由で日本語が入力できなくなった【解決】

@[Remmina](https://remmina.org/) 1.2.31.2 on [Ubuntu](https://www.ubuntu.com) 16.04 LTS

私は最新の Remmina を使用したいため、PPA からインストールしています。

> 参考
>
> [How To Install Remmina Remote Desktop Client in Ubuntu Linux](https://www.ubuntupit.com/how-to-install-remmina-remote-desktop-client-in-ubuntu-linux/amp/) 

そのせいかはわかりませんが最新にアップグレードしてからも一定期間は使えていた気がします、Windows 10 に RDP 接続すると IME が使えなくなってしまいました。

なお、過去の Remmina では、「英字キーボードになってしまう」という問題がありましたが、最新ではこれは修正されています。
今回、私が遭遇した問題はキーボード配列には関係なく、IME の動作に関しての不具合です。

2018/07/05

Vino に Windows の VNC クライアントからアクセス出来ない時の対処法

@Ubuntu 16.04 (Vino 3.8.1-0Ubuntu9.2)

他の Ubuntu マシンからアクセス出来ている [Vino](https://launchpad.net/ubuntu/+source/vino) に Windows 10 の VNC クライアントからアクセスしてみたのですが、エラーが出てうまくいきませんでした。

2018/06/14

Ubuntu でオンライン会議を録音する方法

@Ubuntu 16.04 LTS

ブラウザベースのオンライン会議サービス [appear.in](https://appear.in/) で会議を録音してみました。
ブラウザベースじゃなくても PulseAudio を使っているアプリケーションなら全て録音できると思われます。

2018/06/01

Ubuntu 16.04 でプリンターに接続できなくなった

Software Update をしたからだと思うのですが特に新規のハードウェアを追加したりはしていない、突然プリンター(ネットワーク接続)が使用出来なくなりました。

System Settings の Printers を選択すると以下のようなエラーが表示されます。 > Printing service not available. Start the service on this computer or connect to another server.
### cups サービスが動いていない 確認してみると、cups サービスが起動していない様子。 ```console `gutter: false; $ systemctl status cups ● cups.service Loaded: masked (/dev/null; bad) Active: inactive (dead) ```
2018/05/12

Headless server につないだ Vino のキーボードを日本語レイアウトにする

[モニタをつないでいない Ubuntu の Vino に接続する](https://kokufu.blogspot.com/2018/02/ubuntu-vino.html) で Vino に繋がるようになったのは良いものの、キーボードレイアウトがおかしいようです日本語でもなければ、普通の英字キーボードでもない。
よく考えれば何も設定していないのであたりまえですね。

2018/05/11

Ubuntu 16.04 LTS から 18.04 LTS へのアップデートは7月後半まで出来ない

[Ubuntu 18.04 LTS](http://releases.ubuntu.com/18.04/) が出ましたね。

メインマシン(16.04 LTS) にアップデート通知がこないなーと思いつつ、
ちょうど仕事が忙しいタイミングと重なって放置していましたこのタイミングでアップデートするわけにもいかず、ちょうど良かったとも言える。

しかし、さすがに2週間経ってもこないのはおかしくない?と思って調べてみたら、
16.04 からのアップデートは 18.04.1 が出るまで無効化されているとのこと。

[BionicBeaver/ReleaseNotes - Ubuntu Wiki](https://wiki.ubuntu.com/BionicBeaver/ReleaseNotes#Upgrading_from_Ubuntu_16.04_LTS)

> Upgrades from 16.04 LTS will not be enabled until a few days after 18.04.1's release expected in late July.

18.04.1 の[リリーススケジュール](https://wiki.ubuntu.com/BionicBeaver/ReleaseSchedule)は7月後半一応、7月26日の予定。
ちょっと先ですね。
悩ましい。
2018/04/27

heic ファイルを扱える Imagemgick をインストールする

@Ubuntu 16.04 LTS18.04 LTS がまさに出ようというその時に…

[ImageMagick](http://www.imagemagick.org/script/index.php) が heic フォーマットHEIF フォーマットと言った方が良いのか?しかし、HEIF はコンテナフォーマットのことなので適切とは言えないか…に対応したようなので、ソースコードからコンパイルしてインストールしてみました。

以下によると、6.9.9 もしくは 7.0.7 以降が対象とのこと。

> 参考
>
> [ImageMagick-6.9.9-34差分 - yoyaのメモ](http://d.hatena.ne.jp/yoya/20180123/im)

2018/02/15

モニタをつないでいない Ubuntu の Vino に接続する

@Ubuntu 16.04 LTS

[Vino](https://github.com/GNOME/vino) はそもそも画面をミラーリングするアプリケーションなので、画面出力をしていないマシンにつなぐことは出来ません。

しかし、バックグラウンドで GUI アプリケーションを動かしておきたい場合、モニタ無しで VNC 接続したいこともあります。
そんな時は、ダミーのグラフィックドライバをインストールすることで接続出来るようになります。

> 参考
>
> [Vino - ArchWiki](https://wiki.archlinux.jp/index.php/Vino#.E3.83.98.E3.83.83.E3.83.89.E3.83.AC.E3.82.B9.E3.82.B5.E3.83.BC.E3.83.90.E3.83.BC.E3.81.A7.E5.AE.9F.E8.A1.8C)

2018/02/08

Raw Disk Image file を Ubuntu でマウントする方法

Ubuntu 16.04 LTS 上で VDI を Raw Disk Image に変換したもので確認。

> 参考
>
> - [filesystems - how to find the type of img file and mount it - Unix & Linux Stack Exchange](https://unix.stackexchange.com/questions/82314/how-to-find-the-type-of-img-file-and-mount-it/156480#156480)
> - [Convert .vdi to .img · GitHub](https://gist.github.com/hightemp/11196851)

2018/02/01

.desktop ファイルの Exec に環境変数を含める方法

2018/8/3 追記
`desktop-file-install` を使う方法に書き換えました。
参考: [.desktop ファイルを作ったのに Unity のランチャに表示されない場合の対処方法 | 穀風](https://kokufu.blogspot.com/2018/08/desktop-unity.html)
`.desktop` ファイルを `desktop-file-install` でインストールすると、Unity の検索に出てくるようになります。 > 参考 > > [Unity のランチャにカスタムアプリを登録する(コマンドラインで) | 穀風](https://kokufu.blogspot.com/2018/01/unity.html) ```text `title: "myapp.desktop"; [Desktop Entry] Type=Application Name=My Application Exec=/home/username/bin/myapp Icon=face-angel Terminal=false ``` インストール ```console `gutter: false; $ desktop-file-install --dir="${HOME}/.local/share/applications" myapp.desktop ```