Quando da Gui vogliamo cancellare solo parti del db di Kodi è necessario utilizzare delle queries o creare degli scripts ad-hoc che ci aiutino nel compito, ecco qua alcune soluzioni.

RIMOZIONE MEDIA SOURCES

Script per rimozione Movies
Nota: una volta rimossi i media all'interno di kodi saranno resettati e quindi privi del tipo di contenuto (se si vogliono rimuoverli definitivamente cancellarli anche dal file locale dei sources - sources.xml dello userdata).

- kodi_rm_src_discmovie.sh

#!/bin/sh
cd /opt/scripts/
mysql -h localhost -u USERNAME -pPASSWORD MyVideosXXX < /opt/scripts/kodi_rm_src_discmovie.sql



- kodi_rm_src_discmovie.sql

DELETE FROM movie
WHERE c22 like '%/path/del/media/%'

SCRIPT RIMOZIONE TV SHOWS


- kodi_rm_src_disctvshow.sh

#!/bin/sh
cd /opt/scripts/
mysql -h localhost -u USERNAME -pPASSWORD MyVideosXXX < /opt/scripts/kodi_rm_src_disctvshow.sql



- kodi_rm_src_disctvshow.sql

DELETE episode , path  FROM episode INNER JOIN path  
WHERE episode.c18 like '%/path/del/media/ai/Tv shows/%' and strPath like '%/path/del/media/ai/Tv shows/%'

INSERIMENTO MEDIA SOURCES


sotto il profilo utente modificare il file .kodi/userdata/sources.xml aggiungendo i vari media:

....
        <source>
            <name>media1</name>
            <path pathversion="1">/path/del/media1/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>media2</name>
            <path pathversion="1">/path/del/media2/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>media1TV</name>
            <path pathversion="1">/path/del/media1/Tv shows/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>mediasmb</name>
            <path pathversion="1">smb:///path/del/mediasmb/Videos/</path>
            <allowsharing>true</allowsharing>
        </source>
        <source>
            <name>media3TV</name>
            <path pathversion="1">/path/del/media3/Tv shows/</path>
            <allowsharing>true</allowsharing>
        </source>
....


A questo punto o si settano manualmente i contenuti di ogni media o si lanciano degli insert sql tipo:

- per i movies:

INSERT INTO `MyVideosXXX`.`path` (
`idPath` ,
`strPath` ,
`strContent` ,
`strScraper` ,
`strHash` ,
`scanRecursive` ,
`useFolderNames` ,
`strSettings` ,<br />`noUpdate` ,<br />`exclude` ,<br />`dateAdded` ,<br />`idParentPath`<br />)<br />VALUES (<br />NULL , '/path/del/media/', 'movies', 'metadata.themoviedb.org', NULL , '0', '0', '<settings><setting id="RatingS" value="TMDb" /><setting id="certprefix" value="Rated " /><setting id="fanart" value="true" /><setting id="keeporiginaltitle" value="false" /><setting id="language" value="it" /><setting id="tmdbcertcountry" value="it" /><setting id="trailer" value="true" /></settings>', '0', '0', NULL , NULL
);


- per i tv shows:

INSERT INTO `MyVideosXXX`.`path` (
`idPath` ,
`strPath` ,
`strContent` ,
`strScraper` ,
`strHash` ,
`scanRecursive` ,
`useFolderNames` ,
`strSettings` ,
`noUpdate` ,
`exclude` ,
`dateAdded` ,
`idParentPath`
)
VALUES (
NULL , '/path/del/media', 'tvshows', 'metadata.tvdb.com', '', '0', '0', '<settings><setting id="RatingS" value="TheTVDB" /><setting id="absolutenumber" value="false" /><setting id="dvdorder" value="false" /><setting id="fallback" value="true" /><setting id="fanart" value="true" /><setting id="language" value="it" /></settings>', '0', '0', NULL , '130'
);


Ora non ci resta altro che inserire il media e cliccare su scan per aggiornare il db.