pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: wip/dte 1.11.1 committer request



On 1/2/24 19:53, Kevin Bloom wrote:
Hi J,

Jason Bacon <jtocino%gmx.com@localhost> wrote:

wip/dte has a plist issue on both versions of Darwin I have running:

=> Checking file-check results for dte-1.11.1
ERROR: ************************************************************
ERROR: The following files are in the PLIST but not in
/Users/bacon/Pkgsrc/pkgsrc/wip/dte/work/.destdir/Users/bacon/Pkgsrc/pkg:
ERROR:
/Users/bacon/Pkgsrc/pkgsrc/wip/dte/work/.destdir/Users/bacon/Pkgsrc/pkg/share/applications/dte.desktop
ERROR:
/Users/bacon/Pkgsrc/pkgsrc/wip/dte/work/.destdir/Users/bacon/Pkgsrc/pkg/share/metainfo/dte.appdata.xml
*** Error code 1

I think I remember reading something about dte.desktop... I can't
quite put my finger on it, however.

editors/dte works, so committing this would be a regression.  I'll look
into the plist issue when I have a moment.

It appears `gmake install` doesn't install them on Darwin probably
because .desktop files aren't normally used there (from my
experience).

 From GNUmakefile:
```
ifneq "$(KERNEL)" "Darwin"
  install: install-desktop-file install-appstream
  uninstall: uninstall-desktop-file uninstall-appstream
endif
```
The reason this doesn't happen on editors/dte is because those don't
seem to be included at all in the PLIST.

Would it be okay if I added an exception for Darwin to the PLIST?

Kev

Looks like you added the filter variable to PLIST, but forgot to define
it in the pkgsrc Makefile.  ${PLIST.notdarwin} is not predefined by
pkgsrc, so you can't use it in PLIST before defining it yourself.  An
example from editors/codelite/Makefile:

.include "../../mk/bsd.prefs.mk"

PLIST_VARS+=            notdarwin
.if ${OPSYS} != "Darwin"
PLIST.notdarwin=        YES
.endif

For codelite, this probably make sense, since it avoids installing a
binary that apparently won't work on Darwin (maybe requires X11?):

${PLIST.notdarwin}bin/codelite-terminal

For dte, the only benefit of not installing the desktop files is saving
about 15 kB of disk for files that aren't needed:

-rw-r--r--  1 bacon  staff    12K Jan  3 08:00
/Users/bacon/Pkgsrc/pkg/share/applications/dte.desktop
-rw-r--r--  1 bacon  staff   2.7K Jan  3 08:00
/Users/bacon/Pkgsrc/pkg/share/metainfo/dte.appdata.xml

Those files aren't doing any harm on Darwin.  Not worth complicating the
package for, plus some Darwin user might want to look at them during a
conversation about dte.  For this case, I would just patch out the
conditional, so we have an uncluttered Makefile and a consistent PLIST.

# Make PLIST consistent across platforms

--- GNUmakefile.orig    2024-01-03 13:58:59.331475591 +0000
+++ GNUmakefile
@@ -41,10 +41,8 @@ check: check-tests check-opts
 install: install-bin install-man install-bash-completion
 uninstall: uninstall-bin uninstall-man uninstall-bash-completion

-ifneq "$(KERNEL)" "Darwin"
- install: install-desktop-file install-appstream
- uninstall: uninstall-desktop-file uninstall-appstream
-endif
+install: install-desktop-file install-appstream
+uninstall: uninstall-desktop-file uninstall-appstream

 install-bin: all
        $(Q) $(INSTALL) -d -m755 '$(DESTDIR)$(bindir)'



Home | Main Index | Thread Index | Old Index