Skip to content
Christian Jungerius edited this page Jan 31, 2022 · 5 revisions

Develop on AKL

So you want to add something to the codebase? Be my guest and get your fork through Github. Do notice that AKL applies GitFlow, meaning we do not touch the master/main branch for active development. The unstable version, or active development version is in the 'dev' branch. Once we are ready to ship a new release we start release/1.x.x branches which builds new release candidates available in my beta kodi repository. In special cases when something is broken in the stable, we create a hotfix branch from master to solve this.
So create your fork, make your feature branches based on dev and I'll see your Pull Requests coming in.

Prepare

To be prepared we recommend to read up on some python development information. It is recommended to create a virtual environment for your project.

Tooling

You can install the kodi.tools set in your project to help out with some tasks during development. Check the github page for more details. With this pip command you can install the tools in your project.

pip install kodi.tools

Read the documentation for how to use the tools. For example if you run the publish script it will build and publish the addon into your Kodi addons directory. You'll need to add a couple of environment vars (recommend using virtual envs and local .env files).

PWD=your work/project directory, linux users might not need this
ADDON_KODI_DIR=Kodi addons directory ...\Kodi\addons\
ADDON_NAME=plugin.program.akl
ADDON_SRCPATHS=<glob patterns of files to copy**/*.py:**/*.md:**/*.xml.....>

Create your own plugin addon for AKL

Currently we support plugins for adding either custom launchers, scanners or scrapers. It helps a lot if your addon has a dependency on the script.module.akl library so that you can properly extend the functionalities.
Also important is that you will need to understand how to work with python, git and how to create you own kodi addons. So if you not already have this knowledge you might want to start by checking out the official kodi documentation about creating your own addons.
Once you have read up on all of that you might want to read the following topics here:

Bugs & feature requests

You can ask for feature requests in the kodi forum thread or directly on GitHub.

If you find a bug or Kodi shows an error in AKL you can report it in this thread or in GitHub. In your report try to be descriptive about the problem and the steps you do that cause it. Also, report your operating system, Kodi version and AKL version. If AKL crashes it is very important that you post a debug log in order to locate the cause of the bug so I can fix it. To generate a debug log, unless otherwise told, follow these steps:

  1. In Kodi Settings, turn Kodi debug log OFF.
  2. In AKL addon settings, go to "Advanced" tab and set the "Log level" option to DEBUG.
  3. Reproduce the bug.
  4. Put your Kodi log file in paste.kodi.tv. You can use the Kodi Logfile Uploader addon to help with the log upload process. Thanks to Ronie for this fine addon.

Any feature requests or issues that get picked up will be put on the Story board. There you can monitor progress on work.

Clone this wiki locally