nvi port on Ventura

2023-06-15 Thread Kastus Shchuka
I got an MBP modern enough to run Ventura. (My workhorse MBA cannot go above 
High Sierra).

For my personal needs I prefer nvi over vim that comes with macOS. This is my 
daily driver on MBA.

I can build nvi on High Sierra just fine, also binary package for High Sierra 
is available from buildbots.

When I tried to install nvi on Ventura, first I noticed absence of binary 
package. Next, my attempt to build port failed miserably.

I also found ticket #64197 on trac.

My first instinct was to try clang of the same version as on High Sierra 
(clang-9.0), but that did not make any change. Build was still failing.

Then I checked nvi on homebrew and found out that it builds there on all macOS 
versions and they have binaries available.

Homebrew formula adds this flag to configure:

# Xcode 12 needs the "-Wno-implicit-function-declaration" to compile 
successfully
  # The usual trick of setting $CFLAGS in the environment doesn't work for 
this
  # configure file though, but specifying an explicit CC setting does
  system "./configure", "--prefix=#{prefix}",
"--program-prefix=n",
"--disable-dependency-tracking",
"CC=" + ENV.cc + " 
-Wno-implicit-function-declaration"

This got me over the error "implicit declaration of function 'conv_enc'", but 
the build was still breaking on the linking step.

What I found next was that configure script populates libtool with correct 
setting of allow_undefined_flag on High Sierra, but not on Ventura. Apparently, 
the logic in configure works for MACOSX_DEPLOYMENT_TARGET 10.* but not on any 
higher versions of macOS.

I guess homebrew works around it by running autoreconfigure, but I was 
unsuccessful in that as it complained about missing configure.ac file.

So my crude fix was a patch for configure script (with appropriate adjustments 
to the portfile). 

With this patch I was able to build nvi, and it is quite usable (in my limited 
testing)

I commented on my findings in https://trac.macports.org/ticket/64197.

Thanks,

Kastus



ports.tar owner/group

2023-05-07 Thread Kastus Shchuka
Hi.

After running port sync I see files extracted from ports.tar owned by a 
non-existent group with numerical id 505:

$ ls -l 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/
total 474776
-rw-r--r--   1 root  admin   20472245 Apr 30 17:46 PortIndex
-rw-r--r--   1 root  admin512 Apr 30 18:29 PortIndex.rmd160
drwxr-xr-x  30 root  505  960 Jan 30 18:30 base
-rw-r--r--   1 root  admin  114272256 Jan 30 18:51 base.tar
-rw-r--r--   1 root  admin512 Jan 30 18:51 base.tar.rmd160
drwxr-xr-x  65 root  505 2080 Apr 30 19:21 ports
-rw-r--r--   1 root  admin  108322816 Apr 30 18:29 ports.tar
-rw-r--r--   1 root  admin512 Apr 30 18:29 ports.tar.rmd160

All files in ports.tar are owned by buildbot:buildbot or numerically 500/505.

drwxr-xr-x  0 buildbot buildbot0 Mar 29 17:36 ports/
-rw-r--r--  0 buildbot buildbot  234 Nov 16  2020 ports/.gitattributes
drwxr-xr-x  0 buildbot buildbot0 Nov 26 10:09 ports/.github/
-rw-r--r--  0 buildbot buildbot   84 Nov 16  2020 ports/.gitignore
-rw-r--r--  0 buildbot buildbot 1476 Mar 29 17:36 ports/.mailmap
-rw-r--r--  0 buildbot buildbot 1996 Feb  8 23:57 ports/LICENSE

drwxr-xr-x  0 500505 0 Mar 29 17:36 ports/
-rw-r--r--  0 500505   234 Nov 16  2020 ports/.gitattributes
drwxr-xr-x  0 500505 0 Nov 26 10:09 ports/.github/
-rw-r--r--  0 50050584 Nov 16  2020 ports/.gitignore
-rw-r--r--  0 500505  1476 Mar 29 17:36 ports/.mailmap
-rw-r--r--  0 500505  1996 Feb  8 23:57 ports/LICENSE


As I don't have local user with id 500 and neither I have group with id 505,
I end up with files owned by unknown group.

I think it is a side effect of extracting ports.tar by user root which can 
preserve original numeric ids.

I wonder if extracted tarball should be forced to root:admin ownership after 
extraction.

Or do I need to create local user buildbot:buildbot (500:505) to continue using 
binary packages?

Thanks,

Kastus

p5-net-ssleay dependency on openssl

2023-04-30 Thread Kastus Shchuka
My "port upgrade outdated" choked today on p5.30-net-ssleay:

$ sudo port upgrade outdated
--->  Computing dependencies for openssl
Error: Can't install openssl because conflicting ports are active: libressl
Error: Problem while installing openssl
Error: Follow https://guide.macports.org/#project.tickets if you believe there 
is a bug.

Debug shows this:

DEBUG: p5.30-net-ssleay 1.920.0_1 exists in the ports tree
DEBUG: p5.30-net-ssleay 1.920.0_0  is the latest installed
DEBUG: p5.30-net-ssleay 1.920.0_0  is active
DEBUG: Merging existing requested variants '' into variants
DEBUG: new fully merged portvariants: 
DEBUG: Changing to port directory: 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-net-ssleay
DEBUG: OS darwin/17.7.0 (macOS 10.13.6) arch i386
DEBUG: Re-registering default for configure.universal_args
DEBUG: Sourcing PortGroup perl5 1.0 from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/perl5-1.0.tcl
DEBUG: Re-registering default for livecheck.version
DEBUG: adding the default universal variant
DEBUG: Reading variant descriptions from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/variant_descriptions.conf
DEBUG: Running callback portconfigure::add_automatic_compiler_dependencies
DEBUG: Finished running callback 
portconfigure::add_automatic_compiler_dependencies
DEBUG: Running callback portbuild::add_automatic_buildsystem_dependencies
DEBUG: Finished running callback 
portbuild::add_automatic_buildsystem_dependencies
DEBUG: Running callback portstartupitem::add_notes
DEBUG: Finished running callback portstartupitem::add_notes
DEBUG: Fetching p5.30-net-ssleay-1.920.0_1.darwin_17.x86_64.tbz2 archive size
DEBUG: openssl is *not* installed by MacPorts
DEBUG: Searching for dependency: openssl
DEBUG: Didn't find receipt, going to depspec regex for: openssl
DEBUG: Changing to port directory: 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/devel/openssl
DEBUG: OS darwin/17.7.0 (macOS 10.13.6) arch i386
DEBUG: Sourcing PortGroup compiler_wrapper 1.0 from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/compiler_wrapper-1.0.tcl
DEBUG: Sourcing PortGroup openssl 1.0 from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/openssl-1.0.tcl
DEBUG: openssl: Set OpenSSL Branch dependency 3
DEBUG: openssl: configure_proc set : Configure ''
DEBUG: adding the default universal variant
DEBUG: Reading variant descriptions from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/variant_descriptions.conf
DEBUG: Running callback portconfigure::add_automatic_compiler_dependencies
DEBUG: Finished running callback 
portconfigure::add_automatic_compiler_dependencies
DEBUG: Running callback portbuild::add_automatic_buildsystem_dependencies
DEBUG: Finished running callback 
portbuild::add_automatic_buildsystem_dependencies
DEBUG: Running callback portstartupitem::add_notes
DEBUG: Finished running callback portstartupitem::add_notes
DEBUG: Running callback compwrap::configure_envs
DEBUG: Finished running callback compwrap::configure_envs
DEBUG: Running callback openssl::set_openssl_dependency
DEBUG: openssl: Set OpenSSL Branch dependency 3
DEBUG: Finished running callback openssl::set_openssl_dependency
DEBUG: Running callback openssl::check_for_cmake
DEBUG: Finished running callback openssl::check_for_cmake
DEBUG: Running callback openssl::configure_build
DEBUG: Finished running callback openssl::configure_build
DEBUG: Fetching openssl-3_10.darwin_17.x86_64.tbz2 archive size
DEBUG: epoch: in tree: 0 installed: 0
DEBUG: openssl3 3.1.0_3 exists in the ports tree
DEBUG: openssl3 3.1.0_3  is the latest installed
DEBUG: openssl3 3.1.0_3  is active
DEBUG: Merging existing requested variants '' into variants
DEBUG: new fully merged portvariants: 
DEBUG: Changing to port directory: 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/devel/openssl3
DEBUG: OS darwin/17.7.0 (macOS 10.13.6) arch i386
DEBUG: Sourcing PortGroup compiler_blacklist_versions 1.0 from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/compiler_blacklist_versions-1.0.tcl
DEBUG: Sourcing PortGroup muniversal 1.0 from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/muniversal-1.0.tcl
DEBUG: Sourcing PortGroup legacysupport 1.1 from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/group/legacysupport-1.1.tcl
DEBUG: legacysupport: Will append MACPORTS_LEGACY_SUPPORT_DISABLED=1 to 
extract.env
DEBUG: legacysupport: Will append MACPORTS_LEGACY_SUPPORT_DISABLED=1 to 
configure.env
DEBUG: legacysupport: 

Re: What have I forgotten about specifying which Perl should be /opt/local/bin/perl?

2022-01-21 Thread Kastus Shchuka
I am afraid there is still confusion about port info action. According to the 
man page, it merely "Displays meta-information available for portname". This 
information comes from port definition, not from port installation. You may run 
"port info" on any port, regardless whether it is installed or not, and see 
that output. Port may be defined with multiple variants, and some of them may 
be pre-selected as defaults for the port, and will be used when port is 
installed without any explicit variants. Port info has nothing to do with a 
port that you installed.

If you want to see what variants a port was installed with, you have to use 
"installed" or "active" pseudo-portname:

`` The pseudo-portnames are:

   o   all: all the ports in each ports tree listed in sources.conf

   o   current: the port in the current working directory

   o   active: set of installed and active ports

   o   inactive: set of installed but inactive ports

   o   installed: set of all installed ports

''

Please note a clash of terms as there is port action "installed" and port 
pseudo-portname "installed". That is why "port installed" is a valid syntax 
("installed" is an action here), while "port active" is not. You have to use 
action "echo" with "active", like "port echo active".

$ port active and perl5
Error: Unrecognized action "port active"
$ port echo active and perl5
perl5  @5.28.3_0+perl5_30 
$ man port  
$ port echo installed and perl5
perl5  @5.26.1_0+perl5_28 
perl5  @5.28.3_0+perl5_28 
perl5      @5.28.3_0+perl5_30 


> On Jan 21, 2022, at 9:32 PM, Gabriel Rosenkoetter  wrote:
> 
> On 2022-01-21 23:48 EST, Kastus Shchuka wrote:
>> If you want to see just the active port, you may trim down the output like 
>> this:
>> $ port installed and active and perl5
>> The following ports are currently installed:
>>   perl5 @5.28.3_0+perl5_30 (active)
>> Hope this helps to reduce confusion.
> 
> Thank you!
> 
> It does!
> 
> I think the [+] label, in the output of `port info ` is a confusing 
> UI/UX choice, especially in the context of the + as an argument to `port 
> install  +_version` to request activation of a specific Port 
> version.
> 
> I think displaying the default/anticipated version makes a lot of sense, I'm 
> just saying the way that's expressed (and that the currently "active" version 
> isn't expressed at all in *that* output) is confusing.
> 

"port info" does not know if port is installed or not, and it does not care 
about it. It queries port definition, not an installed port.

> That is: I think using + both to say "install this version" and "regardless 
> of what's active, our default would've been this" is a confusing conflation 
> of symbols.
> 
> Maybe `port info …` should use another symbol (*?) there, and should display 
> the active version by bracketing the version name?
> 
> That is, manually editing the output I posted earlier, maybe this format 
> would be more clear:
> 
> [7] (gr@wedge:~)% port info perl5
> perl5 @5.28.3 (lang)
> Sub-ports:perl5.16, perl5.18, perl5.20, perl5.22, perl5.24,
>  perl5.26, perl5.28, perl5.30, perl5.32, perl5.34
> Variants: perl5_26, [*]perl5_28, perl5_30, perl5_32,
>  [perl5_34]
> …
> * version standard, [bracketed] version active
> 
> I didn't edit the first line there because I haven't (yet) looked at the 
> code, so I don't understand where it's coming from. I'm confused about why 
> that'd read "perl5 @5.28.3 (lang)" rather than "perl5 @5.34.0 (lang)" on the 
> system in question.
> 

5.28.3 is the version of the wrapper port perl5 which merely creates symlinks 
to a particular version of perl installed via perl5.30 or perl5.34 port. As any 
port it has to have some version, but it has nothing to do with real perl port 
installed. 

> I guess that's an expression (by way of a DB query) of what a future `port 
> install` would presume was available, but I don't think it's an accurate 
> expression of what the installed software should expect to find out of `env 
> perl`.
> 
> Do I continue to miss something here?
> 

I am afraid, yes. The difference between meta-information about a port and 
installed port.

> (I'm amply aware of the mechanisms available to write and suggest this 
> alternate display through a pull request. I'm sending email instead to ask 
> whether other people agree with my UX confusion and plausible change.)
> 
> -- 
> Gabriel Rosenkoetter (he/him)
> g...@eclipsed.net



Re: What have I forgotten about specifying which Perl should be /opt/local/bin/perl?

2022-01-21 Thread Kastus Shchuka



> On Jan 21, 2022, at 5:42 PM, Gabriel Rosenkoetter  wrote:
> 
> On 2022-01-21 00:21 EST, Kastus Shchuka wrote:
>> You got the link /opt/local/bin/perl -> perl5.28 from the default variant of 
>> perl5 as you did not specify which variant you wanted.
> 
> Yep, I understood that, and that's exactly what I would've expected: I just 
> didn't realize that system didn't even have the "meta-port" installed at the 
> beginning of this, and I'm rusty at best on port variants. :^>
> 
>> You need to install perl5 +perl5_34 if you want 5.34.
> 
> That's *precisely* the syntax I was trying to remember. Thank you!
> 
> But, I'm confused by the `port info perl5` output after doing that. Is the 
> "[+]" just meant to imply "preferred version" rather than "active version"? 
> That seems… at best confusing…?
> 


"port info" gives you information about existing variants of the port, not what 
you have installed. "[+]" means deafault variant which is used if you do not 
specify any variants. If you want to see what you actually installed, the 
syntax is "port installed and perl5"

This is for example what I have:

$ port installed and perl5
The following ports are currently installed:
  perl5 @5.26.1_0+perl5_28
  perl5 @5.28.3_0+perl5_28
  perl5 @5.28.3_0+perl5_30 (active)

If you want to see just the active port, you may trim down the output like this:

$ port installed and active and perl5
The following ports are currently installed:
  perl5 @5.28.3_0+perl5_30 (active)

Hope this helps to reduce confusion.

-Kastus

Re: What have I forgotten about specifying which Perl should be /opt/local/bin/perl?

2022-01-20 Thread Kastus Shchuka
You got the link /opt/local/bin/perl -> perl5.28 from the default variant of 
perl5 as you did not specify which variant you wanted.

$ port info perl5
perl5 @5.28.3 (lang)
Sub-ports:perl5.16, perl5.18, perl5.20, perl5.22, perl5.24,
  perl5.26, perl5.28, perl5.30, perl5.32, perl5.34
Variants: perl5_26, [+]perl5_28, perl5_30, perl5_32, perl5_34

Description:  Wrapper port for Perl 5.x
Homepage: https://www.perl.org/

Library Dependencies: perl5.28
Platforms:darwin, freebsd, linux
License:  (Artistic-1 or GPL)
Maintainers:  Email: mo...@macports.org, GitHub: mojca
  Policy: openmaintainer


You need to install perl5 +perl5_34 if you want 5.34.

> On Jan 20, 2022, at 8:12 PM, Gabriel Rosenkoetter  wrote:
> 
> Aha!
> 
> I didn't have the perl5 port installed on this system at all, just the 
> several perl5.xx ports. So I did `sudo port install perl5`.
> 
> And that's neat, but:
> 
> [58] (gr@wedge:~)% which perl
> /opt/local/bin/perl
> [59] (gr@wedge:~)% ls -l `!!`
> ls -l `which perl`
> lrwxr-xr-x  1 root  admin  8 Dec  6  2020 /opt/local/bin/perl -> perl5.28
> [60] (gr@wedge:~)%
> 
> And `port select --summary` is still just Python stuff:
> 
> [60] (gr@wedge:~)% port select --summary
> Name Selected  Options
>    ===
> pip  pip37 pip3-apple none
> pip2 none  none
> pip3 none  pip3-apple none
> python   none  python27 python27-apple python37 python38-apple python39 
> none
> python2  none  python27 python27-apple none
> python3  python37  python37 python38-apple python39 none
> [61] (gr@wedge:~)% sudo port select --list perl
> Warning: Unable to get active selected version: The specified group 'perl' 
> does not exist.
> Error: The 'list' command failed: The specified group 'perl' does not exist.
> [62] (gr@wedge:~)% sudo port select --list perl5
> Warning: Unable to get active selected version: The specified group 'perl5' 
> does not exist.
> Error: The 'list' command failed: The specified group 'perl5' does not exist.
> [63] (gr@wedge:~)% sudo port select --set perl perl5.34
> Selecting 'perl5.34' for 'perl' failed: The specified group 'perl' does not 
> exist.
> [64] (gr@wedge:~)% sudo port select --set perl5 perl5.34
> Selecting 'perl5.34' for 'perl5' failed: The specified group 'perl5' does not 
> exist.
> [65] (gr@wedge:~)%
> 
> Does the Perl port not support version selection this way, or am I still not 
> remembering the right way to do this?
> 
> For example, is the user expected to create their own perl (or perl5) group?
> 
> Shouldn't installing the port at least plug some defaults in for those 
> entries?
> 
> I'm eminently aware that Perl and Python behave differently wrt module 
> support, but shouldn't MacPorts at least try to provide a consistent 
> interface across them?
> 
> I just did this for now:
> 
> [69] (gr@wedge:~)% sudo ln -sf /opt/local/bin/perl5.34 /opt/local/bin/perl
> Password:
> [70] (gr@wedge:~)% which perl
> /opt/local/bin/perl
> [71] (gr@wedge:~)% perl --version
> 
> This is perl 5, version 34, subversion 0 (v5.34.0) built for 
> darwin-thread-multi-2level
> 
> Copyright 1987-2021, Larry Wall
> 
> Perl may be copied only under the terms of either the Artistic License or the
> GNU General Public License, which may be found in the Perl 5 source kit.
> 
> Complete documentation for Perl, including FAQ lists, should be found on
> this system using "man perl" or "perldoc perl".  If you have access to the
> Internet, point your browser at http://www.perl.org/, the Perl Home Page.
> 
> [72] (gr@wedge:~)%
> 
> But I expect that'll bite me in the ass when I upgrade the perl5 port…?
> 
> On 2022-01-20 21:57 EST, Gabriel Rosenkoetter wrote:
>> I just did a `sudo port install perl5.34`, anticipating that doing so would 
>> "activate" it (and the build output indicated that step was taken), 
>> presumably bumping the /opt/local/bin/perl sym link to the new version and… 
>> apparently that was the wrong thing to assume, since that sym link no longer 
>> exists on this system?
>> [31] (gr@wedge:~)% which perl
>> /usr/bin/perl
>> [32] (gr@wedge:~)% echo $PATH
>> /Users/gr/bin:/opt/local/bin:/usr/sbin:/sbin:/usr/bin:/bin:/usr/local/bin:/opt/local/sbin:/usr/libexec:/System/Library/Frameworks/CoreServices.framework/Frameworks/LaunchServices.framework/Support:/usr/local/MacGPG2/bin
>>  [33] (gr@wedge:~)% port installed |egrep '^ *perl5'
>>   perl5.26 @5.26.3_4
>>   perl5.26 @5.26.3_6 (active)
>>   perl5.28 @5.28.3_1
>>   perl5.28 @5.28.3_4 (active)
>>   perl5.34 @5.34.0_2 (active)
>> [34] (gr@wedge:~)% ls /opt/local/bin/perl*
>> /opt/local/bin/perl5.26/opt/local/bin/perldoc-5.26
>> /opt/local/bin/perl5.26.3/opt/local/bin/perldoc-5.28
>> /opt/local/bin/perl5.28/opt/local/bin/perldoc-5.34
>> /opt/local/bin/perl5.28.3/opt/local/bin/perlivp-5.26
>> /opt/local/bin/perl5.34/opt/local/bin/perlivp-5.28

is macports getting rusty?

2021-11-28 Thread Kastus Shchuka
Dear macports users,

Recently, more and more ports began to depend on rust and cargo.

Maybe rust is a wonderful language that will solve all problems of the world. I 
just wonder, if it is so good, why it takes forever and a day (literally)  to 
compile? I've never seen anything taking that long to build. 

I've been using graphviz port for over 10 years, I guess. I had to delete it 
today.

graphviz depends on gd2. gd2 depends on libheif. libheif depends on rav1e. Now 
rav1e started depending on cargo-c, nasm, clang-13, cargo.
An attempt to upgrade rav1e launched a build of cargo-c which I had to kill as 
I did not have luxary to wait for tens of hours for it to finish.

I either have to keep outdated ports or stop using them and delete. 
Unfortunately, the usable surface of macports started shrinking for me (or 
should I call it "rusting"?). 

Another example is py-cryptography, which now requires rust to build. Until 
binary package was made available, it took me over a day to upgrade 
py-cryptography. 

I also now have a broken ImageMagic because its dependency chain pulls in rust. 
And the list goes on and on.

I doubt people who rushed rust into macports are going to reconsider their 
decisions. I am just sharing my experience with this "rusting"

Thank you for reading.

-Kastus

Re: port cannot fetch because of expired cert, but cert is OK according to Safari, curl (question related to Mojave / Catalina)

2021-11-06 Thread Kastus Shchuka



> On Nov 6, 2021, at 7:53 PM, André-John Mas  wrote:
> 
> Does it make a difference if you test via sudo or your own user login?
> 

Well, it won't work as regular user. Regular user does not have write 
permissions to /opt/local tree.

On the other hand, it's plain dumb why it works for me. As you can see below, 
org.macports.fetch does not use HTTPS, it downloads over HTTP. Certificates are 
just irrelevant for that.

I am not sure what part of macports.conf controls protocol for fetch, I have 
not modified that file since 2017. (I guess I should have done it). I looked at 
the diff between my macports.conf and macports.conf.default from May 2021, and 
I don't see anything with regards to http/https. I must be missing something 
there.

Thanks,

Kastus

> André-John
> 
> Sent from my phone. Envoyé depuis mon téléphone. 
> 
>> On 06 Nov 2021, at 22:08, Kastus Shchuka  wrote:
>> 
>> Something does not add up here.
>> 
>> High Sierra is older than Mojave, right? I can fetch sources of nsd on High 
>> Sierra without any problems:
>> 
>> $ sudo port -d fetch nsd
>> DEBUG: Copying /Users/pike/Library/Preferences/com.apple.dt.Xcode.plist to 
>> /opt/local/var/macports/home/Library/Preferences
>> DEBUG: Changing to port directory: 
>> /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/nsd
>> DEBUG: OS darwin/17.7.0 (macOS 10.13.6) arch i386
>> DEBUG: adding the default universal variant
>> DEBUG: Reading variant descriptions from 
>> /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/variant_descriptions.conf
>> DEBUG: Running callback portconfigure::add_automatic_compiler_dependencies
>> DEBUG: Finished running callback 
>> portconfigure::add_automatic_compiler_dependencies
>> DEBUG: Running callback portbuild::add_automatic_buildsystem_dependencies
>> DEBUG: Finished running callback 
>> portbuild::add_automatic_buildsystem_dependencies
>> DEBUG: Running callback portstartupitem::add_notes
>> DEBUG: Finished running callback portstartupitem::add_notes
>> DEBUG: Attempting ln -sf 
>> /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nsd/nsd/work
>>  
>> /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/nsd/work
>> DEBUG: dropping privileges: euid changed to 504, egid changed to 20.
>> DEBUG: Starting logging for nsd @4.2.1_2
>> DEBUG: macOS 10.13.6 (darwin/17.7.0) arch i386
>> DEBUG: MacPorts 2.7.1
>> DEBUG: Xcode 9.4.1
>> DEBUG: SDK 10.13
>> DEBUG: MACOSX_DEPLOYMENT_TARGET: 10.13
>> DEBUG: Executing org.macports.main (nsd)
>> DEBUG: dropping privileges: euid changed to 504, egid changed to 20.
>> DEBUG: fetch phase started at Sat Nov  6 19:00:42 PDT 2021
>> --->  Fetching distfiles for nsd
>> DEBUG: elevating privileges for fetch: euid changed to 0, egid changed to 0.
>> DEBUG: dropping privileges: euid changed to 504, egid changed to 20.
>> DEBUG: Executing org.macports.fetch (nsd)
>> --->  nsd-4.2.1.tar.gz does not exist in 
>> /opt/local/var/macports/distfiles/nsd
>> --->  Attempting to fetch nsd-4.2.1.tar.gz from 
>> http://distfiles.macports.org/nsd
>> % Total% Received % Xferd  Average Speed   TimeTime Time  Current
>>Dload  Upload   Total   SpentLeft  Speed
>> 100 1118k  100 1118k0 0  3557k  0 --:--:-- --:--:-- --:--:-- 
>> 3563k
>> $ ls -l /opt/local/var/macports/distfiles/nsd
>> total 2240
>> -rw-r--r--  1 macports  wheel  1145713 Nov  6 19:00 nsd-4.2.1.tar.gz
>> 
>> I have MacPorts installed from a package, I did not build it, so it is 
>> pretty much standard. Neither I did anything to the system certificate chain.
>> 
>>> On Nov 6, 2021, at 5:43 AM, Ryan Schmidt  wrote:
>>> 
>>> 
>>> 
>>>> On Nov 6, 2021, at 05:39, Gerben Wierda wrote:
>>>> 
>>>> I was looking at updating nsd (for which I am maintaining and it is high 
>>>> time)
>>>> 
>>>> But fetching failed on macOS Mojave (where I have my MacPorts setup).
>>>> 
>>>> :debug:fetch Executing org.macports.fetch (nsd)
>>>> :info:fetch --->  nsd-4.3.8.tar.gz does not exist in 
>>>> /opt/local/var/macports/distfiles/nsd
>>>> :notice:fetch --->  Attempting to fetch nsd-4.3.8.tar.gz from 
>>>> https://www.nlnetlabs.nl/downloads/nsd/
>>>> :debug:fetch Fetching distfile failed: SSL certificate problem: 
>>>> certificate has 

Re: port cannot fetch because of expired cert, but cert is OK according to Safari, curl (question related to Mojave / Catalina)

2021-11-06 Thread Kastus Shchuka
Something does not add up here.

High Sierra is older than Mojave, right? I can fetch sources of nsd on High 
Sierra without any problems:

$ sudo port -d fetch nsd
DEBUG: Copying /Users/pike/Library/Preferences/com.apple.dt.Xcode.plist to 
/opt/local/var/macports/home/Library/Preferences
DEBUG: Changing to port directory: 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/nsd
DEBUG: OS darwin/17.7.0 (macOS 10.13.6) arch i386
DEBUG: adding the default universal variant
DEBUG: Reading variant descriptions from 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/_resources/port1.0/variant_descriptions.conf
DEBUG: Running callback portconfigure::add_automatic_compiler_dependencies
DEBUG: Finished running callback 
portconfigure::add_automatic_compiler_dependencies
DEBUG: Running callback portbuild::add_automatic_buildsystem_dependencies
DEBUG: Finished running callback 
portbuild::add_automatic_buildsystem_dependencies
DEBUG: Running callback portstartupitem::add_notes
DEBUG: Finished running callback portstartupitem::add_notes
DEBUG: Attempting ln -sf 
/opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_net_nsd/nsd/work
 
/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/nsd/work
DEBUG: dropping privileges: euid changed to 504, egid changed to 20.
DEBUG: Starting logging for nsd @4.2.1_2
DEBUG: macOS 10.13.6 (darwin/17.7.0) arch i386
DEBUG: MacPorts 2.7.1
DEBUG: Xcode 9.4.1
DEBUG: SDK 10.13
DEBUG: MACOSX_DEPLOYMENT_TARGET: 10.13
DEBUG: Executing org.macports.main (nsd)
DEBUG: dropping privileges: euid changed to 504, egid changed to 20.
DEBUG: fetch phase started at Sat Nov  6 19:00:42 PDT 2021
--->  Fetching distfiles for nsd
DEBUG: elevating privileges for fetch: euid changed to 0, egid changed to 0.
DEBUG: dropping privileges: euid changed to 504, egid changed to 20.
DEBUG: Executing org.macports.fetch (nsd)
--->  nsd-4.2.1.tar.gz does not exist in /opt/local/var/macports/distfiles/nsd
--->  Attempting to fetch nsd-4.2.1.tar.gz from 
http://distfiles.macports.org/nsd
  % Total% Received % Xferd  Average Speed   TimeTime Time  Current
 Dload  Upload   Total   SpentLeft  Speed
100 1118k  100 1118k0 0  3557k  0 --:--:-- --:--:-- --:--:-- 3563k
$ ls -l /opt/local/var/macports/distfiles/nsd
total 2240
-rw-r--r--  1 macports  wheel  1145713 Nov  6 19:00 nsd-4.2.1.tar.gz

I have MacPorts installed from a package, I did not build it, so it is pretty 
much standard. Neither I did anything to the system certificate chain.

> On Nov 6, 2021, at 5:43 AM, Ryan Schmidt  wrote:
> 
> 
> 
> On Nov 6, 2021, at 05:39, Gerben Wierda wrote:
> 
>> I was looking at updating nsd (for which I am maintaining and it is high 
>> time)
>> 
>> But fetching failed on macOS Mojave (where I have my MacPorts setup).
>> 
>> :debug:fetch Executing org.macports.fetch (nsd)
>> :info:fetch --->  nsd-4.3.8.tar.gz does not exist in 
>> /opt/local/var/macports/distfiles/nsd
>> :notice:fetch --->  Attempting to fetch nsd-4.3.8.tar.gz from 
>> https://www.nlnetlabs.nl/downloads/nsd/
>> :debug:fetch Fetching distfile failed: SSL certificate problem: certificate 
>> has expired
>> 
>> Now, my main MacPorts dev/use machine is macOS Mojave so I suspect that is 
>> the Mojave-doesn’t-get-root-cert-updates problem. So, I tried to do a port 
>> fetch on Catalina, and there it works and the distribution is downloaded.
>> 
>> It is strange, though, because Safari on both Catalina (other machine) and 
>> Mojave say the cert is fine. Still, it is most likely that this is a problem 
>> that comes from still using Mojave.
>> 
>> Updating that machine will not happen until late December, so if I am to 
>> maintain anything MacPorts, I need a fix to get this working again.
>> 
>> I have tried using curl on the Mojave machine, and that one works.
>> 
>> So, Safari works, curl works, but port does not work.
>> 
>> I tried copying /etc/ssl/cert.pem over to the Mojave machine, but that 
>> doesn’t work either.
> 
> This is the "Let's Encrypt's old root certificate expired" problem described 
> here:
> 
> https://trac.macports.org/wiki/ProblemHotlist#letsencrypt
> 
> When you said "curl works but port does not work" that's not quite right. 
> /opt/local/bin/curl and /opt/local/lib/libcurl.dylib work. /usr/bin/curl and 
> /usr/lib/libcurl.dylib (the latter of which MacPorts uses by default) do not 
> work for Let's Encrypt-protected sites anymore.
> 
> I, on High Sierra, have the same issue, and I have no solution for you. This 
> issue affects High Sierra and Mojave. I recommend upgrading to Catalina or 
> later; I plan to eventually.
> 
> Well, you could rebuild MacPorts from source, instructing it to use a newer 
> copy of libcurl with a newer copy of openssl or libressl that has a newer 
> certificate bundle. For example, install a 

Re: Why don't p5-* ports mark their dependencies?

2021-06-12 Thread Kastus Shchuka



> On Jun 12, 2021, at 9:54 AM, Rainer Müller  wrote:
> 
> On 12/06/2021 18.32, Bill Cole wrote:
>> On 2021-06-12 at 12:11:47 UTC-0400 (Sat, 12 Jun 2021 09:11:47 -0700)
>> Kastus Shchuka 
>> is rumored to have said:
>> 
>>> I wish it could be so easy to remove perl5.28. Apparently, I have to
>>> keep it because of git:
>> 
>> port uninstall git
>> port install git -perl5_28 +perl5_30
> 
> sudo port upgrade --enforce-variants git -perl5_28 +perl5_30
> 

Thank you, that worked and allowed me to uninstall all p5.28 modules.

What puzzles me still, why port info shows that git depends on perl 5.28 
modules:

$ port info git  
git @2.32.0 (devel)
Variants: [+]credential_osxkeychain, [+]diff_highlight, [+]doc, 
gitweb, [+]pcre, perl5_26, [+]perl5_28,
  perl5_30, python, svn, universal

Description:  Git is a fast, scalable, distributed open source version 
control system focusing on speed and
  efficiency.
Homepage: https://git-scm.com/

Extract Dependencies: xz
Library Dependencies: perl5.28, curl, zlib, openssl, expat, libiconv, pcre2
Runtime Dependencies: p5.28-authen-sasl, p5.28-error, p5.28-net-smtp-ssl, 
p5.28-term-readkey, p5.28-cgi, rsync
Platforms:darwin
License:  GPL-2 and LGPL-2.1+
Maintainers:  Email: ciserl...@macports.org, GitHub: ci42
  Policy: openmaintainer
$ port installed and git
The following ports are currently installed:
  git @2.31.1_2+credential_osxkeychain+diff_highlight+doc+pcre+perl5_30
  git @2.32.0_0+credential_osxkeychain+diff_highlight+doc+pcre+perl5_30 (active)


git works, as far as I can test. 

Thanks,

Kastus




Re: Why don't p5-* ports mark their dependencies?

2021-06-12 Thread Kastus Shchuka
I wish it could be so easy to remove perl5.28. Apparently, I have to keep it 
because of git:

$ port info git
git @2.31.1_2 (devel)
Variants: [+]credential_osxkeychain, [+]diff_highlight, [+]doc, 
gitweb, [+]pcre, perl5_26, [+]perl5_28,
  perl5_30, python, svn, universal

Description:  Git is a fast, scalable, distributed open source version 
control system focusing on speed and
  efficiency.
Homepage: https://git-scm.com/

Extract Dependencies: xz
Library Dependencies: perl5.28, curl, zlib, openssl, expat, libiconv, pcre2
Runtime Dependencies: p5.28-authen-sasl, p5.28-error, p5.28-net-smtp-ssl, 
p5.28-term-readkey, p5.28-cgi, rsync
Platforms:darwin
License:  GPL-2 and LGPL-2.1+
Maintainers:  Email: ciserl...@macports.org, GitHub: ci42
  Policy: openmaintainer

Are Library and Runtime dependencies of git on perl5.28 intentional or an 
oversight?

Thanks,

Kastus

> On Jun 12, 2021, at 8:34 AM, Bill Cole 
>  wrote:
> 
> On 2021-06-09 at 15:51:09 UTC-0400 (Wed, 9 Jun 2021 15:51:09 -0400)
> Daniel J. Luke 
> is rumored to have said:
> 
>> On Jun 6, 2021, at 1:41 PM, Bill Cole 
>>  wrote:
>>> I *think* I've even worked out the right way to use that construct to make 
>>> Perl upgrades simpler, so I use the p5-* ports:
>> 
>> I gave up on trying to use this in any useful way a while ago - if you've 
>> got some way that it works, please share.
> 
> According to my shell history, this is what I did to clear out all the old 
> perl5.2[68] and
> 
> port deactivate perl5
> port install perl5 +perl5_30
> port deactivate perl5.26
> port deactivate perl5.28
> port installed|grep '^  p5\.2.*-' |awk '{print $1}'|while read x; do y=`echo 
> $x|sed 's/\.2.-/-/'`; port -v -f deactivate $x ; port -v install $y; done
> 
> Adjust to suit whatever versions you're trying to remove/replace.
> 
> -- 
> Bill Cole
> b...@scconsult.com or billc...@apache.org
> (AKA @grumpybozo and many *@billmail.scconsult.com addresses)
> Not Currently Available For Hire



Re: state of libressl in macports

2021-05-10 Thread Kastus Shchuka
Thanks Ryan!

I have filed https://trac.macports.org/ticket/62858 for rust.

> On May 10, 2021, at 4:30 PM, Ryan Schmidt  wrote:
> 
> You've summed up the situation nicely.
> 
> 
> On May 9, 2021, at 21:18, Kastus Shchuka wrote:
> 
>> Macports has ports of both openssl and libressl but they are mutually 
>> exclusive as they install overlapping files. Binary precompiled packages are 
>> built with openssl, so folks using libressl have to build  ports depending 
>> on libssl from source. Not convinient, but still manageable.
> 
> Correct, our current situation with openssl and libressl is not optimal, not 
> really what I would like to have. See https://trac.macports.org/ticket/54744. 
> Nobody has volunteered to fix the situation. Anyone is welcome to do so. It 
> would involve coming up with a proposal, discussing it on the macports-dev 
> mailing list and reaching consensus about what should be done, and then doing 
> it.
> 
> 
>> Openssl keeps adding new features which are not immediately available in 
>> libressl. That affects programs using libssl. Quite often ports require 
>> libressl-specific patches just to be able to be built with libressl. Some 
>> ports declare explicit dependency on openssl, and if I have libressl 
>> installed, I am stuck in this situation, as openssl cannot be installed 
>> alongside with libressl.
>> 
>> The most recent example: 
>> 
>> port sync && port outdated showed py38-cryptography and py39-cryptography as 
>> outdated 
>> 
>> py38-cryptography  2.9.2_0 < 3.4.7_1
>> py39-cryptography  2.9.2_0 < 3.4.7_1 
>> 
>> Binary packages are built with openssl, so rev-upgrade attempts to rebuild 
>> them. It worked with version 2.9.2, but 3.4.7 pulls in rust and cargo. 
>> Pre-built rust has to be rev-upgraded because of libssl, and fails to build 
>> as it requires openssl, and I have libressl installed, and it conflicts with 
>> openssl. This is where I hit the wall.
>> 
>> I am not using py-cryptography directly, I need py38/39-cryptography as a 
>> dependency of ansible. It looks like if I want to continue using ansible on 
>> this system and have it managed by macports, I have to give up on libressl 
>> and install openssl. Or install ansible outside of macports. I guess there 
>> are more ports in such situation.
> 
> Often, when someone adds a port to MacPorts that requires openssl or an 
> openssl-compatible library like libressl, they write the dependency as 
> "port:openssl". This prevents libressl from being used. Currently there are a 
> small number of ports in this situation:
> 
> $ port echo depends:'port:openssl($|\s)'
> calendar-contacts-server
> libaes_siv
> netdata
> netdata-dashboard
> ntpsec
> ophcrack
> rizin
> squid4
> sslscan
> rust
> msodbcsql17
> 
> Often, this occurs simply because the contributor was not aware of the issue, 
> and switching the dependency to "path:lib/libssl.dylib:openssl" is all that's 
> needed to allow libressl to be used if desired. Rarely, there are specific 
> reasons why libressl is not compatible with a project; in that case, the 
> Portfile should contain a comment line near the "port:openssl" dependency 
> that explains why.
> 
> In the case of rust, it declares both a library dependency on 
> path:lib/libssl.dylib:openssl and a build dependency on port:openssl, which 
> seems like nonsense to me:
> 
> $ port -v deps rust
> Full Name: rust @1.52.1_0
> Build Dependencies:   bin:git:git, path:bin/cmake:cmake, port:cctools, 
> port:python39, port:openssl, port:pkgconfig, port:ninja, port:gmake, 
> port:ccache
> Library Dependencies: port:libffi, path:lib/libssl.dylib:openssl
> 
> It seems like removing the port:openssl build dependency would be the correct 
> thing to do, but I haven't tried to figure out why it's the way it is.
> 
> I recommend filing bug reports for any of these ports that do not already 
> indicate in their comments a specific reason for incompatibility with 
> libressl.
> 
> 
>> Is macports as a project going to drop support for libressl? (Several linux 
>> distros, e.g. gentoo and void, did it recently). 
>> It would be nice to have libressl in macports, but if the project does not 
>> have resources to support it, would it be better just to state that 
>> explicitly? It would prevent unnecessary expectations.
> 
> I don't think anyone's expressed any interest in dropping libressl support 
> before. I wasn't aware that any Linux distros had dropped support for it, but 
> I don't know anything else about what Linux distros are doing either. Do you 
> know why they dropped libressl?



state of libressl in macports

2021-05-09 Thread Kastus Shchuka
Macports has ports of both openssl and libressl but they are mutually exclusive 
as they install overlapping files. Binary precompiled packages are built with 
openssl, so folks using libressl have to build  ports depending on libssl from 
source. Not convinient, but still manageable.

Openssl keeps adding new features which are not immediately available in 
libressl. That affects programs using libssl. Quite often ports require 
libressl-specific patches just to be able to be built with libressl. Some ports 
declare explicit dependency on openssl, and if I have libressl installed, I am 
stuck in this situation, as openssl cannot be installed alongside with libressl.

The most recent example: 

port sync && port outdated showed py38-cryptography and py39-cryptography as 
outdated 

 py38-cryptography  2.9.2_0 < 3.4.7_1
 py39-cryptography  2.9.2_0 < 3.4.7_1 

Binary packages are built with openssl, so rev-upgrade attempts to rebuild 
them. It worked with version 2.9.2, but 3.4.7 pulls in rust and cargo. 
Pre-built rust has to be rev-upgraded because of libssl, and fails to build as 
it requires openssl, and I have libressl installed, and it conflicts with 
openssl. This is where I hit the wall.

I am not using py-cryptography directly, I need py38/39-cryptography as a 
dependency of ansible. It looks like if I want to continue using ansible on 
this system and have it managed by macports, I have to give up on libressl and 
install openssl. Or install ansible outside of macports. I guess there are more 
ports in such situation.

Is macports as a project going to drop support for libressl? (Several linux 
distros, e.g. gentoo and void, did it recently). 
It would be nice to have libressl in macports, but if the project does not have 
resources to support it, would it be better just to state that explicitly? It 
would prevent unnecessary expectations.

Thanks,

Kastus

ghostscript 9.52_0+x11 fails to build

2020-10-11 Thread Kastus Shchuka
A ticket was already open in trac (#61306) when I encountered this problem. As 
ghostscript port has no maintainer, and the ticket is unassigned, I am not sure 
who it should be assigned to in order to get proper attention.

Problem seems weird as the port was bumped to 9.52 quite some time ago, back in 
July, and I do have this upgraded version successfully installed on a few other 
systems, although I don’t recall if it used binary package there or built it.

Thanks,

Kastus

Re: Scheduled downtime for rsync.macports.org on October 2

2020-10-05 Thread Kastus Shchuka



> On Oct 5, 2020, at 2:49 PM, Ryan Schmidt  wrote:
> 
> 
> I experienced the problems as well. There was apparently nothing wrong with 
> the server but there were Internet routing problems which have since been 
> resolved.
> 

Thanks Ryan! It works for me now, too.

Re: Scheduled downtime for rsync.macports.org on October 2

2020-10-04 Thread Kastus Shchuka
Not sure if it is related to the mentioned maintenance, but I am getting 
timeout from https://packages.macports.org when trying to upgrade libnetpbm 
today, Oct. 4:

--->  Fetching archive for libnetpbm
--->  Attempting to fetch libnetpbm-10.92.00_0.darwin_17.x86_64.tbz2 from 
https://packages.macports.org/libnetpbm
--->  Attempting to fetch libnetpbm-10.92.00_0.darwin_17.x86_64.tbz2.rmd160 
from https://packages.macports.org/libnetpbm
Error: Failed to archivefetch libnetpbm: Failed to fetch signature for archive: 
The requested URL returned error: 504 Gateway Time-out

I wanted to ask on the list before filing trac ticket.

Thanks,

Kastus

> On Oct 1, 2020, at 6:14 PM, Ryan Schmidt  wrote:
> 
> Our partners at the Friedrich-Alexander University who run rsync.macports.org 
> plan to do maintenance on the server on October 2, 2020. The server is 
> expected to be offline for about 60 minutes sometime between 11:00 and 14:00 
> UTC.
> 
> Running `sudo port selfupdate` or `sudo port sync` during the maintenance 
> window will fail if your MacPorts is configured to use rsync.macports.org 
> (which is the default) or nue.de.rsync.macports.org. Try again later.
> 
> Installing or upgrading ports during the maintenance window should work. The 
> FAU server also backs our CDN at distfiles.macports.org and 
> packages.macports.org but MacPorts should either be able to get the files 
> cached by our CDN or will failover to another one of our mirrors. In the 
> unlikely event that you encounter a problem with distfiles.macports.org or 
> packages.macports.org during the maintenance window you can add either or 
> both hostnames to the host_blacklist setting in 
> /opt/local/etc/macports/macports.conf. Remember to undo those changes after 
> the maintenance window is over so that you can continue to benefit from our 
> CDN.
> 



Re: rsync upgrade to 3.2.1_1 and libressl

2020-06-28 Thread Kastus Shchuka
My original error was this:

$ port outdated
The following installed ports are outdated:
rsync  3.1.3_0 < 3.2.1_1 
yubico-piv-tool1.7.0_1 < 2.0.0_0 
$ sudo port upgrade outdated and not yubico-piv-tool
--->  Computing dependencies for openssl
Error: Can't install openssl because conflicting ports are active: libressl
Error: Problem while installing openssl
Error: Follow https://guide.macports.org/#project.tickets to report a bug.


Just for kicks, I replaced line 31 in rsync port file

  port:openssl

with

  port:libressl

and was able to build rsync 3.2.1_1 successfully after that.

$ otool -L /opt/local/bin/rsync
/opt/local/bin/rsync:
/opt/local/lib/libpopt.0.dylib (compatibility version 1.0.0, current 
version 1.0.0)
/opt/local/lib/libiconv.2.dylib (compatibility version 9.0.0, current 
version 9.1.0)
/opt/local/lib/liblz4.1.dylib (compatibility version 1.0.0, current 
version 1.9.2)
/opt/local/lib/libzstd.1.dylib (compatibility version 1.0.0, current 
version 1.4.5)
/opt/local/lib/libxxhash.0.dylib (compatibility version 0.0.0, current 
version 0.7.4)
/opt/local/lib/libcrypto.44.dylib (compatibility version 45.0.0, 
current version 45.1.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current 
version 1252.50.4)


$ port provides /opt/local/lib/libcrypto.44.dylib
/opt/local/lib/libcrypto.44.dylib is provided by: libressl

$ /opt/local/bin/rsync --version
rsync  version 3.2.1  protocol version 31
Copyright (C) 1996-2020 by Andrew Tridgell, Wayne Davison, and others.
Web site: https://rsync.samba.org/
Capabilities:
64-bit files, 64-bit inums, 64-bit timestamps, 64-bit long ints,
socketpairs, hardlinks, symlinks, IPv6, no atimes, batchfiles, inplace,
append, ACLs, xattrs, optional protect-args, iconv, symtimes,
no prealloc, file-flags, crtimes
Checksum list:
xxh64 (xxhash) md5 md4 none
Compress list:
zstd lz4 zlibx zlib none

rsync comes with ABSOLUTELY NO WARRANTY.  This is free software, and you
are welcome to redistribute it under certain conditions.  See the GNU
General Public Licence for details.

So rsync 3.2.1 can be built with libressl. 

I wonder what is the proper way to make rsync port automatically use libressl 
if it is installed already.

Thanks,

Kastus 


> On Jun 28, 2020, at 2:54 PM, Kastus Shchuka  wrote:
> 
> In version 3.2.0 (June 19 2020) rsync introduced new binary rsync-ssl. Port 
> file of rsync now has a new dependency, openssl. Macports does not allow to 
> have both libressl and openssl ports installed at the same time. Does it mean 
> that I cannot upgrade rsync beyond version 3.1.3 if I am using libressl?
> 
> Thanks,
> 
> Kastus



rsync upgrade to 3.2.1_1 and libressl

2020-06-28 Thread Kastus Shchuka
In version 3.2.0 (June 19 2020) rsync introduced new binary rsync-ssl. Port 
file of rsync now has a new dependency, openssl. Macports does not allow to 
have both libressl and openssl ports installed at the same time. Does it mean 
that I cannot upgrade rsync beyond version 3.1.3 if I am using libressl?

Thanks,

Kastus

Re: gnutls dependencies

2019-10-01 Thread Kastus Shchuka



> On Oct 1, 2019, at 3:42 PM, Mojca Miklavec  
> wrote:
> 
> On Tue, 1 Oct 2019 at 06:42, Kastus Shchuka wrote:
>> 
>> Hi,
>> 
>> gnutls was recently upgraded to 3.6.10_0. When I try to upgrade gnutls, it 
>> pulls in a tall list of dependencies:
>> 
>> --->  Computing dependencies for gnutls
>> The following dependencies will be installed:
>> clang-8.0
>> ...
>> 
>> Version 3.6.9_0 did not need them and worked just fine.
> 
> Which macOS version are you using?

10.13.6

> What does the "port rdeps gnutls"
> say about the chain that leads to clang-8.0?

$ port rdeps gnutls
The following ports are dependencies of gnutls @3.6.10_0+doc:
  xz
libiconv
  gperf
gettext
  ncurses
  gtk-doc
pkgconfig
glib2
  autoconf
  automake
  libtool
xattr
  unzip
  libxml2
icu
zlib
  libffi
  pcre
bzip2
libedit
libxslt
perl5.26
  db48
  gdbm
readline
docbook-xml
  xmlcatmgr
  docbook-xml-4.1.2
docbook-xml-4.2
  docbook-xml-4.3
  docbook-xml-4.4
  docbook-xml-4.5
  docbook-xml-5.0
docbook-xsl-nons
itstool
  gawk
  py27-libxml2
python27
  expat
  openssl
  sqlite3
  python_select
  python2_select
python37
  python3_select
py37-anytree
  py37-setuptools
  py37-six
py37-lxml
py37-pygments
  pygments_select
py37-mock
  clang-8.0
cmake
  libcxx
  curl
libidn2
  libunistring
perl5
  perl5.28
texinfo
  help2man
p5.28-locale-gettext
libpsl
curl-ca-bundle
  libarchive
lzo2
lz4
zstd
  libuv
libomp
llvm-8.0
  xar
  llvm_select
clang_select
ld64
  ld64-xcode
  gmp
  libtasn1
  p11-kit
  nettle

> I don't see clang on the list for 10.13, but I'm pretty sure it's
> needed on older systems after upgrade to MacPorts 2.6.0.
> 
> It's a lot more likely that the dependency was pulled in after you
> updated MacPorts base rather than the port itself.

Marius understood my problem much better than I described it and moved gtk_doc 
build dependency into doc variant 
(https://github.com/macports/macports-ports/commit/144c3cec1e062304e769b896d242b3816ec2b5f9).
 I am very gratefull for the quick fix.

I think previously I was just getting binary build of gnutls, that’s why I did 
not need build dependencies. After upgrade to MacPorts 2.6.0, there was no 
binary package available, and building port from source pulled in build 
dependencies.

All is good now.

> 
> Mojca

Thanks,

Kastus



Re: gnutls dependencies

2019-10-01 Thread Kastus Shchuka
Thank you very much Marius for the change! That’s exactly what I needed. 

-Kastus

> On Oct 1, 2019, at 4:22 PM, Marius Schamschula  wrote:
> 
> Kastus, Joshua,
> 
> I never noticed this issue, as I always build the docs.
> 
> Fixed in 
> https://github.com/macports/macports-ports/commit/144c3cec1e062304e769b896d242b3816ec2b5f9
> 
> Marius
> --
> Marius Schamschula
> 
> 
> 
> 
>> On Oct 1, 2019, at 5:11 PM, Joshua Root  wrote:
>> 
>> Kastus Shchuka wrote:
>>> gnutls was recently upgraded to 3.6.10_0. When I try to upgrade gnutls, it 
>>> pulls in a tall list of dependencies:
>>> 
>>> --->  Computing dependencies for gnutls
>>> The following dependencies will be installed: 
>>> clang-8.0
>>> clang_select
>>> docbook-xml
>>> docbook-xml-4.1.2
>>> docbook-xml-4.2
>>> docbook-xml-4.3
>>> docbook-xml-4.4
>>> docbook-xml-5.0
>>> gawk
>>> gtk-doc
>>> itstool
>>> ld64
>>> ld64-xcode
>>> libomp
>>> llvm-8.0
>>> llvm_select
>>> py27-libxml2
>>> py37-anytree
>>> py37-lxml
>>> py37-pygments
>>> py37-six
>>> pygments_select
>>> xar
>>> Continue? [Y/n]: n
>>> 
>>> Version 3.6.9_0 did not need them and worked just fine. I suspect that all 
>>> of them are only needed for doc variant of gnutls. I tried to install 
>>> gnutls without doc variant, but it still wants to install the same tall 
>>> list. Is there a way to skip them? Or dependencies are always calculated 
>>> regardless of selected variants? On another system I installed gnutls -doc, 
>>> and then removed docbook-xml and the rest of the list, and port command did 
>>> not complained. 
>> 
>> Some of those dependencies will be needed regardless of variants
>> (clang-8.0 and the other toolchain ones.) Dependencies are calculated
>> taking variants into account, but in this case the doc variant of gnutls
>> does not add or remove any dependencies. It does seem strange that
>> gtk-doc would be needed regardless of whether docs are built. You could
>> ask the maintainer about it.
>> 
>> It's normal to be able to uninstall build-time dependencies after
>> installing, because as their name implies they are only needed when
>> actually building the port. They aren't needed when installing from a
>> binary archive either.
>> 
>> - Josh
> 
> 
> 
> Marius
> --
> Marius Schamschula
> 
> 
> 
> 



gnutls dependencies

2019-09-30 Thread Kastus Shchuka
Hi,

gnutls was recently upgraded to 3.6.10_0. When I try to upgrade gnutls, it 
pulls in a tall list of dependencies:

--->  Computing dependencies for gnutls
The following dependencies will be installed: 
 clang-8.0
 clang_select
 docbook-xml
 docbook-xml-4.1.2
 docbook-xml-4.2
 docbook-xml-4.3
 docbook-xml-4.4
 docbook-xml-5.0
 gawk
 gtk-doc
 itstool
 ld64
 ld64-xcode
 libomp
 llvm-8.0
 llvm_select
 py27-libxml2
 py37-anytree
 py37-lxml
 py37-pygments
 py37-six
 pygments_select
 xar
Continue? [Y/n]: n

Version 3.6.9_0 did not need them and worked just fine. I suspect that all of 
them are only needed for doc variant of gnutls. I tried to install gnutls 
without doc variant, but it still wants to install the same tall list. Is there 
a way to skip them? Or dependencies are always calculated regardless of 
selected variants? On another system I installed gnutls -doc, and then removed 
docbook-xml and the rest of the list, and port command did not complained. 

Thanks,

Kastus

boost upgrade from 1.70.0_0 to 1.71.0_0 does not trigger ledger rebuilt

2019-09-01 Thread Kastus Shchuka
I ran “port upgrade outdated” today and it installed a new version of boost:

--->  Computing dependencies for boost
--->  Fetching archive for boost
--->  Attempting to fetch 
boost-1.71.0_0+no_single+no_static+python27.darwin_17.x86_64.tbz2 from 
https://packages.macports.org/boost
--->  Attempting to fetch 
boost-1.71.0_0+no_single+no_static+python27.darwin_17.x86_64.tbz2.rmd160 from 
https://packages.macports.org/boost
--->  Installing boost @1.71.0_0+no_single+no_static+python27
--->  Cleaning boost
--->  Computing dependencies for boost
--->  Deactivating boost @1.70.0_0+no_single+no_static+python27
--->  Cleaning boost
--->  Activating boost @1.71.0_0+no_single+no_static+python27
--->  Cleaning boost

After that ledger fails to start:

$ /opt/local/bin/ledger -f ledger/journal 
dyld: lazy symbol binding failed: Symbol not found: 
__ZN5boost16re_detail_10700027cpp_regex_traits_char_layerIcE4initEv
  Referenced from: /opt/local/lib/libledger.3.dylib
  Expected in: /opt/local/lib/libboost_regex-mt.dylib

dyld: Symbol not found: 
__ZN5boost16re_detail_10700027cpp_regex_traits_char_layerIcE4initEv
  Referenced from: /opt/local/lib/libledger.3.dylib
  Expected in: /opt/local/lib/libboost_regex-mt.dylib

Abort

Ledger is not reported as outdated. Running port rev-upgrade does not find any 
problems with it either:

$ sudo port upgrade ledger
--->  Scanning binaries for linking errors
--->  No broken files found.
--->  No broken ports found.
$ sudo port rev-upgrade
--->  Scanning binaries for linking errors
--->  No broken files found. 
--->  No broken ports found.


If I uninstall and install again ledger, I am getting the same error.

I had to build ledger from source:

$ sudo port install -s ledger
--->  Computing dependencies for ledger
--->  Fetching distfiles for ledger
--->  Attempting to fetch ledger-3.1.3.tar.gz from 
https://distfiles.macports.org/ledger
--->  Verifying checksums for ledger
 
--->  Extracting ledger
--->  Configuring ledger
--->  Building ledger
--->  Staging ledger into destroot
--->  Installing ledger @3.1.3_0
--->  Activating ledger @3.1.3_0
--->  Cleaning ledger
--->  Scanning binaries for linking errors
--->  No broken files found. 
--->  No broken ports found.

Now ledger runs properly.

Is it a bug in ledger port file that ledger does not detect upgrade of boost? 
Should I better report it in trac? Or is there a different way of going through 
boost upgrade?

Thanks,

Kastus




Re: ledger fails to build after boost upgrade to 1.70.0

2019-08-14 Thread Kastus Shchuka
Thank you, Chris! Much appreciated.

> On Aug 14, 2019, at 3:16 AM, Christopher Jones  
> wrote:
> 
> 
> Actually, fix was trivial.
> 
> https://github.com/macports/macports-ports/commit/087140b0f4e960a304d3d56708aa77989b441b16
> 
>> On 14 Aug 2019, at 11:02 am, Christopher Jones  
>> wrote:
>> 
>> Hi,
>> 
>> Looks like ledger does not yet support the updated boost.
>> 
>> please look for an open ticket at
>> 
>> https://trac.macports.org/wiki/Tickets
>> 
>> and if there is none for this issue, open one.
>> 
>> cheers Chris
>> 
>>> On 14 Aug 2019, at 6:40 am, Kastus Shchuka  wrote:
>>> 
>>> Hi,
>>> 
>>> After doing “port upgrade outdated” boost was upgraded to 1.70.0_0, and it 
>>> triggered rebuild of ledger @3.1.1_4.
>>> 
>>> The error in 
>>> /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_finance_ledger/ledger/main.log
>>>  is this:
>>> 
>>> :info:configure -- Found PythonInterp: /opt/local/bin/python2.7 (found 
>>> version "2.7.16") 
>>> :info:configure -- Found PythonLibs: /opt/local/lib/libpython2.7.dylib 
>>> (found version "2.7.10") 
>>> :info:configure CMake Error at 
>>> /opt/local/share/cmake-3.15/Modules/FindPackageHandleStandardArgs.cmake:137 
>>> (message):
>>> :info:configure   Could NOT find Boost (missing: python) (found suitable 
>>> version "1.70.0",
>>> :info:configure   minimum required is "1.49.0”)
>>> 
>>> This is the version of boost that I have after upgrade:
>>> 
>>>  boost @1.70.0_0+no_single+no_static+python27 (active)
>>> 
>>> Am I missing something obvious here?
>>> 
>>> Thanks,
>>> 
>>> Kastus
>>> 
>>> 
>> 
> 



ledger fails to build after boost upgrade to 1.70.0

2019-08-13 Thread Kastus Shchuka
Hi,

After doing “port upgrade outdated” boost was upgraded to 1.70.0_0, and it 
triggered rebuild of ledger @3.1.1_4.

The error in 
/opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_finance_ledger/ledger/main.log
 is this:

:info:configure -- Found PythonInterp: /opt/local/bin/python2.7 (found version 
"2.7.16") 
:info:configure -- Found PythonLibs: /opt/local/lib/libpython2.7.dylib (found 
version "2.7.10") 
:info:configure CMake Error at 
/opt/local/share/cmake-3.15/Modules/FindPackageHandleStandardArgs.cmake:137 
(message):
:info:configure   Could NOT find Boost (missing: python) (found suitable 
version "1.70.0",
:info:configure   minimum required is "1.49.0”)

This is the version of boost that I have after upgrade:

  boost @1.70.0_0+no_single+no_static+python27 (active)

Am I missing something obvious here?

Thanks,

Kastus




Re: Is there and "rdist" for Mac?

2018-03-18 Thread Kastus Shchuka
It does not take much to run “port info gitless”…

$ port info gitless
gitless @0.8.6 (devel, python)
Variants: universal

Description:  Gitless is a version control system built on top of Git, 
with simpler commands and syntax. Gitless
  can be used on any Git repository and be mixed with 
regular git commands.
Homepage: http://gitless.com/

Library Dependencies: python27, py27-pygit2, py27-clint, py27-sh
Runtime Dependencies: git
Platforms:darwin
License:  GPL-2
Maintainers:  Email: rai...@macports.org, GitHub: raimue
  Policy: openmaintainer


> On Mar 18, 2018, at 3:28 PM, ↪︎nudge  wrote:
> 
> On Sun, 18 Mar 2018, at 23:08, db wrote:
>> On 17 Mar 2018, at 20:48, ↪︎nudge  wrote:
>> Another option worth considering
>> http://gitless.com/
>> 
>> Good to know. Unfortunately, although gitless is already in MP, the 
>> developer doesn't mention it, but alas, HB 
>> (https://github.com/sdg-mit/gitless#installing-via-homebrew-macos-only).
> 
> Unless I'm mistaken that text was added by a third party via a github pull 
> request in November 2016 and anyone wishing to add MP can do likewise.



Re: ssh-agent no longer being started

2017-11-05 Thread Kastus Shchuka

> On Nov 5, 2017, at 2:44 PM, René J.V. Bertin  wrote:
> 
> Hi,
> 
> I've grown accustomed to be able to call `ssh-add -A` periodically to import 
> all certificates stored in my keychain into a running ssh-agent instance that 
> I didn't have to start. After a forced reboot last Friday (the system had 
> been up for 94 days) I find that ssh-agent no longer starts.
> 
> Would anyone have an idea how this is normally started and how I could best 
> fix this? I played with 
> /System/Library/LaunchAgents/org.openbsd.ssh-agent.plist but that doesn't 
> actually start ssh-agent.
> 

The way launchd works, it does not start ssh-agent process at the user login 
time, it creates a socket and when some other process connects to that socket, 
only then ssh-agent is brought to life. It is similar to inetd/xinetd. 

> I do have a SSH_AUTH_SOCK var in the launchctl env, but it points to a socket 
> that's used only by launchd itself and by gpg-agent . I see that gpg-agent is 
> started from 
> ${prefix}/etc/LaunchAgents/org.macports.gpg-agent/org.macports.gpg-agent.plist,
>  which also sets SSH_AUTH_SOCK . When I remove that Sockets key from that 
> launchd plist, ssh-agent functionality is restored.
> 


The Listeners key in ssh-agent plist creates a randomly named socket and 
exports in SSH_AUTH_SOCK to the user’s shell. It should not be shared with 
gpg-agent to the best of my knowledge.

So if SSH_AUTH_SOCK is pointing to an existing file (ls -l $SSH_AUTH_SOCK shows 
a socket file) can you run "ssh-add -l” ? 

I also found this link helpful when I was debugging ssh-agent:

https://blog.affien.com/archives/2015/09/07/use-macports-ssh-agent/

HTH,

Kastus






Re: unbound fails to rebuild

2017-04-21 Thread Kastus Shchuka

> On Apr 20, 2017, at 11:13 PM, Kastus Shchuka <macpo...@tprfct.net> wrote:
> 
> 
>> On Apr 20, 2017, at 11:01 PM, Kastus Shchuka <macpo...@tprfct.net> wrote:
>> 
>> I have a strange problem rebuilding unbound after upgrade of libressl to 
>> 2.5.3.
>> 
>> Rebuild succeeded on one Yosemite system and fails on another with this 
>> error:
>> 
>> libtool: link: /usr/bin/clang -dynamiclib  -o .libs/libunbound.2.dylib  
>> .libs/context.o .libs/libunbound.o .libs/libworker.o 
>> .libs/ub_event_pluggable.o .libs/dns.o .libs/infra.o .libs/rrset.o 
>> .libs/dname.o .libs/msgencode.o .libs/as112.o .libs/msgparse.o 
>> .libs/msgreply.o .libs/packed_rrset.o .libs/iterator.o .libs/iter_delegpt.o 
>> .libs/iter_donotq.o .libs/iter_fwd.o .libs/iter_hints.o .libs/iter_priv.o 
>> .libs/iter_resptype.o .libs/iter_scrub.o .libs/iter_utils.o 
>> .libs/localzone.o .libs/mesh.o .libs/modstack.o .libs/view.o 
>> .libs/outbound_list.o .libs/alloc.o .libs/config_file.o .libs/configlexer.o 
>> .libs/configparser.o .libs/fptr_wlist.o .libs/locks.o .libs/log.o 
>> .libs/mini_event.o .libs/module.o .libs/net_help.o .libs/random.o 
>> .libs/rbtree.o .libs/regional.o .libs/rtt.o .libs/dnstree.o .libs/lookup3.o 
>> .libs/lruhash.o .libs/slabhash.o .libs/timehist.o .libs/tube.o 
>> .libs/winsock_event.o .libs/autotrust.o .libs/val_anchor.o .libs/validator.o 
>> .libs/val_kcache.o .libs/val_kentry.o .libs/val_neg.o .libs/val_nsec3.o 
>> .libs/val_nsec.o .libs/val_secalgo.o .libs/val_sigcrypt.o .libs/val_utils.o 
>> .libs/dns64.o .libs/cachedb.o .libs/netevent.o .libs/listen_dnsport.o 
>> .libs/outside_network.o .libs/keyraw.o .libs/sbuffer.o .libs/wire2str.o 
>> .libs/parse.o .libs/parseutil.o .libs/rrdef.o .libs/str2wire.o 
>> .libs/strptime.o   -L/opt/local/lib -lssl -lcrypto  -Os -arch x86_64 
>> -Wl,-headerpad_max_install_names -arch x86_64   -install_name  
>> /opt/local/lib/libunbound.2.dylib -compatibility_version 7 -current_version 
>> 7.4 -Wl,-single_module 
>> -Wl,-exported_symbols_list,.libs/libunbound-symbols.expsym
>> Undefined symbols for architecture x86_64:
>> "_ub_c_in", referenced from:
>> _config_read in config_file.o
>> "_ub_c_lex", referenced from:
>> _ub_c_parse in configparser.o
>> "_yywrap", referenced from:
>> _yylex in configlexer.o
>> ld: symbol(s) not found for architecture x86_64
>> clang: error: linker command failed with exit code 1 (use -v to see 
>> invocation)
>> make: *** [libunbound.la] Error 1
>> 
>> _yywrap exists in /opt/local/lib/libfl.dylib:
>> 
>> $ nm -gU /opt/local/lib/libfl.dylib
>> 0f35 T _main
>> 0f49 T _yywrap
>> 
>> Any ideas what I should check? 
>> 
>> Thanks,
>> 
>> Kastus
> 
> Doing 
> 
> sudo port uninstall unbound
> sudo port clean —all unbound
> sudo port install unbound
> 
> fixed the problem. 
> 
> Thanks,
> 
> Kastus
> 

Just one thing I forgot to mention, the other system did not have flex 
installed, so I uninstalled flex and then uninstall-clean-install was 
successful for unbound.




Re: unbound fails to rebuild

2017-04-21 Thread Kastus Shchuka

> On Apr 20, 2017, at 11:01 PM, Kastus Shchuka <macpo...@tprfct.net> wrote:
> 
> I have a strange problem rebuilding unbound after upgrade of libressl to 
> 2.5.3.
> 
> Rebuild succeeded on one Yosemite system and fails on another with this error:
> 
> libtool: link: /usr/bin/clang -dynamiclib  -o .libs/libunbound.2.dylib  
> .libs/context.o .libs/libunbound.o .libs/libworker.o 
> .libs/ub_event_pluggable.o .libs/dns.o .libs/infra.o .libs/rrset.o 
> .libs/dname.o .libs/msgencode.o .libs/as112.o .libs/msgparse.o 
> .libs/msgreply.o .libs/packed_rrset.o .libs/iterator.o .libs/iter_delegpt.o 
> .libs/iter_donotq.o .libs/iter_fwd.o .libs/iter_hints.o .libs/iter_priv.o 
> .libs/iter_resptype.o .libs/iter_scrub.o .libs/iter_utils.o .libs/localzone.o 
> .libs/mesh.o .libs/modstack.o .libs/view.o .libs/outbound_list.o 
> .libs/alloc.o .libs/config_file.o .libs/configlexer.o .libs/configparser.o 
> .libs/fptr_wlist.o .libs/locks.o .libs/log.o .libs/mini_event.o 
> .libs/module.o .libs/net_help.o .libs/random.o .libs/rbtree.o 
> .libs/regional.o .libs/rtt.o .libs/dnstree.o .libs/lookup3.o .libs/lruhash.o 
> .libs/slabhash.o .libs/timehist.o .libs/tube.o .libs/winsock_event.o 
> .libs/autotrust.o .libs/val_anchor.o .libs/validator.o .libs/val_kcache.o 
> .libs/val_kentry.o .libs/val_neg.o .libs/val_nsec3.o .libs/val_nsec.o 
> .libs/val_secalgo.o .libs/val_sigcrypt.o .libs/val_utils.o .libs/dns64.o 
> .libs/cachedb.o .libs/netevent.o .libs/listen_dnsport.o 
> .libs/outside_network.o .libs/keyraw.o .libs/sbuffer.o .libs/wire2str.o 
> .libs/parse.o .libs/parseutil.o .libs/rrdef.o .libs/str2wire.o 
> .libs/strptime.o   -L/opt/local/lib -lssl -lcrypto  -Os -arch x86_64 
> -Wl,-headerpad_max_install_names -arch x86_64   -install_name  
> /opt/local/lib/libunbound.2.dylib -compatibility_version 7 -current_version 
> 7.4 -Wl,-single_module 
> -Wl,-exported_symbols_list,.libs/libunbound-symbols.expsym
> Undefined symbols for architecture x86_64:
>  "_ub_c_in", referenced from:
>  _config_read in config_file.o
>  "_ub_c_lex", referenced from:
>  _ub_c_parse in configparser.o
>  "_yywrap", referenced from:
>  _yylex in configlexer.o
> ld: symbol(s) not found for architecture x86_64
> clang: error: linker command failed with exit code 1 (use -v to see 
> invocation)
> make: *** [libunbound.la] Error 1
> 
> _yywrap exists in /opt/local/lib/libfl.dylib:
> 
> $ nm -gU /opt/local/lib/libfl.dylib
> 0f35 T _main
> 0f49 T _yywrap
> 
> Any ideas what I should check? 
> 
> Thanks,
> 
> Kastus

Doing 

sudo port uninstall unbound
sudo port clean —all unbound
sudo port install unbound

fixed the problem. 

Thanks,

Kastus



unbound fails to rebuild

2017-04-21 Thread Kastus Shchuka
I have a strange problem rebuilding unbound after upgrade of libressl to 2.5.3.

Rebuild succeeded on one Yosemite system and fails on another with this error:

libtool: link: /usr/bin/clang -dynamiclib  -o .libs/libunbound.2.dylib  
.libs/context.o .libs/libunbound.o .libs/libworker.o .libs/ub_event_pluggable.o 
.libs/dns.o .libs/infra.o .libs/rrset.o .libs/dname.o .libs/msgencode.o 
.libs/as112.o .libs/msgparse.o .libs/msgreply.o .libs/packed_rrset.o 
.libs/iterator.o .libs/iter_delegpt.o .libs/iter_donotq.o .libs/iter_fwd.o 
.libs/iter_hints.o .libs/iter_priv.o .libs/iter_resptype.o .libs/iter_scrub.o 
.libs/iter_utils.o .libs/localzone.o .libs/mesh.o .libs/modstack.o .libs/view.o 
.libs/outbound_list.o .libs/alloc.o .libs/config_file.o .libs/configlexer.o 
.libs/configparser.o .libs/fptr_wlist.o .libs/locks.o .libs/log.o 
.libs/mini_event.o .libs/module.o .libs/net_help.o .libs/random.o 
.libs/rbtree.o .libs/regional.o .libs/rtt.o .libs/dnstree.o .libs/lookup3.o 
.libs/lruhash.o .libs/slabhash.o .libs/timehist.o .libs/tube.o 
.libs/winsock_event.o .libs/autotrust.o .libs/val_anchor.o .libs/validator.o 
.libs/val_kcache.o .libs/val_kentry.o .libs/val_neg.o .libs/val_nsec3.o 
.libs/val_nsec.o .libs/val_secalgo.o .libs/val_sigcrypt.o .libs/val_utils.o 
.libs/dns64.o .libs/cachedb.o .libs/netevent.o .libs/listen_dnsport.o 
.libs/outside_network.o .libs/keyraw.o .libs/sbuffer.o .libs/wire2str.o 
.libs/parse.o .libs/parseutil.o .libs/rrdef.o .libs/str2wire.o .libs/strptime.o 
  -L/opt/local/lib -lssl -lcrypto  -Os -arch x86_64 
-Wl,-headerpad_max_install_names -arch x86_64   -install_name  
/opt/local/lib/libunbound.2.dylib -compatibility_version 7 -current_version 7.4 
-Wl,-single_module -Wl,-exported_symbols_list,.libs/libunbound-symbols.expsym
Undefined symbols for architecture x86_64:
  "_ub_c_in", referenced from:
  _config_read in config_file.o
  "_ub_c_lex", referenced from:
  _ub_c_parse in configparser.o
  "_yywrap", referenced from:
  _yylex in configlexer.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [libunbound.la] Error 1

_yywrap exists in /opt/local/lib/libfl.dylib:

$ nm -gU /opt/local/lib/libfl.dylib
0f35 T _main
0f49 T _yywrap

Any ideas what I should check? 

Thanks,

Kastus

py27-cryptography fails to build with libressl 2.5.3

2017-04-11 Thread Kastus Shchuka
Upgrade of libressl from 2.4.5 to 2.5.3 triggered rebuild of py27-cryptography
which failed with the following errors:

:info:build build/temp.macosx-10.10-x86_64-2.7/_openssl.c:3484:19: error: 
expected identifier or '('
:info:build static const long X509_V_ERR_HOSTNAME_MISMATCH = 0;
:info:build   ^
:info:build /opt/local/include/openssl/x509_vfy.h:357:41: note: expanded from 
macro 'X509_V_ERR_HOSTNAME_MISMATCH'
:info:build #define X509_V_ERR_HOSTNAME_MISMATCH62
:info:build ^
:info:build build/temp.macosx-10.10-x86_64-2.7/_openssl.c:3485:19: error: 
expected identifier or '('
:info:build static const long X509_V_ERR_EMAIL_MISMATCH = 0;
:info:build   ^
:info:build /opt/local/include/openssl/x509_vfy.h:358:38: note: expanded from 
macro 'X509_V_ERR_EMAIL_MISMATCH'
:info:build #define X509_V_ERR_EMAIL_MISMATCH   63
:info:build ^
:info:build build/temp.macosx-10.10-x86_64-2.7/_openssl.c:3486:19: error: 
expected identifier or '('
:info:build static const long X509_V_ERR_IP_ADDRESS_MISMATCH = 0;
:info:build   ^
:info:build /opt/local/include/openssl/x509_vfy.h:359:43: note: expanded from 
macro 'X509_V_ERR_IP_ADDRESS_MISMATCH'
:info:build #define X509_V_ERR_IP_ADDRESS_MISMATCH  64
:info:build ^
:info:build 3 errors generated.

It looks like libressl added definition of three macros to 
/opt/local/include/openssl/x509_vfy.h
and now they conflict with constants generated in _openssl.c.

I filed ticket #53964 in trac, I copied maintainer. Do I need to copy anybody 
else in the ticket?

Thanks,

Kastus


cannot download distfile for libressl

2017-02-09 Thread Kastus Shchuka
I am trying to upgrade libressl (2.4.5), and as binary package is not available 
yet, port command attempts to build from source but fails to retrieve distfile. 
I am seeing 404 error from all mirrors, and from openbsd.org site I am getting 
this error:

:notice:fetch --->  Attempting to fetch libressl-2.4.5.tar.gz from 
https://ftp.openbsd.org/pub/OpenBSD/LibreSSL
:debug:fetch Fetching distfile failed: SSL peer handshake failed, the server 
most likely requires a client certificate to connect

I can download the file manually with curl command, it recognizes let’s encrypt 
certificate just fine. I wonder what command does port uses for download? 

Thanks,

Kastus