Unityのランチャーはcairoドックを使用するので非表示にしています。
これが、Ubuntu Software Centerからインストールしたものをデスクトップに自動的にショートカットを設定する方法を見つけようとしている理由です。
Unityのランチャーはcairoドックを使用するので非表示にしています。
これが、Ubuntu Software Centerからインストールしたものをデスクトップに自動的にショートカットを設定する方法を見つけようとしている理由です。
回答:
以下のスクリプトをバックグラウンドで実行すると、新しくインストールされた(のみ)ソフトウェアのデスクトップにスターターが自動的に作成されます。
また:
NoDisplay=true
)gedit
)、どこかにとして保存しmake_starter.py
ます。最初にテストする場合は、次のコマンドを使用してターミナルウィンドウから実行します。
python3 /path/to/make_starter.py
使い慣れたアプリケーションをインストールします。インストールが完了すると、アイコンがデスクトップに表示されます。
すべてが正常に機能する場合は、それをスタートアップアプリケーションに追加します(ダッシュ>スタートアップアプリケーション>追加)。次のコマンドを追加します。
python3 /path/to/make_starter.py
注意
Ubuntuのローカライズバージョンでは、「デスクトップ」(オランダ語では「Bureaublad」)の名前が異なる場合があります。その場合は、次の行を置き換えます。
desktopname = "Desktop"
ローカライズされた名前の「デスクトップ」。
#!/usr/bin/env python3
import subprocess
import os
import time
import shutil
desktopname = "Desktop"
dr = "/usr/share/applications"
while True:
current = os.listdir(dr)
time.sleep(10)
last = os.listdir(dr)
for item in last:
if not item in current and item.endswith(".desktop"):
file = dr+"/"+item
with open(file) as src:
text = src.read()
if not "NoDisplay=true" in text:
target = os.environ["HOME"]+"/"+desktopname+"/"+item
shutil.copyfile(file, target)
command = "chmod +x "+target
subprocess.Popen(["/bin/bash", "-c", command])
Perl
偶然にスクリプトを書いてしまう可能性が高いので、自分自身で言うことはできません:)
100以上のアプリケーションアイコンが存在する可能性があるため、これは非常に厄介です。アイコン(実際にはデスクトップランチャーファイル)は通常にあり/usr/share/applications
ます。したがって、ターミナルで次のコマンドを実行できます。
find /usr/share/applications -type f -name '*.desktop' -exec cp --target-directory ~/Desktop/ {} +
しかし、これはデスクトップ上のすべてのランチャーのコピーを作成します。(環境に応じて、おそらく数百)
/usr/share/applications
ファイルマネージャーで参照し、関連するアプリケーションのファイルをデスクトップに手動でコピーできます。私の知る限り、Software Centerにこれを自動的に行わせる方法はありません。
dpkg
してdiff
、新しい選択リストと以前の選択リストを各インストール後に保存できます。次に、関連.desktop
ファイルをデスクトップにコピーするスクリプトを使用してショートカットを作成できます。
ls /usr/share/applications/*.desktop | wc
は:168 168 7851