Bug 263821 - security/protonvpn-cli: Takes maintainership
Summary: security/protonvpn-cli: Takes maintainership
Status: Closed Overcome By Events
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Rene Ladan
URL:
Keywords: dogfood, easy, patch, patch-ready
Depends on:
Blocks:
 
Reported: 2022-05-06 16:54 UTC by Chris Hutchinson
Modified: 2022-06-27 11:56 UTC (History)
5 users (show)

See Also:


Attachments
git diff for security/protonvpn-cli (1.81 KB, patch)
2022-05-06 16:54 UTC, Chris Hutchinson
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Chris Hutchinson 2022-05-06 16:54:27 UTC
Created attachment 233774 [details]
git diff for security/protonvpn-cli

I use Proton VPN and noticed the protonvpn-cli
is unmaintained. So I'd like to maintain it.
This is part of a larger plan to create the
Proton VPN app, which is already available from
Proton VPN for just about every other OS.
So I'll start here. :-)

Changes
Makefile: MAINTAINER
pkd-descr: update && reflow

That's it.

Thanks!

--Chris
Comment 1 Koichiro Iwao freebsd_committer freebsd_triage 2022-05-10 04:34:18 UTC
Can you commit it your local git repo and submit patch generated by `git format-patch`?
Comment 2 Lorenzo Salvadore freebsd_committer freebsd_triage 2022-05-10 14:28:10 UTC
Thanks for you interest Chris.

I had not seen your PR and I have just deprecated the port following the discussion in
https://reviews.freebsd.org/D35087 , sorry about that.

You are more than welcome to un-deprecate, update and maintain the port of course, but I think it would be better if you did all those things simultaneously. The update won't be easy at all. Indeed,

- new upstream is https://github.com/ProtonVPN/linux-cli ;
- to port the above software you need to port
  https://github.com/ProtonVPN/protonvpn-nm-lib before;
- to port the above dependency you need to port
  https://github.com/ProtonMail/proton-python-client before, but on
  https://github.com/ProtonMail/proton-python-client/issues/36 you can read that this 
  last software will be superseded by another one (when?).

Are you sure you want to try maintaining this port?
Comment 3 Chris Hutchinson 2022-05-10 16:53:46 UTC
(In reply to Koichiro Iwao from comment #1)
I'm very confused by your comment.
My attached patch is a git(1) diff; eg;

# git clone -o freebsd --config remote.freebsd.fetch='+refs/notes/*:refs/notes/*' ssh://anongit@git.freebsd.org/ports.git ports

# cd ports/security/protonvpn-cli
# vim ./Makefile
# vim ./pkg-descr
# cd ../../
# git diff . >~/security_protonvpn-cli.diff

I just applied the attached patch to a fresh copy of
the FreeBSD ports repo and it worked as intended.

This process has worked famously for years. Am I missing
something else?

Chris
Comment 4 Chris Hutchinson 2022-05-10 17:03:54 UTC
(In reply to Lorenzo Salvadore from comment #2)
OK The reason I took this on, is I'm currently
using Proton VPN on my laptop with FreeBSD 13.1
installed, and it works famously. Granted, it's
not exactly the same implementation you describe
in this port. But it's almost the same procedure;
that is, it's by way of CLI.
This "transformation" should have been painless.
But it now looks as if it'll be less painless to
simply delete this port, and introduce the same
port but by a new name. So that it can actually
happen. All this resistance is really disappointing.

Chris

FWIW
I have a paid account. But my testing has been both
against Free && Paid services, and the results are
the same -- it works.
Comment 5 Lorenzo Salvadore freebsd_committer freebsd_triage 2022-05-10 21:17:07 UTC
(In reply to Chris Hutchinson from comment #4)

I am sorry if my comment looks as annoying resistance, I don't want to stop you: actually, it would be great to have a ProtonVPN client on FreeBSD, but I don't think it makes much sense to get it through an unsupported upstream software when there is the OpenVPN configuration files alternative, even if you transform it. Unless you want to fork upstream and actively support your fork, but in this case I think you should change the software name to avoid confusion.

There is another possible path to port a client for ProtonVPN on FreeBSD: the community developed cli client provided by https://github.com/Rafficer/linux-cli-community . If you want to follow this path, you will need to create a new port called py-protonvpn-cli as requested by FreeBSD's Python policy: https://wiki.freebsd.org/Python/PortsPolicy .
Comment 6 Daniel Engberg freebsd_committer freebsd_triage 2022-05-10 21:59:58 UTC
I think the point here is that adopting (and keeping) the current version "just because" isn't an option because it is unsupported and deprecated upstream. Specifically for security related software one would most likely consider that to be bad practice which is the reason it's being deprecated in the first place.
Comment 7 Chris Hutchinson 2022-05-11 01:58:08 UTC
(In reply to Lorenzo Salvadore from comment #5)
I understand that in it's "current" incarnation,
it isn't viable. But I've altered the entire process
and it doesn't rely on their v.1 CLI, but on the
service(s) and the way their exposed && delivered.
If you have a problem with the name; it could just
well be called "protonvpn-tui", "proton-vpn-tui",
"proton-vpn-cui" | "freebsd-proton-vpn-cli".
I'm simply trying to offer a proton VPN solution
for FreeBSD that 1) works && 2) gets continued
support. I an NOT dependent on the CLI they offer,
only on the services.

Thank you for your continued attention. :-)

Chris
Comment 8 Chris Hutchinson 2022-05-11 01:58:59 UTC
(In reply to Daniel Engberg from comment #6)
Agreed. Please see (just) above. :-)
Comment 9 Daniel Engberg freebsd_committer freebsd_triage 2022-05-11 06:20:21 UTC
Since we seem to be in agreement, once you have a patch ready addressing the issue(s) discussed please submit it along with maintainership request.
Comment 10 Lorenzo Salvadore freebsd_committer freebsd_triage 2022-05-11 09:09:53 UTC
(In reply to Chris Hutchinson from comment #7)

Yes, I think a different name is more appropriate unless you have some kind of official recognition from the ProtonVPN company. It might be a good idea to contact the company and ask it for advice: if your work is good it can choose to recognize it as the official or a recommended ProtonVPN client on FreeBSD, and in that case I think it would deserve the 'protonvpn-cli' name; otherwise, they could have some requirements on the name you want to choose (e.g. "Please don't use 'protonvpn' in your software name", "Please make it clear in your name that it is an unofficial client" etc.).
Comment 11 Koichiro Iwao freebsd_committer freebsd_triage 2022-05-11 09:28:43 UTC
(In reply to Chris Hutchinson from comment #3)

Sorry to confuse you. But I don't think it's years. Only 1 year has passed since we switched FreeBSD ports repo from Subversion to Git. The way you showed still works but it is a Subversion-like way. `git format-patch` is the preferred Git way. It is easier to apply for most FreeBSD committers than the `git diff` style patch.


See also Porter's handbook. This section describes how to submit a NEW PORT but the same applies to submitting diffs to existing ports.
https://docs.freebsd.org/en/books/porters-handbook/quick-porting/#porting-submitting
Comment 12 Chris Hutchinson 2022-05-11 13:41:35 UTC
(In reply to Koichiro Iwao from comment #11)
I guess this is what you're asking for?

git format-patch origin/main

First time anyone asked. Sorry for the bother.
I'll make it my standard. :-)
Comment 13 Chris Hutchinson 2022-05-11 13:49:11 UTC
(In reply to Lorenzo Salvadore from comment #10)
While I suppose a different name might be good.
It's not like it's going to be as simple as a
pull request against their current protonvpn-cli.
Gonna need to think about it for awhile or find
a channel for "contributions". I just hate being
the odd-man-out with FreeBSD. It just seems all
too often the case. :-/

Thanks for all your time on this, Lorenzo.

Chris
Comment 14 Koichiro Iwao freebsd_committer freebsd_triage 2022-05-11 14:12:15 UTC
(In reply to Chris Hutchinson from comment #12)

Yes, that is.
Some people already doing that: Bug 263547, Bug 263849
Comment 15 Fernando Apesteguía freebsd_committer freebsd_triage 2022-06-26 16:31:26 UTC
The port has already expired. It will be probably removed next time rene@ does a swipe on the entire ports tree.
Comment 16 Rene Ladan freebsd_committer freebsd_triage 2022-06-27 11:30:50 UTC
Removing this port for now.
Comment 17 Fernando Apesteguía freebsd_committer freebsd_triage 2022-06-27 11:56:41 UTC
^Triage: Assign to user that resolved the issue