お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2018-01-30 21:23:51

kicksan
新しいメンバ
登録日: 2018-01-30

FireFoxがLauncherから起動できなくなりました

お世話になります。
表題の通り、LauncherからFirefoxが起動できなくなってしまいました。
Firefoxの自動アップデート中にUbuntuがフリーズしてしまい強制再起動したのがきっかけと思いますが…。

<環境>
Ubuntu16.04LTS
Firefox58.0

<試したこと>
・LauncherからFirefoxのアイコンをクリック→10秒ほどアイコン背景が明滅するがFirefoxのウィンドウは出てこない
・DashからFirefoxを検索し、クリック→同上。Launcher上のFirefoxアイコンが10秒明滅するだけ
・sudo apt-get update と sudo apt-get upgrate →その後上記操作をするも結果は変わらず
・端末から firefox コマンドを入力→起動した。Launcher上のFirefoxアイコンにも△マークが付いた
・sudo apt-get --purge remove firefox でアンインストール、Ubuntuソフトウェアから再インストール→アイコンが再登録されたが挙動は変わらず
・他のLauncherアプリはクリックで問題なく起動する

sudo apt-get --purge remove firefox
をして再インストールする前にDashで「Fire」と打つとFirefoxが表示されるのも気になります。
きちんとアンインストールできていないのでしょうか(端末から firefox を打つとインストールされていないとは出ましたが…)。

端末から起動できるとはいえLauncherからの起動とは手間が違うので、再びLauncherからFirefoxが起動できるように修復したいです。
どうすれば(どこをチェックすれば)良いでしょうか?
お手数ですがお力添えいただければと思います。よろしくお願い致します。

オフライン

 

#2 2018-01-31 14:26:51

ginga81
メンバ
登録日: 2016-05-07

Re: FireFoxがLauncherから起動できなくなりました

おそらく

「・端末から firefox コマンドを入力→起動した。Launcher上のFirefoxアイコンにも△マークが付いた」

が怪しい点だと思います。
ここが

「端末から他に何も書かずに単純にfirefox[ENTER]とだけしたら、firefoxが起動しました。加えてLauncher上のFirefoxアイコンにも△マークが付いた」

という前提の解釈でお話します。

「端末から起動できるとはいえ」と後述されていますが、ここがはっきりしないとfirefoxの実行ファイルがもともとの位置にあるのかがわからず答えづらいです。

まず一応最初に、動作しないとは思いますが、一度Unityランチャーに登録されているfirefoxアイコンの登録を解除した後、もう一度検索窓からドラッグしてみてください。
これは今回の検証の途中で、検索結果で出てきた下記のdesktopファイルと最初から起動する、すでに登録されているdesktopファイルが違っていたのですが、ドラッグしても上書きされず、更新前のdesktopファイルが読み込まれました。
そのため更新されていないためにアイコンを押しても出ないというケースを想定したものです。

お話は伺いましたが、疑問点を解消するため端末から

コード:

/usr/bin/firefox

としてfirefoxが実行できるか見てみてください。
「・端末から firefox コマンドを入力→起動した。」で起動されるはずのfirefoxは、apt-getでインストールすると通常この位置に格納されているはずなので、これで起動しない場合は後述しますがfirefoxの実行ファイルを探しだし、フルパス指定します。

起動した場合は、まず、/usr/share/applicationsに、「Firefox ウェブ・ブラウザ」ファイルがあることを確認します。
実体はfirefox.desktopというファイルなのですが、Nautilusなどから見ると内部の名前が使われます。
Dash検索窓にapt-getでインストールして出てくるアプリケーションアイコンのデータはここにあるようです。
現状勿論これをダブルクリックしても、10秒ほどしても何も起きないはずです。

通常はこれをテキストエディターで直すか、UbuntuのDVDなどから持ってきて復旧するなどするのがセオリーですが、root権限が必要となるのでなれるまではむやみにいじらないほうが良いので、ここではそのままにして、検索される位置に同じものを作って、上書き検索させて読ませるようにします。

すなわち「アイコンファイルを作ってWindowsで言うところのショートカットのようにダブルクリックするだけで起動させたり、Dash検索で出せるようにするにはどうしたらよいか」という質問への回答と同義です。

なのでこれを覚えれば、項目を変えるだけで好きなアプリケーションをDash検索に出せるようにしたり、アイコンを右クリックした時の項目を増やしたりもできます。

Dash検索では
/usr/share/applications
よりも
~/.local/share/applications
の結果のほうが優先されるようで、同じfirefox.desktopで下記のものを~/.local/share/applicationsへ上書きしても、Unityパネルから日本語で「新しいプライベートウィンドウを開く」が表示されました。
このことから同時に存在しても、~/.local/share/applicationsが優先されると判断しています。

この投稿を参考にさせていただきました。
https://forums.ubuntulinux.jp/viewtopic.php?id=11222

新規ファイルを作るため、テキストエディター(geditなど)を起動して、以下をコピペします。
もともとは私のUbuntu16.04の/usr/share/applications/firefox.desktopで、ここから日本語環境のみに必要なものに削ったうえで、UTF-8の記述と検証を兼ねて右クリックメニューのプライベートウインドウの項目で日本語を追加したものです。

コード:

#!/usr/bin/env xdg-open
[Desktop Entry]
Version=1.0
Name=Firefox Web Browser
Name[ja]=Firefox ウェブ・ブラウザ
Comment[ja]=ウェブを閲覧します
GenericName=Web Browser
GenericName[ja]=ウェブ・ブラウザ
Exec=firefox %u
Terminal=false
X-MultipleArgs=false
Type=Application
Encoding=UTF-8
Icon=firefox
StartupNotify=true
Actions=new-window;new-private-window;

[Desktop Action new-window]
Name=Open a New Window
Name[ja]=新しいウィンドウを開く
Exec=firefox -new-window

[Desktop Action new-private-window]
Name=Open a New Private Window
Name[ja]=新しいプライベートウィンドウを開く
Exec=firefox -private-window

コピペしたら、

~/.local/share/applications/firefox.desktop

というファイルで保存します。

このファイルを右クリックしてプロパティを出したら、「アクセス権」タブにして「実行:」の「プログラムとして実行可能」にチェックします。

Unityランチャーにすでに登録されているアイコンを削除してから、dash検索窓を再検索(検索窓から何度かでたらめなワードを入力して検索)させ、もう一度firefoxで検索し、出てきたfirefoxアイコンをUnityパネルへドラッグします。

ドラッグしたあと右クリックすると、今まで出てこなかったはずの日本語で「新しいプライベートウィンドウを開く」が表示されると思います。
出てこない時は再起動するなどしてDash検索をもう一度やらせます。

あとはアイコンをクリックすると今までと同じ場所にfirefoxがあるなら起動すると思いますが、もしそうならなかった場合は/usr/bin/firefoxの代わりに、どこかにfirefoxの実行ファイルがあるのでそれを探すしかありませんが、あなたがどこにインストールしたかによるので端末からfirefoxを「フルパスで」実行できるよう格納場所を見つけ出します。

見つかった場合は上記のfirefox.desktopファイルのExec=の行をそれぞれ例えば

Exec=/usr/bin/firefox %u
Exec=/usr/bin/firefox -new-window
Exec=/usr/bin/firefox -private-window

というように、フルパスへ変更します。
これで試してみてください。

なお、フルパス指定の際、Exec欄ではどういうわけか「~/」が使えない仕様でした。
私はこれでかなり難儀しましたので、省略せずに指定してください。

ちなみに

コード:

Actions=new-window;new-private-window;tekitou;

[Desktop Action tekitou]
Name=tekitou-na-namae
Name[ja]=何でも良いので適当なおなまえ
Exec=chromium

と、最後に「tekitou;」を追加し、上記を追加すると、右クリックのエントリーが追加でき、この例ではchromiumが起動できます
tekitou;と[Desktop Action tekitou]にある「tekitou」を一致させたうえで変えれば好きな名前にもできます。

オフライン

 

#3 2018-01-31 22:29:30

kicksan
新しいメンバ
登録日: 2018-01-30

Re: FireFoxがLauncherから起動できなくなりました

ginga81さん、詳しくありがとうございます。
状況を詳しく書いたつもりでしたが、まだまだ不足していた情報があり反省です。

前提として書いていただいた通り、端末で
$firefox[ENTER]
のみの入力で起動することを確認していました。

まず一応最初に、動作しないとは思いますが、一度Unityランチャーに登録されているfirefoxアイコンの登録を解除した後、もう一度検索窓からドラッグしてみてください。

やってみましたが、やはりアイコンが明滅するだけでウィンドウが出てこない結果となりました。

/usr/bin/firefox

こちらのコマンドを端末に入力したところ、FireFoxが起動しました。
その際、(クリックしても起動しない)Launcher上のFirefoxアイコンに白△が付きました。

/usr/share/applicationsに、「Firefox ウェブ・ブラウザ」ファイルがあることを確認します。

ありました。この「Firefox ウェブ・ブラウザ」をダブルクリックするとFirefoxが起動しました。
この際、Launcherに1〜2秒ほどFirefoxのアイコンが新規に出現して消え、既存のFirefoxアイコンに白△が付きました。

そこから教えていただいた通りにコードを記載して
~/.local/share/applications
の firefox.desktop に上書き、アクセス権の「実行:」の「プログラムとして実行可能」にチェックしました。
LauncherのFirefoxを「Launcherへの登録を解除」し、PCを再起動するとDashに「Firefox ウェブ・ブラウザ」が出てきました(私の環境では再起動しないとダメでした)。
Dashから「Firefox ウェブ・ブラウザ」をLauncherに登録し、LauncherのFirefoxアイコンを左クリックで起動すること、右クリックで「新しいプライベートウィンドウを開く」が表示されることを確認しました。

しかし、Firefoxが起動してFirefoxのウィンドウが表示されるとLauncherにFirefoxアイコンが新たにもう一つ出てきてしまい、
 新しく出てきたFirefoxアイコンに白△が付いている
 Dashから登録したFirefoxアイコンは白△が付いておらず、再度左クリックするとFirefoxがもう一つ起動する。白△は1つめのFirefoxウィンドウ表示時に出てきたFirefoxアイコンに付く(白△が二つある状態となった)
という状況になりました。

Dashで「Fire」と入力するとFirefoxが二つ出てきていたのでおかしいなと思い、教えていただいたトピック
https://forums.ubuntulinux.jp/viewtopic.php?id=11222
の内容を確認したところ、~/.local/share/applications に「_opt_firefox_firefox.desktop」というファイルが残っており、これを削除するとLauncherのFirefoxアイコンが増えるということもなくなりました。
これにて一件落着と考えます。

おかげさまでDashの編集の仕方も覚えることができました。
どうもありがとうございました!

オフライン

 

Board footer

Powered by FluxBB