Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Branch usage #12

Open
WanWizard opened this issue Apr 21, 2017 · 25 comments
Open

Branch usage #12

WanWizard opened this issue Apr 21, 2017 · 25 comments

Comments

@WanWizard
Copy link
Contributor

@atvcaptain @Schimmelreiter @LraiZer @andyblac @plnick @jbleyel

Gents,

Who exactly is using the recipes from the repo, and who is still using the master branch? If no one, I would suggest to do a bit of housekeeping, and get rid of the current master, and rename upstream to master.

Any objections?

@LraiZer
Copy link
Member

LraiZer commented Apr 21, 2017

No objections from me.

@ghost
Copy link

ghost commented Apr 21, 2017

It's also OK for me.

@WanWizard
Copy link
Contributor Author

Thanks for the feedback.

I can see that OpenWebIf is very active, and a handful of others had commits this year to, but others? Any of you still using this repo or any of the other repo's? Or do your projects work with own forks?

@Schimmelreiter
Copy link
Contributor

All oe-a images (OpenATV, OpenHDF, OpenViX, ...) get their OpenWebif built from a fork of the OpenWebif master branch (Though I managed to keep it identical except for one file and some deletions).

I have no clue about the rest of the E2OpenPlugins.
I think they are built directly from E2OpenPlugins, but I would have to check which branch.

@WanWizard
Copy link
Contributor Author

Ok, if you want to, please. I hate to break something for one of you...

@WanWizard
Copy link
Contributor Author

WanWizard commented Apr 22, 2017

@Schimmelreiter if everyone else uses a fork, isn't it better if OpenPLi uses the same fork, so it saves you the trouble of keeping the repo's in sync? We commit in the E2OpenPlugins, and bi-directional syncing is a nightmare you would want to avoid...

@Schimmelreiter
Copy link
Contributor

The main difference between E2OpenPlugins' OWIF and that of oe-a is the removal of box and remote control images and the box detection quirks as oe-a has a proper boxbranding module.
In oe-a images, we can use just one OWIF ipk for all boxes, as the boxbranding module provides the box & remote images.
The boxbranding module makes it much easier to implement new boxes, as it concentrates all the diffs between boxes (Kernel partition name, rootfs partition name, flash file system used, box image, remote image, remote button map, ...) in just one file/ipk, from where it can be used everywhere (GUI help, OWIF, image backup/restore, ...).

That one diff is bearable, I just pull the changes from here and keep deleting those files on oe-a.
And as far as I know, OpenPLi refuses to use something as simple as boxbranding, which for example made porting multiboot for OpenPLi a nightmare.

Only one file really differs beyond "exists here and doesn't there":
The py doing the interaction with the transcoding settings, but it rarely ever gets changed at all.

It actually was a nightmare to get the forks in sync again due to previous white-space and other "no-change" diffs, but now it's a one-way sync. All changes get applied here and merged to oe-a fork.

And there are actually two more teams using the E2OpenPlugins repo for OWIF: VTI and Black Hole (But only for Black Hole, not OpenBH).

@WanWizard
Copy link
Contributor Author

WanWizard commented Apr 22, 2017

Ok, clear. Are VTI and BH included in this topic, or do we need to invite them to sort this out (I don't know who is "in charge" of which image)?

I would like to go back to a single version of OWIF and get rid of the fork. Not sure why OpenPLi has a bbappend that removes images, perhaps something from the past, to save space? I honestly don't see the point.

As to the boxbranding, I would like to have an all-image-builders discussion about that as well, because all different solutions are a pain for anyone wanting to develop generically, across images. We would like to propose to create a driver, that creates unified and standardized nodes in "/proc/image", which could be set and determined at compile time. With things like the boxname (vuduo2), boxdesc ("Vu+ Duo2"), nodes about features (OSD size (720/1080), Transcode yes/no, ...) and so on.

It would greatly reduce all detection code, sniffing for diffs between boxes, panicking about boxes that don't have any diffs (like the Miracblebox Premium Twin+ and the new SAB Alpha Triple HD), etc.

Is this worth having a chat about?

@Schimmelreiter
Copy link
Contributor

plnick is from VTi, dunno about BH.

Image removal probably happens due to space considerations. The more boxes E2 supports, the more images get added and a universal IPK would become huge.

All that you suggest for that driver is already done inside the boxbranding module. It's set at image build time and contains human readable vendor and box names, short names (procmodel), the distro name and version, ... and an image of the box and the original remote. All the silly code in owibranding.py of OWIF is unneeded on oe-a images as there is a clean API to get the desired information. It even allows customized builds for identical hardware in different cases/with different remotes, e.g. there are different builds of OpenATV for the Mut@nt HD2400 as well as the AX Quadbox HD2400, which are in fact OEM builds of the same box.

There is no need to re-invent the wheel:
https://github.com/oe-alliance/branding-module

@WanWizard
Copy link
Contributor Author

You absolutely have a point. I don't know where the aversion against OE-A comes from, that was from before my time, but I am happy to discuss it again. After all, double effort is effort lost.

The main issue I have with the OE-A branding module as it is at the moment, is that its functionality is limited to Python only. If would have been better if it was a lib with both C/C++ and Python bindings, so it can be used anywhere in the codebase. For example, streamproxy needs exactly the same info. It would be great if it could be unified.

@WanWizard
Copy link
Contributor Author

WanWizard commented Apr 23, 2017

After a bit further digging into OE-A sources, I bumped apon boxinput, a kernel driver which adds some missing proc nodes for certain VU+ models. This is very similar to my original suggestion.

I have discussed this issue with some of the team members: the general consensus is that if the current OE-A boxbranding could be converted to a lib with C/C++ and Python bindings, the current Python API would remain unchanged, and access from the C code could be guaranteed in a unified way, with the same API.

@WanWizard
Copy link
Contributor Author

@E2OpenPlugins/devs Coming back to this topic.

Is there anyone that uses this repo in it's current form, as-is, in his own project? I see that OE-A uses a fork of this repo, and hasn't done a merge since 2014. What do other projects do?

For OpenPLi using this repo and have publicly maintained recipes is turning out to be more and more of a nightmare, now that we have different image versions and a requirement to have different recipes with different SRCREV's for each of them.

So we're going to stop using this repo. If nobody else is using it, maybe it is better to simply remove if, and save everyone the time updating it?

@WanWizard
Copy link
Contributor Author

@plnick @Schimmelreiter @andyblac @arn354 @atvcaptain ping?

@atvcaptain
Copy link
Contributor

you have answer self oe.a teams use oe-a fork

vti no infos

@WanWizard
Copy link
Contributor Author

Yeah, just checking to make sure I don't break something for someone. Thanks for the response.

@ghost
Copy link

ghost commented Oct 18, 2017

For me it's also ok to remove this repository

@WanWizard
Copy link
Contributor Author

Cool, thanks.

@jbleyel
Copy link

jbleyel commented Oct 18, 2017

We can move the master branch of
https://github.com/E2OpenPlugins/e2openplugin-OpenWebif
as master branch of
https://github.com/oe-alliance/e2openplugin-OpenWebif
And then define the oe-alliance as new dev.

All other repros of E2OpenPlugins organisation are very old except:
e2openplugin-Foreca, e2openplugin-HetWeer, e2openplugin-AutoBackup

@jbleyel
Copy link

jbleyel commented Oct 18, 2017

.. something more:

The E2OpenPlugins/e2openplugin-OpenWebif is the base repro on github.
I'm not sure if we have to use "Transfer ownership".
Currently i'm not able to define travis-ci on oe-alliance like on E2OpenPlugins.

And we don't have the "forked from ...." on top.
bildschirmfoto 2017-10-18 um 17 58 15

@Schimmelreiter
Copy link
Contributor

VTi, Black Hole (Not OpenBH) and OpenPLi can't build OpenWebif from oe-alliance/e2openplugin-OpenWebif, as oe-alliance/e2openplugin-OpenWebif lacks the box and remote pictures/html definitions.

Those are part of oe-alliance-branding in oe-a and I doubt any oe-a team would be happy if we re-introduced the garbage for unbranded building.

This comment is mainly directed at OpenPLi, as they are the only team that builds images for many different boxes from the unbranded OWIF-repo.
VTi builds images for 11 Vu+ boxes only and I think they even replace the images in their build, so it wouldn't even matter for them if they weren't present inside the repo.
Actually they would be even better off if they just added their own shortened owibranding.py at build time, rather than using the "all boxes detected" owibranding.py that only OpenPLi needs.

Everything else would be easy to adjust:
The two different transcoding.py can co-exist under different names and be copied/deleted at build time. Most probably their code could even be merged using some if else statements ...

@ghost
Copy link

ghost commented Oct 18, 2017

Topic here is the bitbake recipes repository and not the OpenWebIF repository !

The OpenWebIF repository keeps untouched

@Schimmelreiter
Copy link
Contributor

@jbleyel started it ... No I didn't ... Yes, you did ... No we didn't ... Yes, you invaded Poland!

@jbleyel
Copy link

jbleyel commented Oct 18, 2017

I have read the comments of 22 April and probably misunderstood.

@WanWizard
Copy link
Contributor Author

lol, my bad, I decided to continue in this issue, sorry for that.

@athoik
Copy link
Contributor

athoik commented Nov 8, 2017

Hi,

Recently I started working on some improvements in satip code from @catalinii.

One of the changes was the introduce of eModelInformation class that reads /etc/image-version file and makes the information available both to C++ and python.

I think that this class can be used from all images and replace (or work together with) the boxbranding.

It would be nice if we can bring that discussion alive and comclude to something common, extendable, easy to use.

Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants