Centos 7 RPM Packaging - Erstellen Sie während der Installation eine Desktopverknüpfung

Centos 7 RPM Packaging - Erstellen Sie während der Installation eine Desktopverknüpfung

Ich entwickle eine plattformübergreifende Benutzeroberfläche mit .Net Core und verpacke sie mit RPM Package Manager. Ich habe die RPM-Datei für die lokale Installation erstellt. Der Abschnitt %install meiner Spezifikationsdatei sieht folgendermaßen aus

%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

Das Projekt enthält die ausführbare Datei für Linux, Abhängigkeitsdateien und eine PNG-Datei für das Symbol. Im Rahmen des Installationsschritts habe ich eine Desktop-Datei erstellt und sie in /usr/share/applications abgelegt, damit die ausführbare Datei in Anwendungen angezeigt wird, wenn das Paket installiert wird.

Ich möchte wissen, wie ich bei der Installation des Pakets eine Desktopverknüpfung für die Anwendung erstellen kann, damit der Benutzer sie nicht selbst erstellen muss. Ich weiß, dass man dazu nach der Installation manuell mit Nautilus auf den Ordner /usr/share/applications zugreifen und die Anwendung auf den Desktop kopieren muss, aber ich möchte, dass dies automatisch geschieht.

Ich habe versucht, einen Kopierbefehl im Abschnitt „Nach der Installation“ zu verwenden, weiß aber nicht, wie ich es auf den Desktop eines Benutzers kopieren kann, der das Paket installiert. Gibt es einen Befehl, den ich meiner Spezifikationsdatei oder der erstellten .desktop-Datei hinzufügen kann, um dies zu erreichen?

Antwort1

Ich würde empfehlen, den Link nach der erfolgreichen Installation zu erstellen und nicht währenddessen im %postAbschnitt für den RPM-Build.

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

Etwas Link unten

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

verwandte Informationen