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

Add tv.kodi.Kodi. #673

Closed
wants to merge 35 commits into from
Closed

Conversation

comparascope
Copy link

@comparascope comparascope commented Oct 13, 2018

I try to add as much of the depends as possible. The program works well,
and I test music, videos and addons, and they can be updated. I move
move the kodi data file into the flatpak folder structure. I test with
VA-API playback with pulseaudio. I use smb for loading media files.

Current state:

-- ALSA enabled: Yes
-- AVAHI enabled: Yes
-- BLUETOOTH enabled: Yes
-- BLURAY enabled: Yes
-- CAP enabled: Yes
-- CCACHE enabled: Yes
-- CEC enabled: Yes
-- DBUS enabled: Yes
-- LCMS2 enabled: Yes
-- LIRCCLIENT enabled: No
-- MDNS enabled: No
-- MICROHTTPD enabled: Yes
-- NFS enabled: Yes
-- PULSEAUDIO enabled: Yes
-- PYTHON enabled: Yes
-- SMBCLIENT enabled: Yes
-- SNDIO enabled: Yes
-- UDEV enabled: Yes
-- XSLT enabled: Yes
-- VAAPI enabled: Yes
-- VDPAU enabled: Yes
-- GLX enabled: Yes
-- PLIST enabled: No
-- MARIADBCLIENT enabled: Yes

Missing items not listed above:

  • - BD-Jar (bluray enabled but ant fails with java10 to build jar)
  • - Binary plugins

unsure if Plist, MDNS, LIRC, Shairplay are high priority. I assume no.

I try to add as much of the depends as possible.  The program works well,
and I test music, videos and addons, and they can be updated.  I move
move the kodi data file into the flatpak folder structure.  I test with
VDPAU playback with pulseaudio.  I try samba for loading media files.
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
deps/bluez.json Outdated Show resolved Hide resolved
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
"sources": [
{
"type": "archive",
"url": "https://github.com/ArtifexSoftware/ghostpdl-downloads/releases/download/gs922/ghostscript-9.22.tar.xz",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This ghostscript version is one year old with tons of CVE allowing for arbitrary code execution. Latest is 9.25.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ok

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For what is ghostscript required; is this dependency really required?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it is just for building

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If its just for building it could have cleanup: ["*"] to avoid shipping it in the final app.

tv.kodi.Kodi.json Outdated Show resolved Hide resolved
deps/fribidi.json Outdated Show resolved Hide resolved
deps/fstrcmp.json Outdated Show resolved Hide resolved
deps/glu.json Outdated Show resolved Hide resolved
deps/samba.json Outdated Show resolved Hide resolved
deps/tinyxml.json Outdated Show resolved Hide resolved
deps/udev.json Outdated Show resolved Hide resolved
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
tv.kodi.Kodi.json Outdated Show resolved Hide resolved
@TingPing
Copy link
Member

Have you contacted upstream to see if they are interested in maintaining this?

@tilosp
Copy link

tilosp commented Oct 13, 2018

Binary addons are missing
See: https://github.com/xbmc/xbmc/blob/master/docs/README.Linux.md#5-build-binary-add-ons

@comparascope
Copy link
Author

Have you contacted upstream to see if they are interested in maintaining this?

I thought I just make it work first and then maybe the kodi team will be interested. I did not post to the kodi forum. If the kodi team wants to help maintain the flatpak - fine with me.

@comparascope
Copy link
Author

I need some time to read and understand all the comments and make changes.

tv.kodi.Kodi.json Outdated Show resolved Hide resolved
@barthalion
Copy link
Member

I thought I just make it work first and then maybe the kodi team will be interested. I did not post to the kodi forum. If the kodi team wants to help maintain the flatpak - fine with me.

It works the other way, especially for such big projects as Kodi; it's better to ask the team first.

@comparascope
Copy link
Author

It works the other way, especially for such big projects as Kodi; it's better to ask the team first.

The forum threads on the kodi website are not very inspiring. People have asked for a flatpak for a long time, and no reply from kodi teams. I do not want to wait longer myself.

@comparascope
Copy link
Author

@Marko10-000

Copy link

@wsnipex wsnipex left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

has this been tested with Intel/Amd gfx? Looks like EGL and vaapi is missing

tv.kodi.Kodi.json Show resolved Hide resolved
- Only share xdg-{movies,music,pictures} and not all of home.
- I did not test wayland support. Disable it now.
- Rename desktop file.
- Remove unnecesary options for bluez configure.
- Update ghostscript
- Fix libical before bluez, udev first as well.
- No parallel make flag.
- Use cmake-ninja buildsystem
- Update sdk and runtime.
- Better parallel builds for samba.
- Use udev and glu from shared-modules.
- Update libcdio, but disable all features
- Attempt to fix icon post-install.
- Remove obsolete modules.
- Add python, fix post-install, and make fmt external.
@comparascope
Copy link
Author

has this been tested with Intel/Amd gfx? Looks like EGL and vaapi is missing

Works now with VA-API

@MartijnKaijser
Copy link

MartijnKaijser commented Nov 10, 2018

Any one here interested in doing a "article" about this that we can post on our kodi.tv website ?

@Marko10-000
Copy link

@wsnipex It is not yet published. Everyone is currently building it on their own computer to test it. The official builds are tests to see if they build on the flathub system. You can install it with flatpak-builder --user --install --install-deps-from=flathub <more config opts when you like> <build dir> <build file> <build file>. Then you can run it. I think it will be published when we have our own repository.
@MartijnKaijser Would you like to have a separate article for flatpak support or a section in the v18 release article?

@wsnipex
Copy link

wsnipex commented Nov 10, 2018

@Marko10-000 I assumed as much, but thought there might be a hidden url to download the test builds. That would be really helpful for testing.

@comparascope
Copy link
Author

@Marko10-000 I started to maintain a text file in the repo that lists addons that have blocker issues. There are 3 at the moment (with reason listed). The list does not contain addons that "I have still to try these", I will add them there.

If the official version 18 release is soon, we can probably wait for that.

@nedrichards
Copy link
Member

@wsnipex we're working on a new repo system right now that would enable just that. patches welcome! (as ever)

@Hedda
Copy link

Hedda commented Nov 13, 2018

@MartijnKaijser @Marko10-000 suggest you read this article from fedoramagazine.org to get some inspiration and maybe steal ideas/text from it for an "article" or "blog-post" for the kodi.tv website:

https://fedoramagazine.org/getting-started-flatpak/

Fedora Magazine content is usually published under Creative Commons (CC) license so it's probably ok?

https://fedoramagazine.org/terms-and-conditions/

PS: Personally I think that it would be best to post a whole separate blog-post on Flatpak and Flathub.

@nedrichards
Copy link
Member

Ok - do you want to hold for a v18 final release? Happy to do so or to ship now.

@Marko10-000
Copy link

@nedrichards : @wsnipex you can decide for me. I just don't want that at the end the Kodi team is appended to publish faulty/unusable software. They already have enough problems (brand name in Canada, sold pirate boxes with the name Kodi and with the corresponding consequences that they got kicked out of an app store, ...). I think you know best whether the beta 5 is already stable enough to be released.

@nedrichards
Copy link
Member

Well, I'm running v18beta5 on my Xbox from the MS Store ;-) but overall I love the focus on making sure users get high quality software.

There's one wider ecosystem regression that I'm tracking (which we discovered through testing this) which is in VA-API provision in the runtime: https://gitlab.com/freedesktop-sdk/freedesktop-sdk/issues/463 we might want to make sure that's fixed and rolled out first.

@wsnipex
Copy link

wsnipex commented Nov 15, 2018

I'm for releasing this asap so that the flatpak side gets some testing before v18 final, but vaapi should work.

@Marko10-000
Copy link

Well then we have to wait for this changes. Shouldn't take long because just some symbolic links are broken.
@comparascope What du you think? You sad nothing about it?
PS: Has anybody tested it on AMD GPUs?

@comparascope
Copy link
Author

I have been very busy but will have some extra time soon to do cleanups and dependency updates.

I test on a Radeon Vega. I have also tested on Intel HD.

@comparascope
Copy link
Author

FYI I have no preference for either waiting or shipping as is. I am already building and using this build locally on 3-4 computers and it is no difference for me either way. I do have some segmentation faults in pvr.mythtv binary addon, but this is addon problem not kodi. Kodi itself runs stable for me.

"sources": [
{
"type": "archive",
"url": "https://download.samba.org/pub/samba/stable/samba-4.7.4.tar.gz",
Copy link

@Erick555 Erick555 Nov 17, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you update samba? The latest release from 4.7.x branch is 4.7.11. The latest overall release is 4.9.2. There are a couple of CVE for this old release.

"sources": [
{
"type": "archive",
"url": "https://ftp.gnu.org/gnu/libmicrohttpd/libmicrohttpd-0.9.59.tar.gz",

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The latest release is 0.9.60.

tv.kodi.Kodi.json Outdated Show resolved Hide resolved
@comparascope
Copy link
Author

I will do an update check on all the deps and addons soon.

Co-Authored-By: comparascope <44108613+comparascope@users.noreply.github.com>
@nedrichards
Copy link
Member

bot, build tv.kodi.Kodi

@nedrichards
Copy link
Member

Repository has been created: https://github.com/flathub/tv.kodi.Kodi

@nedrichards
Copy link
Member

OK, as suggested I've created the repo and sent invitations to it to everyone mentioned above. If you don't have access or think someone else should be there let me know.

You can now push new commits to master to kick off release builds and use PRs and the bot, build comment command yourself to kick off builds on https://flathub.org/builds

@Marko10-000
Copy link

@nedrichards Will only the master branch be built or all other branches too?

@barthalion
Copy link
Member

Only master branch. Multiple branches support is reserved for baseapps or platform/Sdk extensions.

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

Successfully merging this pull request may close these issues.

None yet