commit:     07a0dd0ba57d50982c1614c920fc95da3e955a5f
Author:     Paul Zander <negril.nx+gentoo <AT> gmail <DOT> com>
AuthorDate: Sat Oct  4 18:59:54 2025 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Oct  6 15:41:52 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07a0dd0b

media-gfx/freecad: install .desktop file and related

Move them out of the freecad prefix dir. This needs to be revisited.

Closes: https://bugs.gentoo.org/961085
Signed-off-by: Paul Zander <negril.nx+gentoo <AT> gmail.com>
Part-of: https://github.com/gentoo/gentoo/pull/44062
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../{freecad-1.0.1.ebuild => freecad-1.0.1-r1.ebuild}       | 13 ++++++++-----
 .../{freecad-1.0.2.ebuild => freecad-1.0.2-r1.ebuild}       | 13 ++++++++-----
 media-gfx/freecad/freecad-9999.ebuild                       | 13 ++++++++-----
 3 files changed, 24 insertions(+), 15 deletions(-)

diff --git a/media-gfx/freecad/freecad-1.0.1.ebuild 
b/media-gfx/freecad/freecad-1.0.1-r1.ebuild
similarity index 97%
rename from media-gfx/freecad/freecad-1.0.1.ebuild
rename to media-gfx/freecad/freecad-1.0.1-r1.ebuild
index e4e2b2a57315..514146008284 100644
--- a/media-gfx/freecad/freecad-1.0.1.ebuild
+++ b/media-gfx/freecad/freecad-1.0.1-r1.ebuild
@@ -256,9 +256,6 @@ pkg_setup() {
 }
 
 src_prepare() {
-       # Fix desktop file
-       sed -e 's/Exec=FreeCAD/Exec=freecad/' -i 
src/XDGData/org.freecad.FreeCAD.desktop || die
-
        # deprecated in python-3.11 removed in python-3.13
        sed -e '/import imghdr/d' -i src/Mod/CAM/CAMTests/TestCAMSanity.py || 
die
 
@@ -528,7 +525,7 @@ src_install() {
        cmake_src_install
 
        if use gui; then
-               newbin - freecad <<- _EOF_
+               newbin - FreeCAD <<- _EOF_
                        #!/bin/sh
                        # https://github.com/coin3d/coin/issues/451
                        : "\${QT_QPA_PLATFORM:=xcb}"
@@ -536,9 +533,15 @@ src_install() {
                        exec ${EPREFIX}/usr/$(get_libdir)/${PN}/bin/FreeCAD 
"\${@}"
                _EOF_
        fi
-       dosym -r "/usr/$(get_libdir)/${PN}/bin/FreeCADCmd" "/usr/bin/freecadcmd"
+       dosym -r "/usr/$(get_libdir)/${PN}/bin/FreeCADCmd" "/usr/bin/FreeCADCmd"
+       dosym -r "/usr/$(get_libdir)/${PN}/bin/freecad-thumbnailer" 
"/usr/bin/freecad-thumbnailer"
+
+       for dir in 
share/{applications,icons,metainfo,mime,pixmaps,thumbnailers}; do
+               mv "${ED}/usr/$(get_libdir)/${PN}/${dir}" "${ED}/usr/share/" || 
die "mv failed"
+       done
 
        rm -r "${ED}/usr/$(get_libdir)/${PN}/include/E57Format" || die "failed 
to drop unneeded include directory E57Format"
+       rmdir "${ED}/usr/$(get_libdir)/${PN}/include/" || die "failed to drop 
unneeded include directory"
 
        python_optimize "${ED}/usr/share/${PN}/data/Mod/Start/" 
"${ED}/usr/$(get_libdir)/${PN}/"{Ext,Mod}/
        # compile main package in python site-packages as well

diff --git a/media-gfx/freecad/freecad-1.0.2.ebuild 
b/media-gfx/freecad/freecad-1.0.2-r1.ebuild
similarity index 97%
rename from media-gfx/freecad/freecad-1.0.2.ebuild
rename to media-gfx/freecad/freecad-1.0.2-r1.ebuild
index b2646da2b973..8df6d990a874 100644
--- a/media-gfx/freecad/freecad-1.0.2.ebuild
+++ b/media-gfx/freecad/freecad-1.0.2-r1.ebuild
@@ -258,9 +258,6 @@ pkg_setup() {
 }
 
 src_prepare() {
-       # Fix desktop file
-       sed -e 's/Exec=FreeCAD/Exec=freecad/' -i 
src/XDGData/org.freecad.FreeCAD.desktop || die
-
        # deprecated in python-3.11 removed in python-3.13
        sed -e '/import imghdr/d' -i src/Mod/CAM/CAMTests/TestCAMSanity.py || 
die
 
@@ -541,7 +538,7 @@ src_install() {
        cmake_src_install
 
        if use gui; then
-               newbin - freecad <<- _EOF_
+               newbin - FreeCAD <<- _EOF_
                        #!/bin/sh
                        # https://github.com/coin3d/coin/issues/451
                        : "\${QT_QPA_PLATFORM:=xcb}"
@@ -549,9 +546,15 @@ src_install() {
                        exec ${EPREFIX}/usr/$(get_libdir)/${PN}/bin/FreeCAD 
"\${@}"
                _EOF_
        fi
-       dosym -r "/usr/$(get_libdir)/${PN}/bin/FreeCADCmd" "/usr/bin/freecadcmd"
+       dosym -r "/usr/$(get_libdir)/${PN}/bin/FreeCADCmd" "/usr/bin/FreeCADCmd"
+       dosym -r "/usr/$(get_libdir)/${PN}/bin/freecad-thumbnailer" 
"/usr/bin/freecad-thumbnailer"
+
+       for dir in 
share/{applications,icons,metainfo,mime,pixmaps,thumbnailers}; do
+               mv "${ED}/usr/$(get_libdir)/${PN}/${dir}" "${ED}/usr/share/" || 
die "mv failed"
+       done
 
        rm -r "${ED}/usr/$(get_libdir)/${PN}/include/E57Format" || die "failed 
to drop unneeded include directory E57Format"
+       rmdir "${ED}/usr/$(get_libdir)/${PN}/include/" || die "failed to drop 
unneeded include directory"
 
        python_optimize "${ED}/usr/share/${PN}/data/Mod/Start/" 
"${ED}/usr/$(get_libdir)/${PN}/"{Ext,Mod}/
        # compile main package in python site-packages as well

diff --git a/media-gfx/freecad/freecad-9999.ebuild 
b/media-gfx/freecad/freecad-9999.ebuild
index b5fa459de58f..674f1507421a 100644
--- a/media-gfx/freecad/freecad-9999.ebuild
+++ b/media-gfx/freecad/freecad-9999.ebuild
@@ -255,9 +255,6 @@ pkg_setup() {
 }
 
 src_prepare() {
-       # Fix desktop file
-       sed -e 's/Exec=FreeCAD/Exec=freecad/' -i 
src/XDGData/org.freecad.FreeCAD.desktop || die
-
        # deprecated in python-3.11 removed in python-3.13
        sed -e '/import imghdr/d' -i src/Mod/CAM/CAMTests/TestCAMSanity.py || 
die
 
@@ -542,7 +539,7 @@ src_install() {
        cmake_src_install
 
        if use gui; then
-               newbin - freecad <<- _EOF_
+               newbin - FreeCAD <<- _EOF_
                        #!/bin/sh
                        # https://github.com/coin3d/coin/issues/451
                        : "\${QT_QPA_PLATFORM:=xcb}"
@@ -550,9 +547,15 @@ src_install() {
                        exec ${EPREFIX}/usr/$(get_libdir)/${PN}/bin/FreeCAD 
"\${@}"
                _EOF_
        fi
-       dosym -r "/usr/$(get_libdir)/${PN}/bin/FreeCADCmd" "/usr/bin/freecadcmd"
+       dosym -r "/usr/$(get_libdir)/${PN}/bin/FreeCADCmd" "/usr/bin/FreeCADCmd"
+       dosym -r "/usr/$(get_libdir)/${PN}/bin/freecad-thumbnailer" 
"/usr/bin/freecad-thumbnailer"
+
+       for dir in 
share/{applications,icons,metainfo,mime,pixmaps,thumbnailers}; do
+               mv "${ED}/usr/$(get_libdir)/${PN}/${dir}" "${ED}/usr/share/" || 
die "mv failed"
+       done
 
        rm -r "${ED}/usr/$(get_libdir)/${PN}/include/E57Format" || die "failed 
to drop unneeded include directory E57Format"
+       rmdir "${ED}/usr/$(get_libdir)/${PN}/include/" || die "failed to drop 
unneeded include directory"
 
        python_optimize "${ED}/usr/share/${PN}/data/Mod/Start/" 
"${ED}/usr/$(get_libdir)/${PN}/"{Ext,Mod}/
        # compile main package in python site-packages as well

Reply via email to