Centos 7 RPMパッケージング - インストール中にデスクトップショートカットを作成する

Centos 7 RPMパッケージング - インストール中にデスクトップショートカットを作成する

私は.Net Coreを使用してクロスプラットフォームUIを開発し、RPMパッケージマネージャを使用してパッケージ化しています。ローカルにインストールするRPMファイルを作成しました。私の仕様ファイルの%installセクションは次のとおりです。

%install
mkdir -p %{buildroot}/%{_bindir}
mkdir -p %{buildroot}/%{_bindir}/%{name}
mkdir -p %{buildroot}/%{_datadir}/applications
install -m 0755 %{name} %{buildroot}/%{_bindir}/%{name}
install -m 0755 *.dll %{buildroot}/%{_bindir}/%{name}
install -m 0755 *.json %{buildroot}/%{_bindir}/%{name}
install -m 0755 *.so %{buildroot}/%{_bindir}/%{name}
install -m 0755 %{name}.png %{buildroot}/%{_bindir}/%{name}

cat > %{buildroot}/%{_datadir}/applications/%{name}.desktop <<'EOF'
[Desktop Entry]
Name=Hello_World
Exec=%{_bindir}/%{name}/%{name}
Icon=%{_bindir}/%{name}/%{name}.png
Type=Application
Terminal=false
EOF

プロジェクトには、Linux実行可能ファイル、依存ファイル、および.pngアイコンが含まれています。インストール段階で、パッケージのインストール時に実行可能ファイルがアプリケーションに存在するように.desktopファイルを作成し、/usr/share/applicationsに配置しました。

パッケージがインストールされたときにアプリケーションでデスクトップショートカットを作成して、ユーザーが自分で作成する必要がないようにする方法を知りたいです。インストール後にこのタスクを手動で実行するには、Nautilusを使用して/usr/share/applicationsフォルダにアクセスし、アプリケーションをデスクトップにコピーする必要があることに注意してくださいが、これが自動的に実行されることを願っています。

インストール後のセクションでコピーコマンドを試しましたが、パッケージがインストールされているユーザーのデスクトップにコピーする方法がわかりません。これを行うために作成した.desktopファイルまたは仕様ファイルに追加できるコマンドはありますか?

ベストアンサー1

%postrpmビルドセクションではなく、インストールが完了したらリンクを作成することをお勧めします。

https://docs.fedoraproject.org/ro/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch09s04s05.html

以下のリンクがあります

ln [OPTION]... [-T] TARGET LINK_NAME

おすすめ記事