Opened 22 months ago

Closed 22 months ago

Last modified 21 months ago

#66841 closed defect (fixed)

libgpg-error @1.46_1 does not install (register) its texinfo file in dir file

Reported by: ballapete (Peter "Pete" Dyballa) Owned by: Schamschula (Marius Schamschula)
Priority: Normal Milestone:
Component: ports Version: 2.8.1
Keywords: Cc:
Port: libgpg-error

Description

sh-3.2# pushd /opt/local/share/info ; for INFO in *.info ; do INFO="`echo $INFO | awk -F. '{ print $1 }'`"; printf "»» $INFO: ";  if [ `grep "\($INFO\)" dir | wc -l` -gt 0 ] ; then echo OK ; else echo "** missing **" ; fi; done

reports

»» gpgrt: ** missing **

All all hints of gpgrt are missing in dir file.

install-info gpgrt.info dir

would do the job.

Change History (14)

comment:1 Changed 22 months ago by Schamschula (Marius Schamschula)

Cc: mps@… removed
Owner: set to Schamschula
Status: newassigned

So I need to add texinfo as a build dependency to libgpg-error and GNU packages?

Maybe time for +doc variants!

Also see: #66842 and #66846

comment:2 Changed 22 months ago by Schamschula (Marius Schamschula)

The problem here is that this has to happen in the activate phase, and for that matter the deactivate phase.

comment:3 in reply to:  1 ; Changed 22 months ago by ballapete (Peter "Pete" Dyballa)

Replying to Schamschula:

So I need to add texinfo as a build dependency to libgpg-error and GNU packages?

No. Because you would not need the MacPorts binary of install-info, it is already provided by macOS. And also the reader info. These just belong to a useful UNIX system. And is also proper usage of this system updating the dir file(s).

Maybe time for +doc variants!

This "documentation" is ready for use. It just needs to be activated – or deactivated, when the package is deinstalled.

comment:4 in reply to:  2 Changed 22 months ago by ballapete (Peter "Pete" Dyballa)

Replying to Schamschula:

The problem here is that this has to happen in the activate phase, and for that matter the deactivate phase.

Can be. I am not that deep in how MacPorts works, I am just seeing some deficiencies. Some packages, or ports, are able to handle this themselves. GCC is such a package. It fails with MacPorts because MacPorts renames the INFO files without tracking this change in the dir directory file. Others just copy ("install") their INFO files somewhere without actually registering them for use, or activating them.

comment:5 in reply to:  3 Changed 22 months ago by Schamschula (Marius Schamschula)

Replying to ballapete:

Replying to Schamschula:

So I need to add texinfo as a build dependency to libgpg-error and GNU packages?

No. Because you would not need the MacPorts binary of install-info, it is already provided by macOS. And also the reader info. These just belong to a useful UNIX system. And is also proper usage of this system updating the dir file(s).

OK. But

 % /usr/bin/install-info --version
install-info (GNU texinfo) 4.8

Copyright (C) 2004 Free Software Foundation, Inc.

vs

% install-info --version 
install-info (GNU texinfo) 7.0.2

Copyright (C) 2023 Free Software Foundation, Inc.

Maybe time for +doc variants!

This "documentation" is ready for use. It just needs to be activated – or deactivated, when the package is deinstalled.

That's the real sticking point. I see no documentation how to do this.

Last edited 22 months ago by Schamschula (Marius Schamschula) (previous) (diff)

comment:6 Changed 22 months ago by ballapete (Peter "Pete" Dyballa)

The different versions play no big role for basic maintenance. They do not vary in installing/registering the INFO file or doing the contrary. In the first case it's just install-info <the INFO file> dir and deinstalling works with install-info --delete <the INFO file> dir – see man install-info.

But beware: it works to install/register for example gindent because install-info just copies the description from the given INFO file into the dir file at the given place. De-installation will fail, because there is no gindent file recorded in dir. And it would also fail when you tell install-info --delete indent.info dir:

install-info: No such file or directory für indent.info

Maybe port works better in version 2.8.2?

comment:7 Changed 22 months ago by ballapete (Peter "Pete" Dyballa)

Have a workaround would be to mention in a note that INFO file(s) do exist and can be installed via '…' Deinstallation cannot be handled this way because the INFO source file would already be removed when the (other) note gets printed.

comment:8 Changed 22 months ago by Schamschula (Marius Schamschula)

comment:9 Changed 22 months ago by Marius Schamschula <mschamschula@…>

Resolution: fixed
Status: assignedclosed

In 1d65472728d95e08e071bb4bdab66924ec7cc6ac/macports-ports (master):

libgpg-error: use gnu_info PG

Closes: #66841

comment:10 Changed 22 months ago by ballapete (Peter "Pete" Dyballa)

The installation now is complete:

DEBUG: activating file: /opt/local/share/man/man1/gpg-error-config.1.gz
DEBUG: Executing proc-post-org.macports.activate-activate-0
DEBUG: Registering GNU info file /opt/local/share/info/gpgrt.info in /opt/local/share/info/dir using /opt/local/bin/install-info
DEBUG: system: /opt/local/bin/install-info /opt/local/share/info/gpgrt.info /opt/local/share/info/dir
DEBUG: Executing portactivate::activate_finish
DEBUG: Executing org.macports.main (libgpg-error)

The ticket can be closed.

comment:11 Changed 22 months ago by jmroot (Joshua Root)

This adds a runtime dependency on texinfo for everyone. Personally, I can't even remember the last time I ran info. Can we put the info pages in a variant or a separate port or something instead?

comment:12 in reply to:  11 Changed 21 months ago by ballapete (Peter "Pete" Dyballa)

Replying to jmroot:

This adds a runtime dependency on texinfo for everyone. Personally, I can't even remember the last time I ran info. Can we put the info pages in a variant or a separate port or something instead?

Why? Does MacPorts have its own versions of cp, mv, mail, ls, whatever? info and install-info are part of Mac OS X and macOS.

comment:13 Changed 21 months ago by Schamschula (Marius Schamschula)

See comment:5

Apple's version of texinfo is obsolete (nearly twenty years old). There may be incompatibilities.

Last edited 21 months ago by ryandesign (Ryan Carsten Schmidt) (previous) (diff)

comment:14 Changed 21 months ago by ballapete (Peter "Pete" Dyballa)

Both versions work the same way inserting and removing entries from the dir file. Is there anything more the binaries of old or recent texinfo need to perform?

Note: See TracTickets for help on using tickets.