Mailing List Archive

Discontinued Package: Copy to local overlay, just leave installed, or install manually?
Hi,

according to https://bugs.gentoo.org/718972 (and a posting
in the dev list), gsutil (and all needed libs) will be removed
from the tree because "it's broken" (which is not true - works
like a charm).

Since I do need gsutil urgently, I have already copied the needed
ebuilds from /usr/portage to a local overlay in order to "emerge
-c gsutil::gentoo" and then "emerge gsutil::local".

But then came to my mind: Is that necessary at all? As far as I
know, I can just leave discontinued packages installed and continue
to use them - regardless of whether they are still in portage tree
or not. True or false?

Or is it better to get rid of portage/ebuilds at all and do a
manual installation, as described at
https://cloud.google.com/storage/docs/gsutil_install?hl=en ?

Thanks,

-Matt
Re: Discontinued Package: Copy to local overlay, just leave installed, or install manually? [ In reply to ]
On 2023-02-19 10:24+0100 Matthias Hanft <mh@hanft.de> wrote:

> Hi,
>
> according to https://bugs.gentoo.org/718972 (and a posting
> in the dev list), gsutil (and all needed libs) will be removed
> from the tree because "it's broken" (which is not true - works
> like a charm).
>
> Since I do need gsutil urgently, I have already copied the needed
> ebuilds from /usr/portage to a local overlay in order to "emerge
> -c gsutil::gentoo" and then "emerge gsutil::local".
>
> But then came to my mind: Is that necessary at all? As far as I
> know, I can just leave discontinued packages installed and continue
> to use them - regardless of whether they are still in portage tree
> or not. True or false?

Yes, you can just continue to use them. The ebuild will be kept in
/var/db/pkg/ in case portage needs to reinstall them or so.
However, it might make sense to copy it to a local overlay to make it
easier to get an overview of self/un -maintained packages. And since
gsutil requires Python, you'll have to modify the ebuild at some point
anyway to add support for newer Python versions.

> Or is it better to get rid of portage/ebuilds at all and do a
> manual installation, as described at
> https://cloud.google.com/storage/docs/gsutil_install?hl=en ?

I'd say use the ebuild since it already exists. Makes breakage less
likely.

Kind regards, tastytea
Re: Discontinued Package: Copy to local overlay, just leave installed, or install manually? [ In reply to ]
On 19/02/2023 09:24, Matthias Hanft wrote:
> according to https://bugs.gentoo.org/718972 (and a posting
> in the dev list), gsutil (and all needed libs) will be removed
> from the tree because "it's broken" (which is not true - works
> like a charm).
>
The original bug report only has two comments. The first from 2 years ago to report that django and flask components aren't working with recent python versions. The recent 2nd comment and patch removes the django and flask components and adds support to gsutils for newer python versions.

OK I don't use gsutil so can't test what the removal of the two components would mean but I don't see where the bug says gsutils itself is going to be removed?
Re: Discontinued Package: Copy to local overlay, just leave installed, or install manually? [ In reply to ]
Mike Civil wrote:
>
> OK I don't use gsutil so can't test what the removal of the two components would mean but I don't see where the bug says gsutils itself is going to be removed?

Ehm... maybe a misunderstanding? The posting I mentioned was:

--- cut here ---

Subject: [gentoo-dev] Last rites: dev-python/oauth2client and revdeps (app-misc/gcalcli, app-misc/goobook, net-misc/gsutil)
# Micha? Górny <mgorny@gentoo.org> (2023-02-03)
# The package has been archived upstream. It is broken with all Python
# versions supported by Gentoo, and it is broken with django-2.
# The other listed packages are its reverse dependencies.
# Removal on 2023-03-05. Bug #718972.
app-misc/gcalcli
app-misc/goobook
dev-python/gcs-oauth2-boto-plugin
dev-python/google-apitools
dev-python/google-reauth-python
dev-python/oauth2client
net-misc/gsutil

--- cut here ---

I interpreted this as "all of them are going to be removed".

Anyway, "equery d oauth2client" lists gcs-oauth2-boto-plugin,
google-apitools, and google-reauth-python as well (which are
dependencies of gsutil). So even the removal of oauth2client
alone would break gsutil.

BTW, all of them have only python_targets_python3_9 and 3_10.
Currenty I have Python 3.10 and 3.11 installed, and "eselect
python list" says "3.11 3.10" (in that order). Why does gsutil
work anyway? Automatic fallback to 3.10?

I guess I must not ever deinstall Python 3.10 in order to keep
this running?

-Matt
Re: Discontinued Package: Copy to local overlay, just leave installed, or install manually? [ In reply to ]
On 19/02/2023 11:57, Matthias Hanft wrote:
> Ehm... maybe a misunderstanding? The posting I mentioned was:
>
> --- cut here ---
>
> Subject: [gentoo-dev] Last rites: dev-python/oauth2client and revdeps (app-misc/gcalcli, app-misc/goobook, net-misc/gsutil)
> # Micha? Górny <mgorny@gentoo.org> (2023-02-03)
> # The package has been archived upstream. It is broken with all Python
> # versions supported by Gentoo, and it is broken with django-2.
> # The other listed packages are its reverse dependencies.
> # Removal on 2023-03-05. Bug #718972.
> app-misc/gcalcli
> app-misc/goobook
> dev-python/gcs-oauth2-boto-plugin
> dev-python/google-apitools
> dev-python/google-reauth-python
> dev-python/oauth2client
> net-misc/gsutil
>
> --- cut here ---
>
> I interpreted this as "all of them are going to be removed".
>
> Anyway, "equery d oauth2client" lists gcs-oauth2-boto-plugin,
> google-apitools, and google-reauth-python as well (which are
> dependencies of gsutil). So even the removal of oauth2client
> alone would break gsutil.
>
> BTW, all of them have only python_targets_python3_9 and 3_10.
> Currenty I have Python 3.10 and 3.11 installed, and "eselect
> python list" says "3.11 3.10" (in that order). Why does gsutil
> work anyway? Automatic fallback to 3.10?
>
> I guess I must not ever deinstall Python 3.10 in order to keep
> this running?
>
> -Matt
>
Fair enough - so the issue is really with dev-python/oauth2client which
does look abandoned. That's the package you really need to keep a local
copy of but that really looks like it could break at any time.

However the README from that package states:-

"Note: oauth2client is now deprecated. No more features will be added to
the libraries and the core team is turning down support. We recommend
you use google-auth and oauthlib. For more details on the deprecation,
see oauth2client deprecation."

Portage has google-auth and friends.

Note that gsutil itself is still being maintained (at
https://github.com/GoogleCloudPlatform/gsutil) and as it's the
"official" Google package then is already likely to work with the latest
access methods.

Worst case uninstall the portage gsutil and look into installing gsutil
into /usr/local from the official GoogleCloud site above. I'd expect
Portage's gsutil to catch up at some point.

IMO installing local copies of gsutil with broken dependency packages
and then maintaining them looks like a potential world of pain !