From: Johannes Thyssen Tishman Subject: Re: FreeCAD org.freecad.FreeCAD.desktop To: "Heppler, J. Scott" Cc: ports@openbsd.org Date: Wed, 13 Aug 2025 22:45:48 +0000 2025-08-11T12:00:06-0700 "Heppler, J. Scott" : > First off, thanks for all the effort in porting FreeCAD. I followed the > development and the skill and effort was evident. Hi Scott. Sorry for the late reply. I'm happy to see that there are some testers of FreeCAD already :) > CAD drafting and 3D printing is a rapidly growing, competitive area with > essentially non-existent design rights in Cloud based solutions. Worse > yet, some slicing programs upload to a LAN 3D printer via off-shore > servers. OpenBSD privacy and security features make it a very attractive > platform for device engineering and development. > > > I did notice that FreeCAD does not start via the *.desktop file. > > To test, I copied the file to ~/.local/share/applications and edited > Exec=FreeCAD - --single-instance %F > to > Exec=freecad - --single-instance %F > > The ~/.local version works. I also checked "FreeCAD" is in the upstream > code base. > > Not sure if we're missing a FreeCAD start script or upstream is > incorrect. Thanks for reporting this. The problem here is that we link the binary in lowercase: $ grep -A2 post-install cad/freecad/Makefile post-install: ln -s ${LOCALBASE}/lib/freecad/bin/FreeCAD ${PREFIX}/bin/freecad ln -s ${LOCALBASE}/lib/freecad/bin/FreeCADCmd ${PREFIX}/bin/freecad-cmd This is just preference, but now I wonder if it was a bad decision. I suggest that we keep the binary as is for now and patch the .desktop file. If this causes further issues in the future, I'll revert to the original name. What do you think? Diff below. Ok? Index: Makefile =================================================================== RCS file: /cvs/ports/cad/freecad/Makefile,v diff -u -p -u -p -r1.3 Makefile --- Makefile 12 Aug 2025 08:16:33 -0000 1.3 +++ Makefile 13 Aug 2025 22:39:51 -0000 @@ -6,6 +6,7 @@ COMMENT = general purpose parametric 3D V = 1.0.1 PKGNAME = ${DISTNAME:L} +REVISION = 0 GH_ACCOUNT = FreeCAD GH_PROJECT = FreeCAD Index: patches/patch-src_XDGData_org_freecad_FreeCAD_desktop =================================================================== RCS file: patches/patch-src_XDGData_org_freecad_FreeCAD_desktop diff -N patches/patch-src_XDGData_org_freecad_FreeCAD_desktop --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-src_XDGData_org_freecad_FreeCAD_desktop 13 Aug 2025 22:39:51 -0000 @@ -0,0 +1,12 @@ +Index: src/XDGData/org.freecad.FreeCAD.desktop +--- src/XDGData/org.freecad.FreeCAD.desktop.orig ++++ src/XDGData/org.freecad.FreeCAD.desktop +@@ -14,7 +14,7 @@ GenericName[de]=CAD-Anwendung + GenericName[ko]=CAD 응용프로그램 + GenericName[pl]=Aplikacja CAD + GenericName[ru]=Система автоматизированного проектирования +-Exec=FreeCAD - --single-instance %F ++Exec=freecad - --single-instance %F + Terminal=false + Type=Application + Icon=org.freecad.FreeCAD