Use reverse DNS naming

Use reverse DNS naming for .desktop and .metainfo.xml as your
supposed to do nowadays according to freedesktop.org.

This also happens to match what is mandated by flatpak, so it
simplifies the flatpak post install script a little.

+ cleanup the mess that flatpak builds can leave behind when you
do a clean.
This commit is contained in:
Robert de Rooy
2020-10-20 15:24:03 +02:00
parent bfc1f61985
commit 11cad2aab5
12 changed files with 19 additions and 18 deletions

View File

@@ -79,9 +79,9 @@ install: src/dosbox-x
mkdir -p $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps mkdir -p $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps
install -m 644 $(srcdir)/contrib/icons/dosbox-x.svg $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/dosbox-x.svg install -m 644 $(srcdir)/contrib/icons/dosbox-x.svg $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/dosbox-x.svg
mkdir -p $(DESTDIR)$(prefix)/share/applications mkdir -p $(DESTDIR)$(prefix)/share/applications
install -m 644 $(srcdir)/contrib/linux/dosbox-x.desktop $(DESTDIR)$(prefix)/share/applications install -m 644 $(srcdir)/contrib/linux/com.dosbox_x.DOSBox-X.desktop $(DESTDIR)$(prefix)/share/applications
mkdir -p $(DESTDIR)$(prefix)/share/metainfo mkdir -p $(DESTDIR)$(prefix)/share/metainfo
install -m 644 contrib/linux/dosbox-x.metainfo.xml $(DESTDIR)$(prefix)/share/metainfo install -m 644 $(srcdir)/contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml $(DESTDIR)$(prefix)/share/metainfo
-test -x /usr/sbin/setcap && setcap cap_net_raw=ep $(DESTDIR)$(bindir)/dosbox-x -test -x /usr/sbin/setcap && setcap cap_net_raw=ep $(DESTDIR)$(bindir)/dosbox-x
install_strip: src/dosbox-x install install_strip: src/dosbox-x install
@@ -97,5 +97,7 @@ uninstall:
rm -f $(DESTDIR)$(prefix)/share/icons/hicolor/48x48/apps/dosbox-x.png rm -f $(DESTDIR)$(prefix)/share/icons/hicolor/48x48/apps/dosbox-x.png
rm -f $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/dosbox-x.svg rm -f $(DESTDIR)$(prefix)/share/icons/hicolor/scalable/apps/dosbox-x.svg
rm -f $(DESTDIR)$(prefix)/share/applications/dosbox-x.desktop rm -f $(DESTDIR)$(prefix)/share/applications/dosbox-x.desktop
rm -f $(DESTDIR)$(prefix)/share/applications/com.dosbox_x.DOSBox-X.desktop
rm -f $(DESTDIR)$(prefix)/share/metainfo/dosbox-x.metainfo.xml rm -f $(DESTDIR)$(prefix)/share/metainfo/dosbox-x.metainfo.xml
rm -f $(DESTDIR)$(prefix)/share/metainfo/com.dosbox_x.DOSBox-X.metainfo.xml

View File

@@ -13,4 +13,7 @@ rm -Rfv visualc_net/libpng/projects/visualc71/Win32_LIB_Release
rm -Rfv vs2008/sdl/VisualC/SDLmain/Release vs2008/sdl/VisualC/SDL/Release vs2008/sdlnet/VisualC/Release rm -Rfv vs2008/sdl/VisualC/SDLmain/Release vs2008/sdl/VisualC/SDL/Release vs2008/sdlnet/VisualC/Release
rm -Rfv vs2008/Debug vs2008/Release rm -Rfv vs2008/Debug vs2008/Release
rm -Rfv autom4te.cache rm -Rfv autom4te.cache
rm -Rfv build-flatpak
rm -Rfv .flatpak-builder
rm -Rfv myrepo

View File

@@ -1090,7 +1090,7 @@ src/platform/Makefile
include/Makefile include/Makefile
contrib/macos/dosbox-x.plist contrib/macos/dosbox-x.plist
contrib/linux/dosbox-x.spec contrib/linux/dosbox-x.spec
contrib/linux/dosbox-x.metainfo.xml contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml
make-rpm.sh make-rpm.sh
]) ])
AC_OUTPUT AC_OUTPUT

View File

@@ -3,7 +3,7 @@ runtime: org.freedesktop.Platform
runtime-version: '20.08' runtime-version: '20.08'
sdk: org.freedesktop.Sdk sdk: org.freedesktop.Sdk
command: dosbox-x-sdl2 command: dosbox-x
finish-args: # flatpak permissions finish-args: # flatpak permissions
- --device=all # needed for gamepads and serial/parallel - --device=all # needed for gamepads and serial/parallel
@@ -65,12 +65,10 @@ modules:
- type: dir - type: dir
path: ../.. path: ../..
post-install: post-install:
- install -Dm755 /app/bin/dosbox-x /app/bin/dosbox-x-sdl2 - install -Dm644 /app/share/applications/com.dosbox_x.DOSBox-X.desktop /app/share/applications/${FLATPAK_ID}.desktop
- install -Dm644 /app/share/applications/dosbox-x.desktop /app/share/applications/${FLATPAK_ID}.desktop
- install -Dm644 /app/share/icons/hicolor/scalable/apps/dosbox-x.svg /app/share/icons/hicolor/scalable/apps/${FLATPAK_ID}.svg - install -Dm644 /app/share/icons/hicolor/scalable/apps/dosbox-x.svg /app/share/icons/hicolor/scalable/apps/${FLATPAK_ID}.svg
- install -Dm644 /app/share/metainfo/dosbox-x.metainfo.xml /app/share/metainfo/${FLATPAK_ID}.metainfo.xml - install -Dm644 /app/share/metainfo/com.dosbox_x.DOSBox-X.metainfo.xml /app/share/metainfo/${FLATPAK_ID}.metainfo.xml
- desktop-file-edit --set-key=Icon --set-value=${FLATPAK_ID} /app/share/applications/${FLATPAK_ID}.desktop - desktop-file-edit --set-key=Icon --set-value=${FLATPAK_ID} /app/share/applications/${FLATPAK_ID}.desktop
- desktop-file-edit --set-key=Exec --set-value=dosbox-x-sdl2 /app/share/applications/${FLATPAK_ID}.desktop
- desktop-file-edit --set-key=Name --set-value="DOSBox-X SDL2" /app/share/applications/${FLATPAK_ID}.desktop - desktop-file-edit --set-key=Name --set-value="DOSBox-X SDL2" /app/share/applications/${FLATPAK_ID}.desktop
- appstream-util modify /app/share/metainfo/${FLATPAK_ID}.metainfo.xml id dosbox-x-sdl2 - appstream-util modify /app/share/metainfo/${FLATPAK_ID}.metainfo.xml id dosbox-x-sdl2
- appstream-util modify /app/share/metainfo/${FLATPAK_ID}.metainfo.xml name "DOSBox-X SDL2" - appstream-util modify /app/share/metainfo/${FLATPAK_ID}.metainfo.xml name "DOSBox-X SDL2"

View File

@@ -68,7 +68,5 @@ modules:
- ./build-debug - ./build-debug
- make bindir=/app/bin prefix=/app install - make bindir=/app/bin prefix=/app install
post-install: post-install:
- install -Dm644 /app/share/applications/dosbox-x.desktop /app/share/applications/${FLATPAK_ID}.desktop
- install -Dm644 /app/share/icons/hicolor/scalable/apps/dosbox-x.svg /app/share/icons/hicolor/scalable/apps/${FLATPAK_ID}.svg - install -Dm644 /app/share/icons/hicolor/scalable/apps/dosbox-x.svg /app/share/icons/hicolor/scalable/apps/${FLATPAK_ID}.svg
- install -Dm644 /app/share/metainfo/dosbox-x.metainfo.xml /app/share/metainfo/${FLATPAK_ID}.metainfo.xml
- desktop-file-edit --set-key=Icon --set-value=${FLATPAK_ID} /app/share/applications/${FLATPAK_ID}.desktop - desktop-file-edit --set-key=Icon --set-value=${FLATPAK_ID} /app/share/applications/${FLATPAK_ID}.desktop

View File

@@ -12,9 +12,9 @@ License: GPL
URL: https://dosbox-x.com URL: https://dosbox-x.com
Group: Applications/Emulators Group: Applications/Emulators
Source0: @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.xz Source0: @PACKAGE_NAME@-@PACKAGE_VERSION@.tar.xz
Source1: dosbox-x.desktop Source1: com.dosbox_x.DOSBox-X.desktop
Source2: dosbox-x.svg Source2: dosbox-x.svg
Source3: dosbox-x.metainfo.xml Source3: com.dosbox_x.DOSBox-X.metainfo.xml
%description %description
DOSBox-X is a cross-platform DOS emulator based on DOSBox. DOSBox-X is a cross-platform DOS emulator based on DOSBox.

View File

@@ -16,12 +16,12 @@ if [ $? -eq 0 ]; then
echo echo
echo You can now install the flatpak by running the following commands: echo You can now install the flatpak by running the following commands:
echo echo
echo flatpak --user remote-add --no-gpg-verify myrepo repo echo flatpak --user remote-add --no-gpg-verify myrepo myrepo
echo flatpak --user install myrepo com.dosbox_x.DOSBox-X-sdl2 echo flatpak --user install myrepo com.dosbox_x.DOSBox-X-sdl2
echo echo
echo You can then run the flatpak as follows: echo You can then run the flatpak as follows:
echo flatpak run com.dosbox_x.DOSBox-X-sdl2 echo flatpak run com.dosbox_x.DOSBox-X-sdl2
echo echo
echo Or you can test it without installing by running: echo Or you can test it without installing by running:
echo flatpak-builder --run build-flatpak contrib/linux/com.dosbox_x.DOSBox-X-sdl2.yaml dosbox-x-sdl2 echo flatpak-builder --run build-flatpak contrib/linux/com.dosbox_x.DOSBox-X-sdl2.yaml dosbox-x
fi fi

View File

@@ -16,7 +16,7 @@ if [ $? -eq 0 ]; then
echo echo
echo You can now install the flatpak by running the following commands: echo You can now install the flatpak by running the following commands:
echo echo
echo flatpak --user remote-add --no-gpg-verify myrepo repo echo flatpak --user remote-add --no-gpg-verify myrepo myrepo
echo flatpak --user install myrepo com.dosbox_x.DOSBox-X echo flatpak --user install myrepo com.dosbox_x.DOSBox-X
echo echo
echo You can then run the flatpak as follows: echo You can then run the flatpak as follows:

View File

@@ -25,8 +25,8 @@ tar="../@PACKAGE_NAME@-@PACKAGE_VERSION@.tar.xz"
tar -cvJf "$tar" --exclude=\*.git --exclude=\*.tar.xz --exclude=\*.a --exclude=\*.la --exclude=\*.Po --exclude=\*.o -C .. dosbox-x || exit 1 tar -cvJf "$tar" --exclude=\*.git --exclude=\*.tar.xz --exclude=\*.a --exclude=\*.la --exclude=\*.Po --exclude=\*.o -C .. dosbox-x || exit 1
cp -vf "$tar" ~/rpmbuild/SOURCES/ || exit 1 cp -vf "$tar" ~/rpmbuild/SOURCES/ || exit 1
cp -vf contrib/linux/dosbox-x.desktop ~/rpmbuild/SOURCES/ || exit 1 cp -vf contrib/linux/com.dosbox_x.DOSBox-X.desktop ~/rpmbuild/SOURCES/ || exit 1
cp -vf contrib/linux/dosbox-x.metainfo.xml ~/rpmbuild/SOURCES/ || exit 1 cp -vf contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml ~/rpmbuild/SOURCES/ || exit 1
cp -vf contrib/icons/dosbox-x.svg ~/rpmbuild/SOURCES/ || exit 1 cp -vf contrib/icons/dosbox-x.svg ~/rpmbuild/SOURCES/ || exit 1
rpmbuild -bb contrib/linux/dosbox-x.spec || exit 1 rpmbuild -bb contrib/linux/dosbox-x.spec || exit 1
rm -v "$tar" || exit 1 rm -v "$tar" || exit 1

View File

@@ -26,7 +26,7 @@ close(X);
use strict; use strict;
use warnings; use warnings;
my $file = "contrib/linux/dosbox-x.metainfo.xml.in"; my $file = "contrib/linux/com.dosbox_x.DOSBox-X.metainfo.xml.in";
open FILE, $file or die "Can't read from $file!\n"; open FILE, $file or die "Can't read from $file!\n";
my @lines; my @lines;