Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 643286 - =x11-misc/polybar-3.1.0: A fast and easy-to-use status bar
Summary: =x11-misc/polybar-3.1.0: A fast and easy-to-use status bar
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal enhancement (vote)
Assignee: André Büsgen
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-03 17:13 UTC by André Büsgen
Modified: 2018-05-04 21:05 UTC (History)
4 users (show)

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


Attachments
polybar-3.1.0.ebuild (polybar-3.1.0.ebuild,1.09 KB, text/plain)
2018-01-03 17:13 UTC, André Büsgen
Details
polybar ebuild (polybar-3.1.0.ebuild,1.39 KB, text/plain)
2018-02-07 20:10 UTC, Kajzer
Details
polybar-3.1.0.ebuild (polybar-3.1.0.ebuild,1.41 KB, text/plain)
2018-02-08 21:13 UTC, Kajzer
Details
polybar-9999.ebuild (polybar-9999.ebuild,1.04 KB, text/plain)
2018-02-08 21:13 UTC, Kajzer
Details

Note You need to log in before you can comment on or make changes to this bug.
Description André Büsgen 2018-01-03 17:13:03 UTC
Created attachment 513104 [details]
polybar-3.1.0.ebuild

Hi!

I'd like to suggest adding the attached polybar-3.1.0.ebuild to the repository.
Polybar is an application for creating customized status-bars and is often used together with tiling wms like i3. In my opinion it's a very nice app for anyone who likes to build his own status-bar.The source code can be found under https://github.com/jaagr/polybar.

I wrote this ebuild (my first) for myself because I'm trying too learn more about gentoo and this seemed to be easy enough to get started. I hope that this ebuild is useful for other people, too.
I'd love to get feedback on what could be done better. Of course i will try to fix every issue as soon as possible.

I suggest adding the ebuild under x11-misc/polybar.

Thank you in advance for taking the time to review this ebuild. :)

andre
Comment 1 Patrice Clement gentoo-dev 2018-01-03 20:58:00 UTC
It looks like an interesting project. Are you willing to proxy-maintain it?
Comment 2 André Büsgen 2018-01-04 12:55:54 UTC
(In reply to Patrice Clement from comment #1)
> It looks like an interesting project. Are you willing to proxy-maintain it?

Hi Patrice,

I'm willing to proxy-maintain it but I'm still pretty inexperienced with gentoo.
It probably will take some until I have figured everything out.

However, I would love to give something back so you can count me in :)

andre
Comment 3 Patrice Clement gentoo-dev 2018-01-07 22:13:11 UTC
Hi André

Great! Let me walk you through a short packaging lesson then :)

Your ebuild looks good except a few things need adjusting, namely:
* the git-r3 eclass is to be used with 9999 ebuilds only. There are many examples as to how to properly inherit this class across the tree. For a first shot, let's keep it simple, so please drop this eclass altogether and all EGIT_* variables.
* please set SRC_URI to fetch the latest .tar.gz tarball (3.1.0 from what I can see)
* IUSE items must be defined on the same line i.e. IUSE="foo bar baz"
* since the python-single-r1 eclass is inherited, you must also define: REQUIRED_USE="${PYTHON_REQUIRED_USE}". See https://wiki.gentoo.org/wiki/Project:Python/python-single-r1#Simple_package.

Let me know if you need help and/or a review.

Thanks!
Comment 4 André Büsgen 2018-01-08 15:22:12 UTC
(In reply to Patrice Clement from comment #3)
> Hi André
> 
> Great! Let me walk you through a short packaging lesson then :)
> 
> Your ebuild looks good except a few things need adjusting, namely:
> * the git-r3 eclass is to be used with 9999 ebuilds only. There are many
> examples as to how to properly inherit this class across the tree. For a
> first shot, let's keep it simple, so please drop this eclass altogether and
> all EGIT_* variables.
> * please set SRC_URI to fetch the latest .tar.gz tarball (3.1.0 from what I
> can see)
> * IUSE items must be defined on the same line i.e. IUSE="foo bar baz"
> * since the python-single-r1 eclass is inherited, you must also define:
> REQUIRED_USE="${PYTHON_REQUIRED_USE}". See
> https://wiki.gentoo.org/wiki/Project:Python/python-single-r1#Simple_package.
> 
> Let me know if you need help and/or a review.
> 
> Thanks!

Hi Patrice,

first of all, thank you very much for your help!
I could indeed use some help to get SRC_URI to work.
The reason I used the git-r3 eclass is that I couldn't get polybar to compile because the repo includes submodules which aren't included in the .tar.gz tarball.

Is there a better way to get the needed code from the submodules?
Should I download the submodules in the src_prepare() function?

andre
Comment 5 Kajzer 2018-02-07 20:10:10 UTC
Created attachment 518504 [details]
polybar ebuild
Comment 6 Kajzer 2018-02-07 20:11:02 UTC
Polybar definitely deserves to be in the main tree.
I've been using it for a long time, I have some prior ebuild experience and the attached ebuild for the latest 3.1.0 version should be proper.
I can proxy-maintain it if Andre doesn't mind or want to do that anymore.
Comment 7 André Büsgen 2018-02-08 16:09:26 UTC
(In reply to Kajzer from comment #6)
> Polybar definitely deserves to be in the main tree.
> I've been using it for a long time, I have some prior ebuild experience and
> the attached ebuild for the latest 3.1.0 version should be proper.
> I can proxy-maintain it if Andre doesn't mind or want to do that anymore.

Hey there,
i didn't know it was this easy to get the ebuild working.
I was trying to build the submodules as libraries in seperate ebuilds. But i still haven't figured out how to get everything working.
However i will keep trying and get my hands on some smaller things first to build experience.

André
Comment 8 Kajzer 2018-02-08 17:26:47 UTC
(In reply to André Büsgen from comment #7)
> Hey there,
> i didn't know it was this easy to get the ebuild working.
> I was trying to build the submodules as libraries in seperate ebuilds. But i
> still haven't figured out how to get everything working.
> However i will keep trying and get my hands on some smaller things first to
> build experience.
> 
> André

Yeah, no need for installation, polybar just need those libs in order to compile.

Anyway, I've just noticed something that should be corrected in src_prepare, forgot to include variables (XPP_VERSION and I3IPCPP_VERSION) instead of fixed versions :

mv "${WORKDIR}"/xpp-$XPP_VERSION "${S}"/lib/xpp || die                                                                                                                                                                  
mv "${WORKDIR}"/i3ipcpp-$I3IPCPP_VERSION "${S}"/lib/i3ipcpp || die
Comment 9 Kajzer 2018-02-08 21:13:08 UTC
Created attachment 518696 [details]
polybar-3.1.0.ebuild
Comment 10 Kajzer 2018-02-08 21:13:52 UTC
Created attachment 518698 [details]
polybar-9999.ebuild
Comment 11 Dimitris Nakos (sokan) 2018-05-01 09:19:32 UTC
polybar-9999.ebuild and polybar-3.1.0.ebuild should change x11-proto/xcb-proto to x11-base/xorg-proto.
Comment 12 Kajzer 2018-05-01 11:04:12 UTC
Yeah, but for some reason polybar isn't interesting enough to be in the main repository, so it doesn't matter I guess.
Comment 13 Joonas Niilola gentoo-dev 2018-05-02 07:08:07 UTC
(In reply to Kajzer from comment #12)
> Yeah, but for some reason polybar isn't interesting enough to be in the main
> repository, 

To me it looks like no one has took the initiative to proxy-maintain it. How to proxy-maintain packages? You can find all the needed steps here: https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers

It's a lot of info to take in at first, but definitely worth it if you are willing to maintain this package in the main tree :)

Also, ask away if you are unsure how to do it after reading instructions.
Comment 14 Kajzer 2018-05-02 11:07:03 UTC
I thought it needed someone to "approve" this here before proceeding further :)

Seems like the next step is making metadata.xml and making a PR on github, am I missing something else ?
Comment 15 Kajzer 2018-05-02 13:45:36 UTC
Actually, I just made a pull request.
Comment 16 Johannes Huber (RETIRED) gentoo-dev 2018-05-03 07:51:45 UTC
As expressed in the PR I am interested to maintain the package.
Comment 17 Larry the Git Cow gentoo-dev 2018-05-04 21:05:13 UTC
The bug has been closed via the following commit(s):

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

commit 6d597a32e22e77dc620678702aad9c14e44d2978
Author:     Kajzer <kajzersoze72@gmail.com>
AuthorDate: 2018-05-04 10:59:23 +0000
Commit:     Patrice Clement <monsieurp@gentoo.org>
CommitDate: 2018-05-04 21:05:07 +0000

    x11-misc/polybar: new package.
    
    Polybar is a fast and easy-to-use tool for creating status bars.
    
    Closes: https://github.com/gentoo/gentoo/pull/8244
    Closes: https://bugs.gentoo.org/643286

 x11-misc/polybar/Manifest             |  3 ++
 x11-misc/polybar/metadata.xml         | 21 ++++++++++++
 x11-misc/polybar/polybar-3.1.0.ebuild | 63 +++++++++++++++++++++++++++++++++++
 x11-misc/polybar/polybar-9999.ebuild  | 48 ++++++++++++++++++++++++++
 4 files changed, 135 insertions(+)