Kodi 18 is currently alpha and there is likely to be a lot of activity in the coming weeks/months. There will be some breakage.
In addition, these are "bleeding edge" builds - they often contain cherry-picked commits that require early testing prior to merging upstream, and which won't be found in regular nightlies until after they have been merged.
Please continue to report issues in this thread, but as I'm often not responsible for bugs and regressions (unless it's build related) don't expect personal replies or for me to file any upstream bug reports on your behalf. The best you can hope for is that the developer responsible is monitoring this thread and responds appropriately. If you want to progress an issue, identify when the issue first appeared as that may help suggest the pull request (PR) responsible, then post a comment on the relevant github PR or - if it's VideoPlayer related, or you don't know which PR is responsible - on trac.kodi.tv.
By all means use third party skins with these builds (if the skins are compatible), but please do not report problems that cannot be reproduced while using the stock Estuary skin that is included with every build.
If a problem is not reproducible with stock Estuary then it's most likely to be a third-party skin problem, in which case contact the skin maintainer.
You need a working system in order to install a test build. If you are starting from scratch, use an official LibreELEC disk image to create a working system on your SD card. Once you have a working system, install the test build by copying the tar file into your Update folder and reboot.
RPi 3 Users: Use RPi2 builds.
Recent builds (see next post for older builds):
- #0622, 22-Jun-2017: RPi / RPi2 -- Release post ([inputstream] change addon interface to new C++ style; changed: Default libcurl and samba timeout value to 30;MMAL/VideoBuffer/VideoPlayer updates)
- #0621, 21-Jun-2017: RPi / RPi2 -- Release post (Temporary bug fix for wget issue after busybox 1.26.2)
- #0620, 20-Jun-2017: RPi / RPi2 -- Release post (Addon interface and audioencoder changes)
- #0619, 19-Jun-2017: RPi / RPi2 -- Release post (Addon settings fix; updated PR12300)
- #0618, 18-Jun-2017: RPi / RPi2 -- Release post (MMAL: Always use geometry for strides)
- #0617, 17-Jun-2017: RPi / RPi2 -- Release post (New 4.11.6 kernel; PR:12314: [addons/settings] Fix fallout #2; restore bash support in busybox)
- #0616, 16-Jun-2017: RPi / RPi2 -- Release post (libnfs 2.0.0; PR:12311: FIX: ensure real filename from videodb in playlists)
- #0615, 15-Jun-2017: RPi / RPi2 -- Release post (New 4.11.5 kernel; enable -fPIC for some packages; update busybox, alsa)
- #0614, 14-Jun-2017: RPi / RPi2 -- Release post (AddonSettings: Protect against nullptr; [GUI] Prevent parse step of VisibleConditions if expression is already…)
- #0613, 13-Jun-2017: RPi / RPi2 -- Release post (New firmware (bootcode updates); fix ExtendedInfo script/TV Next Aired addons; VideoPlayer video buffer updates)
- #0612, 12-Jun-2017: RPi / RPi2 -- Release post ([addons] change visualization to new way)
- #0611, 11-Jun-2017: RPi / RPi2 -- Release post ([network] CHTTPJsonRpcHandler: limit any other request method than POST to ReadData permissions on the JSON-RPC API)
- #0610, 11-Jun-2017: RPi / RPi2 -- Release post (ffmpeg: update to ffmpeg-3.3.1-Leia-Alpha)
- #0609, 09-Jun-2017: RPi / RPi2 -- Release post (PR:12276: [addons/settings] Fix fallout #2; videoPlayerRadioRDS: Revert ResetRDSCache on init)
- #0608, 08-Jun-2017: RPi / RPi2 -- Release post (New firmware; more addon changes; newclock5: Revert "VideoPlayer: Fix uninitialized variables")
- #0607, 07-Jun-2017: RPi / RPi2 -- Release post (New 4.11.4 kernel; more addon changes; fix dirty regions; [settings] move to C++11; [webserver] dont allow jsonrpc over http get)
- #0606, 06-Jun-2017: RPi / RPi2 -- Release post (More addons/settings fixups; fix for Codec OSD issues identified in last build)
- #0605, 05-Jun-2017: RPi / RPi2 -- Release post (More Kodi addon updates)
- #0604, 04-Jun-2017: RPi / RPi2 -- Release post ([add-ons/settings] migrate add-on settings to settings library)
- #0603, 03-Jun-2017: RPi / RPi2 -- Release post ([guilib] Evaluate skin expressions everywhere; ActiveAE: Revert change that may have broken stereo upmix)
- #0602, 02-Jun-2017: RPi / RPi2 -- Release post (HEVC improvement; [addons] next binary addon gui interface step; revert SIGTERM change (for now))
- #0601, 01-Jun-2017: RPi / RPi2 -- Release post (libnfs: auto-reconnect changes; handle timeouts better; dwc_otg: fiq_fsm: Make isochronous compatibility checks work properly)
- #0531, 31-May-2017: RPi / RPi2 -- Release post ([addons] add first step of gui on addon interface)
- #0530, 30-May-2017: RPi / RPi2 -- Release post (New firmware (Revert Change USB PHY settings); update libmicrohttpd to 0.9.55)
- #0529, 29-May-2017: RPi / RPi2 -- Release post ([addons] small cleanup)
- #0528, 29-May-2017: RPi / RPi2 -- Release post (More addon updates; tvheadend42 now builds with ffmpeg-3.3)
- #0527, 27-May-2017: RPi / RPi2 -- Release post (cmake changes)
- #0526, 26-May-2017: RPi / RPi2 -- Release post (New 4.11.3 kernel; PR:352: Fix: set wrong variable (libcec))
- #0525(2), 25-May-2017: RPi / RPi2 -- Release post ([addons] Bring in new binary style (First part))
- #0525, 25-May-2017: RPi / RPi2 -- Release post (Incorrect release code; enable mesa GLES support for Generic/RPi/RPi2)
- #0523, 23-May-2017: RPi / RPi2 -- Release post (Fix for HEVC crash)
- #0522, 22-May-2017: RPi / RPi2 -- Release post ([addons] remove the 'void ADDON_Stop()' call; PR:1635: firmware: install wifi firmware from linux-firmware, cleanup wlan-firmware)
- #0521, 21-May-2017: RPi / RPi2 -- Release post (New 4.11.2 kernel; SMBFile: Use 1MB chunks; remove SMB2 restriction from LE Samba Server)
- #0520, 20-May-2017: RPi / RPi2 -- Release post (Fix for devinput driver in newer version of lirc)
- #0519, 19-May-2017: RPi / RPi2 -- Release post (ffmpeg hevc optimisations; CVideoDatabase: fix setting named seasons when updating tvshow details)
- #0518, 18-May-2017: RPi / RPi2 -- Release post ([gui][refactor] rework custom window's visible condition and modality handling)
- #0517, 17-May-2017: RPi / RPi2 -- Release post (Kodi: more addon updates; update SMB GUI settings patch; revert "DVDDemuxFFmpeg: max_packet_size - use GetBlockSize directly")
- #0516, 17-May-2017: RPi / RPi2 -- Release post ([cmake][addons] automate addon.xml version set; linux: enable fq_codel for all projects; bump smaba to 4.6.3)
- #0515, 16-May-2017: RPi / RPi2 -- Release post (New 4.11.1 kernel; Samba: Add "client max protocol" as a GUI setting)
- #0514, 14-May-2017: RPi / RPi2 -- Release post (Merge changes from vpupdates branch; fix rendering of Kodi splash; fix "inprogresstvshows"; fix libnfs use-after-free; fix Samba service breakage)
- #0513, 13-May-2017: RPi / RPi2 -- Release post (Send message from CGUIControlGroupList only if scroolpos has changed)
- #0512, 12-May-2017: RPi / RPi2 -- Release post (New MusicDB schema v64; [Music] Handle duplicate MusicBrainzTrackID within the same album; libnfs fixes; BCM270X_DT: Tidy up mmc, sdhost, sdio overlays)
- #0511, 11-May-2017: RPi / RPi2 -- Release post ([Linux] EGL split up and cleanup; libnfs: more changes; PR:1616: glibc: update to glibc-2.25)
- #0510, 10-May-2017: RPi / RPi2 -- Release post ([filesystem] ZipManager: skip path traversal; webserver improvements; libnfs updates; newclock5: [GUI] avoid unneccesary work)
- #0509, 09-May-2017: RPi / RPi2 -- Release post (libnfs updates)
- #0508, 08-May-2017: RPi / RPi2 -- Release post (Large number of package updates)
- #0507, 07-May-2017: RPi / RPi2 -- Release post (New 4.11.0 kernel)
- #0506, 06-May-2017: RPi / RPi2 -- Release post (Kodi: Estuary language updates; kodi: Settings updates)
- #0505, 05-May-2017: RPi / RPi2 -- Release post (New 4.10.14 kernel; libnfs: Export nfs_set_timeout() and nfs_get_timeout())
- #0504, 04-May-2017: RPi / RPi2 -- Release post (New firmware (ISP/IL); allow vcdb log out even when firmware has locked up)
- #0503, 03-May-2017: RPi / RPi2 -- Release post ([PVR] Another round of code cleanup; libnfs: Fix bug in nfs_link when using the wrong(invalid) handle when dropping cache; newclock5 videoplayer updates)
- #0502, 02-May-2017: RPi / RPi2 -- Release post (pvr.iptvsimple: Revert "change to automatic interface version set"; newclock5: CGUIControl: Add stats parameter to Process calls)
- #0501, 01-May-2017: RPi / RPi2 -- Release post (New firmware (dispmanx 3d, isp_resize); 3D and subtitle fixes in gui removal)
I will not be adding extra add-hoc packages to these builds as that is not their purpose, which is to help test bug fixes and enhancements for existing features/packages/drivers in stock LibreELEC. New functionality may be included for testing purposes if it is considered both beneficial and highly likely to be merged upstream in the near future, and is available as a github pull request or commit.
I have no desire to create builds with unique features upon which someone becomes dependent, as this benefits nobody in the long term not even those using the unique features once I stop creating new builds. In theory, when I stop creating new builds you should all be able to seamlessly switch back to official LibreELEC builds which by then should be including most if not all of the enhancements originally tested in these builds.
If you care about long term support for your favourite package, feature or driver and want to see it included in an LibreELEC build, contact the LibreELEC developers on github or post on the LibreELEC.tv forum requesting the addition of support in the base LibreELEC build (or better yet, create a Pull Request with patch). That way everyone building or using an LibreELEC derived system "wins".
Additional Testing Notes:
- Build references
When reporting issues, refer to builds using only the published build codes, ie. #0215, #0216 etc. The build code is visible on the boot screen, and by typing "lsb_release".
Do NOT use any other reference, as these are often meaningless. For instance, the LibreELEC github revision identifier, 20272, 20281 etc. can be used by more than one build if nothing changes in LibreELEC between successive builds meaning such references could identify multiple builds, rendering it useless as a unique reference.
Anyone using the wrong reference will be ignored by me, possibly others, as I'm just not interested in working out which build you may or may not be referring to.
- Usage information
Starting with build #0529(2014), very limited usage information will be collected during the first boot of each newly installed build. The information collected is: build#, Pi memory size (256MB, 512MB or 1008MB) and maximum ARM frequency. No IP or personal information is collected!
If you wish to opt out of data collection, run the following command:
- Migrating LibreELEC from Pi1 to Pi2, and back again
Note: Prior to migration I would recommend disabling all overclocks, as a Pi1 overclock may not work successfully on a Pi2, and vice versa.
From Pi1 to Pi2: While using the Pi1, upgrade with the RPi2 tar. Once the upgrade is complete, the system will reboot to a rainbow boot screen (as you're now booting the ARMv7 kernel). Shutdown (pull the power) and transfer the SD card into your Pi2, which will boot normally.
From Pi2 to Pi1: While using the Pi2, upgrade with the RPi tar. Once the upgrade is complete, the system will reboot to a rainbow boot screen (as you're now using the ARMv6 kernel). Shutdown (pull the power) and transfer the SD card into your Pi1, which will boot normally.
- Builds since early Dec 2014 include crashlog support
In the event of a crash, the file /storage/.kodi/temp/kodi_crashlog_<ccyymmddhhmmss>.log will be created. The symbolic link "/storage/.kodi/temp/kodi_crash.log" will always point to the latest crashlog. Upload one of these files to a paste site and post details on the forum.
Debug builds are occasionally uploaded to the debug folder. Debug builds will usually include more detailed crashlog information, but require a larger System partition (at least 384MB) and more RAM.
Use the following command to upload the most recent crashlog:
cat /storage/.kodi/temp/kodi_crash.log | pastebinit
- Resizing partitions for debug-enabled builds (or undersized partitions that result in "CHECKING SIZE: FAILED" errors)
The default FAT partitition created by a disk-image installation (prior to OpenELEC 6.0.1) is too small for a debug-enabled build (and even some of the more experimental non-debug builds depending on what features are included), and will need to be increased in size to 512MB using some of the free space allocated to the second ext4 partition.
To resize the FAT and ext4 partitions of an existing installation:
- Linux: use gparted to resize FAT/ext4 partitions
- Windows: use MiniTool Partition Wizard. See this post for more details - unfortunately partition move/resize is not supported by MiniTool for ext4 filesystems so backup, delete/recreate ext4, then restore to resize the Storage partition
- Windows: An alternative solution is to boot a Linux "LiveCD" and then use gparted
Starting with OpenELEC 6.0.1, disk image installations will now create a 512MB FAT partition although this will wipe all existing data - use the backup/restore procedure to save existing data.
- Amazon Prime / inputstream.adaptive
No longer working after Amazon changed their encryption - long term solution is a work-in-progress.
These builds include the inputstream.adaptive addon, which is enabled by default.
With inputstream.adaptive it is possible to view Amazon Prime content. To do so, you will need to install the libwidevinecdm.so library:
curl -Ls http://nmacleod.com/public/libreelec/getwidevine.sh | bash
Available Amazon Prime addons (valid Amazon Prime account required):
- LibreELEC Settings add-on Development Updates
For these builds since #0612, enter a URL into a Custom Channel, selecting from the following URLs based on your hardware:
RPi Zero/RPi1: http://milhouse.libreelec.tv/builds/master/RPi
Generic (x86): http://milhouse.libreelec.tv/builds/master/Generic
- Clean builds - what are they?
There are two ways to build LE: a "clean" build, where everything (every package) is built from scratch - this takes 2.5 to 3 hours - or there's an "incremental" build where only the packages that have changed from the last build are re-built - this is much quicker, usually 10-15 minutes depending on the number of packages that have changed.
Obviously "incremental" builds are the preferred method since they're so much quicker, however there are consequences when packages have inter-dependencies and only some of those packages are changed (and thus rebuilt) which may result in unpredictable results at run-time. For this reason, every now and again it's a good idea to "clean build". Also, when there are a large number of core packages being updated/bumped it's also a good idea to "clean build" since the likelihood/risk of inter-dependency is so much greater.
I'll sometimes make a point of mentioning in the build highlights when a build is of the "clean build" variety, mainly so that I remember this if/when I come back to this build for any reason in another 6 months time... Note that I won't always do this as I'll sometimes forget to mention it, so the lack of any reference to "clean build" should not be taken as confirmation that the build is incremental.
- Uploading debug logs
Without a debug log there's often no way to investigate a problem, and you can expect your bug report to be ignored as a result. This is the easiest way to upload a debug log:
- Enable debug logging. If this is not possible in the GUI (because Kodi is crashing) then add the following to /storage/.kodi/userdata/advancedsettings.xml:
- Reboot, so that debug logging is in effect from the very start of Kodi
- Reproduce the problem
- Using ssh connect to LibreELEC (username: root, password: libreelec)
- Execute the command:
cat /storage/.kodi/temp/kodi.log | pastebinit
Do NOT upload the log itself to the forum! Always us a pastebin-type site (or dropbox/googledrive if you have to compress the log).
- Enable debug logging. If this is not possible in the GUI (because Kodi is crashing) then add the following to /storage/.kodi/userdata/advancedsettings.xml:
- Game Emulators
Access games via Internet Archive ROM Launcher (IARL):
- Download Zach Morris Repo and install from zip (don't use "Install from zip file" Home screen widget - use Add-ons > Add-on browser > Install from zip file)
- Install from repository > Zach Morris Add-ons > Game add-ons > Game providers > Internet Archive ROM Launcher
- Within IARL, install emulators, launch games etc.
- Odds and sods