Re: Development: Curl-Impersonate
Stuart Henderson <[email protected]> Wed, 29 Jul 2026 15:25:26 +0100
| Newsgroups | gmane.os.openbsd.ports |
|---|---|
| Message-ID | <[email protected]> |
--apvwVJuPDirWcmUl Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit On 2026/07/26 15:06, Anoduck, The Anonymous Duck wrote: > Announcing Curl-Impersonate to OpenBSD Ports Tree. > > This is my first contribution to ports, and something I have wanted to contribute to for a long time. So, be gentle guys. > > Currently hosted at: https://codeberg.org/anoduck/curl-impersonate-port > > Will try to submit pull request to Jasper's OpenBSD-WIP repo in the next week or two to begin staging for inclusion. That port is doing a lot of things which are at odds with how ports should work. Due to how this is built upstream (i.e. files from various upstreams which need patching), it's necessarily going to be a bit of a mess, but we can get closer at least, see attached tar. This project builds a patched curl with static-linked boringssl (with C++ code); curl-impersonate upstream have been stumbling around trying to figure out how to add the C++ standard library via 'cc -l<name>' with all sorts of mess to try and figure out which library to use - instead they should just use c++ to link. I haven't figured out how to get that done directly in the standard build but did come up with a pretty horrible workaround. If any cmake wizards want a challenge, try to get it to link the executable directly with c++ as part of the main build rather than the post-build monstrosity...you may end up having to patch a patch. > POI: Tried to generate the PKLST last night, but go-tools was unavailable. So, will add when the package comes available again. Not sure why you need go-tools to generate a plist? (Most of the BUILD_DEPENDS listed were bogus too, though I see they do come from upstream). > Would be super cool if I could port over the python library as well. That is likely to be a problem. boringssl is statically linked into libcurl-impersonate.so and trying to load this into the same address space as python will likely result in a conflict with the libressl ones used by python. > Cheers, > Anoduck > > # =========================== > Anoduck, The Anonymous Duck > > https://anoduck.github.io/wiki/ > https://github.com/anoduck > https://anoduck.com > https://codeberg.org/anoduck > --apvwVJuPDirWcmUl Content-Type: application/x-tar-gz Content-Disposition: attachment; filename=curl-impersonate.tgz Content-Transfer-Encoding: base64 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 --apvwVJuPDirWcmUl--