Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 646522 - msikeyboardlight Control backlight of MSI laptop keyboards without node.js (New Package)
Summary: msikeyboardlight Control backlight of MSI laptop keyboards without node.js (N...
Status: CONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal enhancement
Assignee: Default Assignee for New Packages
URL: https://github.com/makkarpov/msi-keyb...
Whiteboard:
Keywords: EBUILD, PullRequest
Depends on:
Blocks:
 
Reported: 2018-02-03 22:00 UTC by Fulgurance
Modified: 2018-11-25 12:52 UTC (History)
2 users (show)

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


Attachments
msi-keyboard ebuild file (msi-keyboard-9999.ebuild,432 bytes, text/plain)
2018-02-03 22:00 UTC, Fulgurance
Details
msi-keyboard-1.0.ebuild (msi-keyboard-1.0.ebuild,496 bytes, text/plain)
2018-02-06 15:43 UTC, Fulgurance
Details
metadata.xml (metadata.xml,323 bytes, text/xml)
2018-02-06 15:43 UTC, Fulgurance
Details
Ebuild (msi-keyboard-1.0.ebuild,469 bytes, text/plain)
2018-05-27 17:29 UTC, Fulgurance
Details
Metadata (metadata.xml,244 bytes, text/xml)
2018-05-27 17:30 UTC, Fulgurance
Details
Metadata (metadata.xml,455 bytes, text/xml)
2018-05-27 19:31 UTC, Fulgurance
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Fulgurance 2018-02-03 22:00:29 UTC
Created attachment 517696 [details]
msi-keyboard ebuild file

Hello, 
I have made my first ebuild for Gentoo. It's makkarpov script (see homepage of ebuild file attachment) to control MSI keyboard backlight. This ebuild require hidapi for compilation AND execution. I have tested my ebuild on my PC with an local overlay, he work fine.

I'm really enjoy to add my first contribution for Gentoo.
Ask me if it's good :)

(Sorry for my bad english, i'm french)

Fulgurance
Comment 1 Fulgurance 2018-02-04 11:36:39 UTC
I'm agree to proxy-maintain this package.
Comment 2 Jonas Stein gentoo-dev 2018-02-04 17:55:05 UTC
Thank you for your contribution. I had a short look on the ebuild. 
Here a few ideas:

* Please test the ebuild with repoman full -x https://wiki.gentoo.org/wiki/Repoman
* We always try to use releases instead of life ebuilds (-9999). 
upstream does not tag releases unfortunately. You could use specific commits and call the ebuild say msikeyboardled-0_p20180204.ebuild 

you can adopt my snippet from texstudio
MY_COMMIT=e7c5fe74067b367d11af2177fe3e46d103a9fa3b
SRC_URI="https://github.com/texstudio-org/${PN}/tarball/${MY_COMMIT} -> ${P}.tar.gz"


while typing this, upstream tagged v1.0
https://github.com/makkarpov/msi-keyboard/releases/tag/v1.0

This is very nice.

I do not own this keyboard and can not test it. Do you want to be proxied maintainer of this package?
Comment 3 Jonas Stein gentoo-dev 2018-02-04 18:08:01 UTC
(In reply to Fulgurance from comment #1)
> I'm agree to proxy-maintain this package.

ups you already answered ;-)
That is great.

Could you also prepare a metadata.xml with metagen?
You can write add a long description there. 
https://devmanual.gentoo.org/ebuild-writing/misc-files/metadata/
Comment 4 Fulgurance 2018-02-05 14:03:51 UTC
Sorry, i'm late :)

I have read Gentoo Wiki about repoman, but i'm french and i don't understand very well what is repoman ... Can you explain me please ?

Just can you guid me please, it's my first package. I'm programmer but i'm not familiar with gpg key and git or net application ... Sorry :) But there is a beginning to everything!

Sorry, i didn't see there is stable release !

I'm obliged to rename this software ? It does not bother me, but i have always know this software with this name :)

And what is it metadata file ?

Thanks for your help, work and your patience :) I'm busy, but when i have finished to re-edit my ebuild, i post again.
Comment 5 Fulgurance 2018-02-06 15:41:53 UTC
I have finished. Tell me if it suits you. I did what I could

metadata.xml:
[code]<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
        <maintainer type="person">
                <email>zohran.londais@gmail.com</email>
                <name>msi-keyboard</name>
                <description>Control backlight of MSI laptop keyboards</des$
        </maintainer>
</pkgmetadata>[/code]

repoman log:
[code]fulgurance@msi-gs73vr-6rf /usr/local/portage/app-misc/msi-keyboard $ repoman --include-dev

RepoMan scours the neighborhood...
  ebuild.minorsyn               2
   app-misc/msi-keyboard/msi-keyboard-1.0.ebuild: Ebuild contains leading spaces on line: 17
   app-misc/msi-keyboard/msi-keyboard-1.0.ebuild: Ebuild contains leading spaces on line: 18
RepoMan sez: "You're only giving me a partial QA payment?
              I'll take it this time, but I'm not happy."[/code]

I have added files on attatchment.
Comment 6 Fulgurance 2018-02-06 15:43:05 UTC
Created attachment 518078 [details]
msi-keyboard-1.0.ebuild
Comment 7 Fulgurance 2018-02-06 15:43:42 UTC
Created attachment 518080 [details]
metadata.xml
Comment 8 Fulgurance 2018-02-06 15:48:42 UTC
Sorry, but i don't understand "commit"...
Comment 9 Jonas Stein gentoo-dev 2018-02-06 16:36:11 UTC
You do a good job for the start. 
But still something to do.

I contacted upstream. They tagged a commit with 1.0. You can use the version. 
You do not need the git stuff in the ebuild.

use 
SRC_URI="https://github.com/makkarpov/msi-keyboard/archive/v1.0.tar.gz -> ${P}.tar.gz"

substitute 1.0 with a variable: https://devmanual.gentoo.org/ebuild-writing/variables/

Indent with tab, but not with space.

Look at other proxy maintained packages and complete the metadata.xml.

>>> <name>msi-keyboard</name>
This is the place for your name.

Use
KEYWORDS="~amd64"
instead of
KEYWORDS="amd64"
for new ebuilds. See: https://devmanual.gentoo.org/keywording/

I suggest you join our support channel on IRC #gentoo-proxy-maint, if possible when done. 
You can discuss your ebuild there in realtime.
Comment 10 Fulgurance 2018-02-06 21:40:04 UTC
How can i create account for join IRC ?
Comment 11 Fulgurance 2018-05-27 17:27:52 UTC
Comment on attachment 518078 [details]
msi-keyboard-1.0.ebuild

# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6
inherit udev
DESCRIPTION="Control backlight of MSI laptop keyboards"
HOMEPAGE="https://github.com/makkarpov/msi-keyboard"
KEYWORDS="~amd64"
LICENSE="GPL-3"
SLOT="0"
RDEPEND="dev-libs/hidapi"
SRC_URI="https://github.com/makkarpov/msi-keyboard/archive/v${PV}.tar.gz -> ${P}.tar.gz"
src_install()
{
        udev_dorules 99-msi-keyboard.rules
        dobin msi-keyboard
}
Comment 12 Fulgurance 2018-05-27 17:29:25 UTC
Created attachment 533554 [details]
Ebuild
Comment 13 Fulgurance 2018-05-27 17:30:27 UTC
Created attachment 533556 [details]
Metadata
Comment 14 Fulgurance 2018-05-27 17:33:12 UTC
I have updated my attachments. Now it's good, metadata and ebuild files are ready. I'm ready to proxymaintain this package :)

RepoMan scours the neighborhood...

Note: use --include-dev (-d) to check dependencies for 'dev' profiles

RepoMan sez: "If everyone were like you, I'd be out of business!"
Comment 15 Jonas Stein gentoo-dev 2018-05-27 18:39:05 UTC
the metadata.xml is not ready yet.
Look at other metadata.xml files
and
https://devmanual.gentoo.org/ebuild-writing/misc-files/metadata/
and at
cat /usr/portage/skel.metadata.xml
Comment 16 Fulgurance 2018-05-27 19:31:16 UTC
(In reply to Jonas Stein from comment #15)
> the metadata.xml is not ready yet.
> Look at other metadata.xml files
> and
> https://devmanual.gentoo.org/ebuild-writing/misc-files/metadata/
> and at
> cat /usr/portage/skel.metadata.xml

With that, now is it good ? :)

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
        <maintainer type="person">
                <email>zohran.londais@gmail.com</email>
        </maintainer>
        <longdescription lang="en">
        Control backlight of MSI laptop keyboards without node.js
        </longdescription>
        <longdescription lang="fr">
        Contrôle les claviers rétroéclairés des ordinateurs MSI sans node.js
        </longdescription>
</pkgmetadata>
Comment 17 Fulgurance 2018-05-27 19:31:55 UTC
Created attachment 533562 [details]
Metadata
Comment 18 Fulgurance 2018-05-30 17:09:37 UTC
Is it good for you ?
Comment 19 Fulgurance 2018-11-13 01:42:59 UTC
I have maked my overlay for my package and other future package for Gentoo, if that can help you for validate my ebuild:*

https://github.com/Fulgurance/Gentoo-Overlay