Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 659812 - net-im/slack-bin is not a gnome app
Summary: net-im/slack-bin is not a gnome app
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Vladimir Pavljuchenkov (SpiderX)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-07-02 01:43 UTC by Gino McCarty
Modified: 2018-07-08 19:23 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Gino McCarty 2018-07-02 01:43:57 UTC
slack-bin doesn't actually require libsecret to run, this dependency is really just for gnome users

Also this dependency is similar to the gconf one, where electron wants this because old versions of chrome wanted this, even through I don't believe the backend ever actually gets used.

See any other electron app, net-im/Signal, visual-studio-code and net-im/discord for examples 

Output for non Gnome DE users:
===============
 # emerge -av slack-bin

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild  N     ] app-crypt/p11-kit-0.23.9::gentoo  USE="asn1 libffi trust -debug" ABI_X86="(64) -32 (-x32)" 1,066 KiB
[ebuild  N     ] app-crypt/gcr-3.20.0:0/1::gentoo  USE="gtk introspection -debug {-test} -vala" 1,294 KiB
[ebuild  N     ] app-crypt/libsecret-0.18.6::gentoo  USE="crypt introspection -debug {-test} -vala" 477 KiB
[ebuild  N     ] gnome-base/gnome-keyring-3.20.1::gentoo  USE="caps filecaps pam ssh-agent (-selinux) {-test}" 1,192 KiB
[ebuild   R    ] app-crypt/pinentry-1.0.0-r2::gentoo  USE="caps gnome-keyring* ncurses qt5 -emacs -gtk -static" 0 KiB
[ebuild  N    ~] net-im/slack-bin-3.2.1::gentoo  USE="-ayatana -pax_kernel" ABI_X86="(64)" 56,518 KiB

Total: 6 packages (5 new, 1 reinstall), Size of downloads: 60,544 KiB

The following keyword changes are necessary to proceed:
 (see "package.accept_keywords" in the portage(5) man page for more details)
# required by slack-bin (argument)
=net-im/slack-bin-3.2.1 ~amd64
===============

Here is a patch for the ebuild
===============
diff -u /usr/portage/net-im/slack-bin/slack-bin-3.2.1.ebuild /usr/local/portage/net-im/slack-bin/slack-bin-3.2.1.ebuild 
--- /usr/portage/net-im/slack-bin/slack-bin-3.2.1.ebuild	2018-06-21 10:49:36.372466678 -0700
+++ /usr/local/portage/net-im/slack-bin/slack-bin-3.2.1.ebuild	2018-07-01 18:18:53.675988157 -0700
@@ -15,10 +15,10 @@
 LICENSE="all-rights-reserved"
 SLOT="0"
 KEYWORDS="~amd64 -*"
-IUSE="ayatana pax_kernel"
+IUSE="ayatana pax_kernel gnome-keyring"
 RESTRICT="bindist mirror"
 
-RDEPEND="app-crypt/libsecret:0[${MULTILIB_USEDEP}]
+RDEPEND="gnome-keyring? ( app-crypt/libsecret:0[${MULTILIB_USEDEP}] )
 	dev-libs/atk:0[${MULTILIB_USEDEP}]
 	dev-libs/expat:0[${MULTILIB_USEDEP}]
 	dev-libs/glib:2[${MULTILIB_USEDEP}]
===============
Comment 1 Vladimir Pavljuchenkov (SpiderX) 2018-07-08 13:38:03 UTC
If I understood you right, your main point is that slack doesn't require a libsecret and gconf for its runtime.


ebuild-x64-slack / # ldd /opt/slack/resources/app.asar.unpacked/node_modules/keytar/build/Release/keytar.node | grep libsecret
ldd: warning: you do not have execution permission for `/opt/slack/resources/app.asar.unpacked/node_modules/keytar/build/Release/keytar.node'
        libsecret-1.so.0 => /usr/lib64/libsecret-1.so.0 (0x00007f429cc4a000)

I see that some nodejs module needs it, however, I don't see that it is used.
I am going to agree with you since your suggestion provides a possibility to decrease dependencies for users.


As for gconf, I see that mentioned by you apps use it:
grep gconf /usr/portage/net-im/signal-desktop-bin/signal-desktop-bin-1.13.0.ebuild 
        gnome-base/gconf:2

grep gnome-base/gconf /usr/portage/net-im/signal-desktop-bin/signal-desktop-bin-1.13.0.ebuild 
        gnome-base/gconf:2
Comment 2 Gino McCarty 2018-07-08 19:17:32 UTC
Hey so my point was that the dependencies here are the same as those other apps
 
So, to be clear, gconf is needed, but not "used" and libsecret is not used nor is it needed, however core chromium libraries do link against it.
Comment 3 Gino McCarty 2018-07-08 19:19:25 UTC
thanks!!
Comment 4 Larry the Git Cow gentoo-dev 2018-07-08 19:23:51 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fa29fbef03cd8868cb25eb49648cb88028474752

commit fa29fbef03cd8868cb25eb49648cb88028474752
Author:     Vladimir Pavljuchenkov (SpiderX) <spiderx@spiderx.dp.ua>
AuthorDate: 2018-07-08 13:33:49 +0000
Commit:     Andreas Sturmlechner <asturm@gentoo.org>
CommitDate: 2018-07-08 19:23:39 +0000

    net-im/slack-bin: add gnome-keyring USE flag (wrt #659812)
    
    Closes: https://bugs.gentoo.org/659812
    
    Package-Manager: Portage-2.3.40, Repoman-2.3.9

 net-im/slack-bin/slack-bin-3.1.1.ebuild | 8 ++++----
 net-im/slack-bin/slack-bin-3.2.1.ebuild | 8 ++++----
 2 files changed, 8 insertions(+), 8 deletions(-)