Je eigen Build voor Kodi maken / uploaden! (Enige ervaring vereist)!

Slikt

VIP
1 mei 2017
1.500
987
216
Zip bestand maken is gelukt maar dan zonder %appdata% te gebruiken.Ik weet ook niet waarom dit moet of is? Draai zelf hierzo met apple en hopelijk is hier op het forum iemand die me dat kan uitleggen;)
 
Laatst bewerkt:
Zip bestand maken is gelukt maar dan zonder %appdata% te gebruiken.Ik weet ook niet waarom dit moet of is? Draai zelf hierzo met apple en hopelijk is hier op het forum iemand die me dat kan uitleggen;)
Apple bewaard de data van Kodi ergens anders dan Windows doet (Windows is %appdata%) MacOS bewaard het in:
/Users/<your_user_name>/Library/Application Support/Kodi

Dat moet je dan zippen net zoals de tutorial laat zien. Daarna kun je gewoon de rest van de stappen volgen.
 
  • Like
Reacties: Andre19721972
Alvast bedankt voor je reactie maar moet denk ik wat toelichten. De build is gemaakt op een schield en mbv es file explorer heb ik de map kodi copy/paste naar een usb-stick. Deze usb stick zit in de iMac en van de kodi map (5 onderdelen) heb ik een zip-file gemaakt. Kan ik met dit zip bestand de verdere stappen volgen in de tutorial?
 
Alvast bedankt voor je reactie maar moet denk ik wat toelichten. De build is gemaakt op een schield en mbv es file explorer heb ik de map kodi copy/paste naar een usb-stick. Deze usb stick zit in de iMac en van de kodi map (5 onderdelen) heb ik een zip-file gemaakt. Kan ik met dit zip bestand de verdere stappen volgen in de tutorial?
Dus in de Kodi map heb je deze mappen gezipt: (in 1 zip bestand)
- userdata
- system
- media
- cache
- addons

Die zip upload je vervolgens naar Dropbox en je kunt nu gewoon de rest van de tutorial volgen.
 
Na heel wat pogingen verder is het me niet gelukt.........Kodi blijft de melding geven: Niet gelukt add-on te installeren van zipbestand vanwege een ongeldige structuur.
Alle stappen in de tutorial gevolgd en soms wat anders geprobeerd maar helaas......
Omdat de structuur ongeldig was nog een laatste poging ondernomen maar nu alle comprimeer stappen uitgevoerd op de shield en de andere stappen op de iMac.Gelukt!!!!
Echter gaat het bij het openen 2e foto fout. De fout melding verwijst voor meer info naar het logbestand. Deze kan ik 123 niet vinden. Keep on going:hamer:
 

Bijlagen

  • Kodi_20170707_151321.png
    Kodi_20170707_151321.png
    738,4 KB · Weergaven: 33
  • Kodi_20170707_151341.png
    Kodi_20170707_151341.png
    663,3 KB · Weergaven: 37
  • Kodi_20170707_151350.png
    Kodi_20170707_151350.png
    720,9 KB · Weergaven: 35
Na heel wat pogingen verder is het me niet gelukt.........Kodi blijft de melding geven: Niet gelukt add-on te installeren van zipbestand vanwege een ongeldige structuur.
Alle stappen in de tutorial gevolgd en soms wat anders geprobeerd maar helaas......
Omdat de structuur ongeldig was nog een laatste poging ondernomen maar nu alle comprimeer stappen uitgevoerd op de shield en de andere stappen op de iMac.Gelukt!!!!
Echter gaat het bij het openen 2e foto fout. De fout melding verwijst voor meer info naar het logbestand. Deze kan ik 123 niet vinden. Keep on going:hamer:
Als die die fout weergeeft dan heb je waarschijnlijk iets verkeerds aangepast bij default.py. Kun je even jouw default.py plakken op pastebin.com en dan de link hier plaatsen? Dan kijk ik wat er fout gaat.
 
FF kijken of het gelukt is.

Het enige wat ik hier veranderd heb is de link van dropbox en de 0 in een 1.
 
FF kijken of het gelukt is.

Het enige wat ik hier veranderd heb is de link van dropbox en de 0 in een 1.
You must be registered for see images


Dat gele gemarkeerde heb je fout. Dat moet " zijn en niet ”

Hier de verbeterde versie:
Code:
import xbmc, xbmcaddon, xbmcgui, xbmcplugin,os,sys
import shutil
import urllib2,urllib
import re
import extract
import time
import downloader
import plugintools
import zipfile
import ntpath
 
 
USER_AGENT = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3'
base='kodi-forum.nl'
ADDON=xbmcaddon.Addon(id='plugin.video.eigenbuild')
dialog = xbmcgui.Dialog()   
VERSION = "1.0.0"
PATH = "kodi-forum.nl"           
 
  
def CATEGORIES():
    addDir("Mijn eigen build","https://www.dropbox.com/s/anpr6vlk6w7bxen/sliknepflixbuild1.0.zip?dl=1",1,"https://kodi-forum.nl/images/og-logo.png","https://kodi-forum.nl/images/og-logo.png","Mijn eigen build")
    setView('movies', 'MAIN')
      
  
def OPEN_URL(url):
    req = urllib2.Request(url)
    req.add_header('User-Agent', 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3')
    response = urllib2.urlopen(req)
    link=response.read()
    response.close()
    return link
  
  
def wizard(name,url,description):
    path = xbmc.translatePath(os.path.join('special://home/addons','packages'))
    dp = xbmcgui.DialogProgress()
    dp.create("Eigen Build - www.kodi-forum.nl","Downloaden",'', 'Even Geduld A.U.B.')
    lib=os.path.join(path, name+'.zip')
    try:
       os.remove(lib)
    except:
       pass
    downloader.download(url, lib, dp)
    addonfolder = xbmc.translatePath(os.path.join('special://','home'))
    time.sleep(2)
    dp.update(0,"", "Uitpakken")
    print '======================================='
    print addonfolder
    print '======================================='
    extract.all(lib,addonfolder,dp)
    dialog = xbmcgui.Dialog()
    dialog.ok("DOWNLOAD COMPLEET www.kodi-forum.nl", 'Je moet Kodi nu geforceerd sluiten. Klik nu op OK om Kodi nu te sluiten,', 'Sluit Kodi [COLOR=red][B]NIET[/COLOR][/B] in Kodi zelf., Als het om 1 of andere reden niet lukt om kodi af te sluiten haal dan even de stekker uit je device.')
    killxbmc()
      
    
      
def killxbmc():
    choice = xbmcgui.Dialog().yesno('Kodi geforceerd afsluiten - www.kodi-forum.nl', 'Je staat nu op het punt om Kodi af te sluiten', 'Wil je verder gaan?', nolabel='[COLOR=red][B]NEE[/COLOR][/B]',yeslabel='[COLOR=green][B]JA[/COLOR][/B]')
    if choice == 0:
        return
    elif choice == 1:
        pass
    myplatform = platform()
    print "Platform: " + str(myplatform)
    if myplatform == 'osx': # OSX
        print "############   try osx force close  #################"
        try: os.system('killall -9 XBMC')
        except: pass
        try: os.system('killall -9 Kodi')
        except: pass
        dialog.ok("[COLOR=red][B]WAARSCHUWING  !!![/COLOR][/B]", "Als je deze waarschuwing ziet betekend het dat het geforceerd sluiten is mislukt. Sluit Kodi door de stekker uit je device te halen, [COLOR=lime]NIET[/COLOR] via Kodi zelf.",'')
    elif myplatform == 'linux': #Linux
        print "############   try linux force close  #################"
        try: os.system('killall XBMC')
        except: pass
        try: os.system('killall Kodi')
        except: pass
        try: os.system('killall -9 xbmc.bin')
        except: pass
        try: os.system('killall -9 kodi.bin')
        except: pass
        dialog.ok("[COLOR=red][B]WAARSCHUWING  !!![/COLOR][/B]", "Als je deze waarschuwing ziet betekend het dat het geforceerd sluiten is mislukt. Sluit Kodi door de stekker uit je device te halen, [COLOR=lime]NIET[/COLOR] via Kodi zelf.",'')
    elif myplatform == 'android': # Android 
        print "############   try android force close  #################"
        try: os.system('adb shell am force-stop org.xbmc.kodi')
        except: pass
        try: os.system('adb shell am force-stop org.kodi')
        except: pass
        try: os.system('adb shell am force-stop org.xbmc.xbmc')
        except: pass
        try: os.system('adb shell am force-stop org.xbmc')
        except: pass       
        dialog.ok("[COLOR=red][B]WAARSCHUWING  !!![/COLOR][/B]", "Je gebruikt nu een Android device, Je ", "[COLOR=yellow][B]MOET[/COLOR][/B] Kodi geforceerd sluiten. [COLOR=lime]NIET[/COLOR] via het Kodi menu.","Gebruik Taak Beheer of trek de stekker uit je device.")
    elif myplatform == 'windows': # Windows
        print "############   try windows force close  #################"
        try:
            os.system('@ECHO off')
            os.system('tskill XBMC.exe')
        except: pass
        try:
            os.system('@ECHO off')
            os.system('tskill Kodi.exe')
        except: pass
        try:
            os.system('@ECHO off')
            os.system('TASKKILL /im Kodi.exe /f')
        except: pass
        try:
            os.system('@ECHO off')
            os.system('TASKKILL /im XBMC.exe /f')
        except: pass
        dialog.ok("[COLOR=red][B]WAARSCHUWING  !!![/COLOR][/B]", "Als je deze waarschuwing ziet betekend het dat het geforceerd sluiten is mislukt. Sluit Kodi door de pc opnieuw te starten, [COLOR=lime]NIET[/COLOR] via Kodi zelf.")
    else: #ATV
        print "############   try atv force close  #################"
        try: os.system('killall AppleTV')
        except: pass
        print "############   try raspbmc force close  #################" #OSMC / Raspbmc
        try: os.system('sudo initctl stop kodi')
        except: pass
        try: os.system('sudo initctl stop xbmc')
        except: pass
        dialog.ok("[COLOR=red][B]WAARSCHUWING  !!![/COLOR][/B]", "Als je deze waarschuwing ziet betekend het dat het geforceerd sluiten is mislukt. Je ", "[COLOR=yellow][B]MOET[/COLOR][/B] Kodi geforceerd sluiten. [COLOR=lime]NIET[/COLOR] via het Kodi menu.","Android kan niet gevonden worden, Haal nu de stekker uit je device.")   
 
def platform():
    if xbmc.getCondVisibility('system.platform.android'):
        return 'android'
    elif xbmc.getCondVisibility('system.platform.linux'):
        return 'linux'
    elif xbmc.getCondVisibility('system.platform.windows'):
        return 'windows'
    elif xbmc.getCondVisibility('system.platform.osx'):
        return 'osx'
    elif xbmc.getCondVisibility('system.platform.atv2'):
        return 'atv2'
    elif xbmc.getCondVisibility('system.platform.ios'):
        return 'ios'
 
 
def addDir(name,url,mode,iconimage,fanart,description):
        u=sys.argv[0]+"?url="+urllib.quote_plus(url)+"&mode="+str(mode)+"&name="+urllib.quote_plus(name)+"&iconimage="+urllib.quote_plus(iconimage)+"&fanart="+urllib.quote_plus(fanart)+"&description="+urllib.quote_plus(description)
        ok=True
        liz=xbmcgui.ListItem(name, iconImage="DefaultFolder.png", thumbnailImage=iconimage)
        liz.setInfo( type="Video", infoLabels={ "Title": name, "Plot": description } )
        liz.setProperty( "Fanart_Image", fanart )
        ok=xbmcplugin.addDirectoryItem(handle=int(sys.argv[1]),url=u,listitem=liz,isFolder=False)
        return ok
      
      
      
def get_params():
        param=[]
        paramstring=sys.argv[2]
        if len(paramstring)>=2:
                params=sys.argv[2]
                cleanedparams=params.replace('?','')
                if (params[len(params)-1]=='/'):
                        params=params[0:len(params)-2]
                pairsofparams=cleanedparams.split('&')
                param={}
                for i in range(len(pairsofparams)):
                        splitparams={}
                        splitparams=pairsofparams[i].split('=')
                        if (len(splitparams))==2:
                                param[splitparams[0]]=splitparams[1]
                              
        return param
      
                    
params=get_params()
url=None
name=None
mode=None
iconimage=None
fanart=None
description=None
 
 
try:
        url=urllib.unquote_plus(params["url"])
except:
        pass
try:
        name=urllib.unquote_plus(params["name"])
except:
        pass
try:
        iconimage=urllib.unquote_plus(params["iconimage"])
except:
        pass
try:       
        mode=int(params["mode"])
except:
        pass
try:       
        fanart=urllib.unquote_plus(params["fanart"])
except:
        pass
try:       
        description=urllib.unquote_plus(params["description"])
except:
        pass
      
      
print str(PATH)+': '+str(VERSION)
print "Mode: "+str(mode)
print "URL: "+str(url)
print "Name: "+str(name)
print "IconImage: "+str(iconimage)
 
 
def setView(content, viewType):
    # set content type so library shows more views and info
    if content:
        xbmcplugin.setContent(int(sys.argv[1]), content)
    if ADDON.getSetting('auto-view')=='true':
        xbmc.executebuiltin("Container.SetViewMode(%s)" % ADDON.getSetting(viewType) )
      
      
if mode==None or url==None or len(url)<1:
        CATEGORIES()
      
elif mode==1:
        wizard(name,url,description)
      
 
      
xbmcplugin.endOfDirectory(int(sys.argv[1]))
 
verwijder ook even je map Thumbnails in je userdata map dat scheelt ook een hoop ruimte
en verwijder Textures13 in de map userdata-database anders gaat het niet werken
 
  • Like
Reacties: Andre19721972
Bloed....zweet....tranen :hamer:. Maar het is me gelukt en tevens ook nog de mappen verwijderd zoals spooks aangaf. Het default py bestand wat even terug is besproken bevatte een compleet andere build?? Weg ermee...Wil iedereen bedanken voor het meedenken :thanks:,en deze tutorial kan ik nu wel inmiddels dromen dus mag een slotje op:slotje::p:p." Problem solved"
 
Bloed....zweet....tranen :hamer:. Maar het is me gelukt en tevens ook nog de mappen verwijderd zoals spooks aangaf. Het default py bestand wat even terug is besproken bevatte een compleet andere build?? Weg ermee...Wil iedereen bedanken voor het meedenken :thanks:,en deze tutorial kan ik nu wel inmiddels dromen dus mag een slotje op:slotje::p:p." Problem solved"
Mooie kerel ben je ,nu de problemen bij jou zijn opgelost moet deze topic op slot ... en wat moeten die andere leden dan beginnen zonder de deskundige hulp van Spinix ? :p
Verzoek voor sluiting afgewezen ;)
 
Idd laat slotje maar achterwege,houd spinix van de straat:lol: . Enigste suggestie die ik nog heb in dit topic,de titel van dit topic zorgt misschien voor wat verwarring . Een build maken wordt hier niet toegelicht ben ik achter gekomen :koffie::koffie:
 
Laatst bewerkt:
  • Like
Reacties: Andre19721972
Idd laat slotje maar achterwege,houd spinix van de straat:lol: . Enigste suggestie die ik nog heb in dit topic,de titel van dit topic zorgt misschien voor wat verwarring . Een build maken wordt hier niet toegelicht ben ik achter gekomen :koffie::koffie:
Als je suggesties hebt voor een nieuwe topic titel dan laat maar horen .... dat passen wij die toch kosteloos aan :koffie: :koffie::koffie:
 
Ik kom er niet helemaal uit. Als ik de 5 mappen wil zippen, laat hij er al 2 weg vanwege dat ze leeg zijn. Hierboven lees ik dat dat opzich niet zo erg is. Alleen vervolgens staat er
  • Open het bestand "default.py" in je favoriete tekst editor. Ik heb voor gekozen. Bewerk in het bestand de Dropbox URL met je eigen URL die we een paar stappen terug gekopieerd hebben. LET OP: Vervang "?dl=0" naar "?dl=1". Wanneer je dit gedaan hebt kun je eventueel de naam en beschrijving aanpassen en kun je het bestand opslaan.
Alleen dit bestand zie ik nergens staan, ik heb 3 mappen addons/cache/userdata. Als ik vervolgens ga zoeken op het bestand krijg ik de volgende mappen te zien, alleen ik kom nergens enige info tegen over mijn build naam.

You must be registered for see images