diff --git a/README.md b/README.md index 80199a7..d72619e 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ Kodi is a media center and entertainment hub that brings all your digital media * Official app website: * Official admin documentation: * Upstream app code repository: -* YunoHost documentation for this app: +* YunoHost Store: * Report a bug: ## Developer info diff --git a/README_fr.md b/README_fr.md index 9641e6f..e2c5bd8 100644 --- a/README_fr.md +++ b/README_fr.md @@ -30,7 +30,7 @@ Kodi is a media center and entertainment hub that brings all your digital media * Site officiel de l’app : * Documentation officielle de l’admin : * Dépôt de code officiel de l’app : -* Documentation YunoHost pour cette app : +* YunoHost Store: * Signaler un bug : ## Informations pour les développeurs diff --git a/conf/nginx.conf b/conf/nginx.conf index d76ee1d..ccd4528 100644 --- a/conf/nginx.conf +++ b/conf/nginx.conf @@ -2,7 +2,7 @@ location __PATH__/ { proxy_pass http://127.0.0.1:__PORT__/; - proxy_set_header Host $http_host; + proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Scheme $scheme; proxy_set_header Upgrade $http_upgrade; diff --git a/conf/systemd.service b/conf/systemd.service index 69dd552..b07bb99 100644 --- a/conf/systemd.service +++ b/conf/systemd.service @@ -1,5 +1,5 @@ [Unit] -Description=Kodi Media Center +Description=Kodi: Media Center # if you don't need the MySQL DB backend, this should be sufficient After=systemd-user-sessions.service network.target sound.target @@ -13,6 +13,7 @@ Type=simple User=__APP__ Group=__APP__ #PAMName=login # you might want to try this one, did not work on all systems +Environment="LIBVA_DRIVER_NAME=nvidia" # FIXME : Hmmm this should only be needed for package check context I think ? ExecStart=/usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/bin/kodi -- :0 -nolisten tcp vt7 Restart=on-abort RestartSec=5 diff --git a/conf/xorg.conf b/conf/xorg.conf index 451ba68..11c0d8e 100644 --- a/conf/xorg.conf +++ b/conf/xorg.conf @@ -1,4 +1,4 @@ -# Taken from https://gist.github.com/divinity76/ce210b5dbcd9ea7d0585ac403caef577 +# Adapted from https://gist.github.com/divinity76/ce210b5dbcd9ea7d0585ac403caef577 Section "ServerFlags" Option "DontVTSwitch" "true" @@ -24,8 +24,6 @@ Section "Device" Identifier "dummy_videocard" Driver "dummy" Option "ConstantDPI" "true" - #VideoRam 4096000 - #VideoRam 256000 VideoRam 192000 EndSection @@ -39,89 +37,7 @@ Section "Monitor" #This can be used to get a specific DPI, but only for the default resolution: #DisplaySize 508 317 - #NOTE: the highest modes will not work without increasing the VideoRam - # for the dummy video card. - Modeline "32768x32768" 15226.50 32768 35800 39488 46208 32768 32771 32781 32953 - Modeline "32768x16384" 7516.25 32768 35544 39192 45616 16384 16387 16397 16478 - Modeline "16384x8192" 2101.93 16384 16416 24400 24432 8192 8390 8403 8602 - Modeline "8192x4096" 424.46 8192 8224 9832 9864 4096 4195 4202 4301 - Modeline "6400x2160" 160.51 6400 6432 7040 7072 2160 2212 2216 2269 - Modeline "5680x1440" 142.66 5680 5712 6248 6280 1440 1474 1478 1513 - Modeline "5496x1200" 199.13 5496 5528 6280 6312 1200 1228 1233 1261 - Modeline "5280x1080" 169.96 5280 5312 5952 5984 1080 1105 1110 1135 - Modeline "5280x1200" 191.40 5280 5312 6032 6064 1200 1228 1233 1261 - Modeline "5120x3200" 199.75 5120 5152 5904 5936 3200 3277 3283 3361 - Modeline "4800x1200" 64.42 4800 4832 5072 5104 1200 1229 1231 1261 - Modeline "4720x3840" 227.86 4720 4752 5616 5648 3840 3933 3940 4033 - Modeline "3840x2880" 133.43 3840 3872 4376 4408 2880 2950 2955 3025 - Modeline "3840x2560" 116.93 3840 3872 4312 4344 2560 2622 2627 2689 - Modeline "3840x2048" 91.45 3840 3872 4216 4248 2048 2097 2101 2151 - Modeline "3840x1200" 108.89 3840 3872 4280 4312 1200 1228 1232 1261 - Modeline "3840x1080" 100.38 3840 3848 4216 4592 1080 1081 1084 1093 - Modeline "3864x1050" 338.00 3864 4112 4520 5176 1050 1053 1063 1089 - Modeline "3600x1200" 106.06 3600 3632 3984 4368 1200 1201 1204 1214 - Modeline "3600x1080" 91.02 3600 3632 3976 4008 1080 1105 1109 1135 - Modeline "3520x1196" 99.53 3520 3552 3928 3960 1196 1224 1228 1256 - Modeline "3360x1050" 293.75 3360 3576 3928 4496 1050 1053 1063 1089 - Modeline "3288x1080" 39.76 3288 3320 3464 3496 1080 1106 1108 1135 - Modeline "3120x1050" 272.75 3120 3320 3648 4176 1050 1053 1063 1089 - Modeline "2728x1680" 148.02 2728 2760 3320 3352 1680 1719 1726 1765 - Modeline "2048x2048" 49.47 2048 2080 2264 2296 2048 2097 2101 2151 - Modeline "2048x1536" 80.06 2048 2104 2312 2576 1536 1537 1540 1554 - Modeline "2048x1152" 197.97 2048 2184 2408 2768 1152 1153 1156 1192 - Modeline "2560x1600" 47.12 2560 2592 2768 2800 1600 1639 1642 1681 - Modeline "2560x1440" 42.12 2560 2592 2752 2784 1440 1475 1478 1513 - Modeline "1920x1440" 69.47 1920 1960 2152 2384 1440 1441 1444 1457 - Modeline "1920x1200" 26.28 1920 1952 2048 2080 1200 1229 1231 1261 - Modeline "1920x1080" 23.53 1920 1952 2040 2072 1080 1106 1108 1135 - Modeline "1680x1050" 20.08 1680 1712 1784 1816 1050 1075 1077 1103 - Modeline "1600x1200" 22.04 1600 1632 1712 1744 1200 1229 1231 1261 - Modeline "1600x900" 33.92 1600 1632 1760 1792 900 921 924 946 - Modeline "1440x900" 30.66 1440 1472 1584 1616 900 921 924 946 - ModeLine "1366x768" 72.00 1366 1414 1446 1494 768 771 777 803 - Modeline "1280x1024" 31.50 1280 1312 1424 1456 1024 1048 1052 1076 - Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 - Modeline "1280x768" 23.11 1280 1312 1392 1424 768 786 789 807 - Modeline "1360x768" 24.49 1360 1392 1480 1512 768 786 789 807 - Modeline "1024x768" 18.71 1024 1056 1120 1152 768 786 789 807 - Modeline "768x1024" 19.50 768 800 872 904 1024 1048 1052 1076 - - - #common resolutions for android devices (both orientations): - Modeline "800x1280" 25.89 800 832 928 960 1280 1310 1315 1345 - Modeline "1280x800" 24.15 1280 1312 1400 1432 800 819 822 841 - Modeline "720x1280" 30.22 720 752 864 896 1280 1309 1315 1345 Modeline "1280x720" 27.41 1280 1312 1416 1448 720 737 740 757 - Modeline "768x1024" 24.93 768 800 888 920 1024 1047 1052 1076 - Modeline "1024x768" 23.77 1024 1056 1144 1176 768 785 789 807 - Modeline "600x1024" 19.90 600 632 704 736 1024 1047 1052 1076 - Modeline "1024x600" 18.26 1024 1056 1120 1152 600 614 617 631 - Modeline "536x960" 16.74 536 568 624 656 960 982 986 1009 - Modeline "960x536" 15.23 960 992 1048 1080 536 548 551 563 - Modeline "600x800" 15.17 600 632 688 720 800 818 822 841 - Modeline "800x600" 14.50 800 832 880 912 600 614 617 631 - Modeline "480x854" 13.34 480 512 560 592 854 873 877 897 - Modeline "848x480" 12.09 848 880 920 952 480 491 493 505 - Modeline "480x800" 12.43 480 512 552 584 800 818 822 841 - Modeline "800x480" 11.46 800 832 872 904 480 491 493 505 - #resolutions for android devices (both orientations) - #minus the status bar - #38px status bar (and width rounded up) - Modeline "800x1242" 25.03 800 832 920 952 1242 1271 1275 1305 - Modeline "1280x762" 22.93 1280 1312 1392 1424 762 780 783 801 - Modeline "720x1242" 29.20 720 752 856 888 1242 1271 1276 1305 - Modeline "1280x682" 25.85 1280 1312 1408 1440 682 698 701 717 - Modeline "768x986" 23.90 768 800 888 920 986 1009 1013 1036 - Modeline "1024x730" 22.50 1024 1056 1136 1168 730 747 750 767 - Modeline "600x986" 19.07 600 632 704 736 986 1009 1013 1036 - Modeline "1024x562" 17.03 1024 1056 1120 1152 562 575 578 591 - Modeline "536x922" 16.01 536 568 624 656 922 943 947 969 - Modeline "960x498" 14.09 960 992 1040 1072 498 509 511 523 - Modeline "600x762" 14.39 600 632 680 712 762 779 783 801 - Modeline "800x562" 13.52 800 832 880 912 562 575 578 591 - Modeline "480x810" 12.59 480 512 552 584 810 828 832 851 - Modeline "848x442" 11.09 848 880 920 952 442 452 454 465 - Modeline "480x762" 11.79 480 512 552 584 762 779 783 801 EndSection Section "Screen" @@ -132,12 +48,7 @@ Section "Screen" SubSection "Display" Viewport 0 0 Depth 24 - #Modes "32768x32768" "32768x16384" "16384x8192" "8192x4096" "5120x3200" "3840x2880" "3840x2560" "3840x2048" "2048x2048" "2560x1600" "1920x1440" "1920x1200" "1920x1080" "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" "1024x600" "800x600" "320x200" - Modes "5120x3200" "3840x2880" "3840x2560" "3840x2048" "2048x2048" "2560x1600" "1920x1440" "1920x1200" "1920x1080" "1600x1200" "1680x1050" "1600x900" "1400x1050" "1440x900" "1280x1024" "1366x768" "1280x800" "1024x768" "1024x600" "800x600" "320x200" - #Virtual 32000 32000 - #Virtual 16384 8192 - #Virtual 8192 4096 - #Virtual 5120 3200 + Modes "1280x720" Virtual 1024 768 EndSubSection EndSection diff --git a/manifest.json b/manifest.json index ab1f7bf..ffaeca2 100644 --- a/manifest.json +++ b/manifest.json @@ -12,7 +12,8 @@ "license": "GPL-2.0", "website": "https://kodi.tv", "admindoc": "https://kodi.wiki/view/Main_Page", - "code": "https://github.com/xbmc" + "code": "https://github.com/xbmc", + "cpe": "cpe:2.3:a:kodi:kodi" }, "license": "GPL-2.0", "maintainer": { @@ -21,14 +22,14 @@ "url": "blog.cecchettosylvain.fr" }, "requirements": { - "yunohost": ">= 4.3.0" + "yunohost": ">= 11.2" }, "multi_instance": false, "services": [ "nginx" ], "arguments": { - "install" : [ + "install": [ { "name": "domain", "type": "domain" diff --git a/scripts/_common.sh b/scripts/_common.sh index e5be016..15ac25c 100644 --- a/scripts/_common.sh +++ b/scripts/_common.sh @@ -5,9 +5,9 @@ #================================================= # dependencies used by the app -pkg_dependencies="xorg xinit dbus-x11 kodi" +pkg_dependencies="xorg xinit dbus-x11 kodi samba-common-bin" -arm_pkg_dependencies="xserver-xorg-legacy xorg dbus-x11 kodi" +arm_pkg_dependencies="xserver-xorg-legacy xorg dbus-x11 kodi samba-common-bin" package_check_dependencies="xserver-xorg-video-dummy" diff --git a/scripts/install b/scripts/install index 445936d..e74101c 100644 --- a/scripts/install +++ b/scripts/install @@ -85,6 +85,7 @@ ynh_setup_source --dest_dir="$tmpdir" --source_id="deb-multimedia-keyring" dpkg -i "$tmpdir/deb-multimedia-keyring.deb" if [ ${PACKAGE_CHECK_EXEC:-0} -eq 1 ]; then + #ynh_install_extra_app_dependencies --repo="deb http://deb.debian.org/debian $(ynh_get_debian_release) contrib non-free" --package="nvidia-vdpau-driver nvidia-installer-cleanup nvidia-legacy-check libvdpau1 nvidia-alternative" pkg_dependencies="$pkg_dependencies $package_check_dependencies" fi @@ -131,6 +132,14 @@ ynh_script_progression --message="Configuring Kodi..." mkdir -p "$final_path/.kodi/userdata/" ynh_add_config --template="../conf/advancedsettings.xml" --destination="$final_path/.kodi/userdata/advancedsettings.xml" +#FIXME : this is only for debugging on the CI ... +LIBVA_DRIVER_NAME=nvidia /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/lib/x86_64-linux-gnu/kodi/kodi-xrandr >&2 +echo "===========" >&2 +LIBVA_DRIVER_NAME=nvidia /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/lib/x86_64-linux-gnu/kodi/kodi-xrandr --output DUMMY0 --gamma 0:0:0 --mode 1024x768 --crtc 0 >&2 +echo "===========" >&2 +LIBVA_DRIVER_NAME=nvidia /usr/bin/xinit /usr/bin/dbus-launch --exit-with-session /usr/lib/x86_64-linux-gnu/kodi/kodi-xrandr >&2 +exit 1 + mkdir -p "$final_path/.kodi/addons/" if [[ $YNH_ARCH != arm* ]]; then ynh_setup_source --dest_dir="$final_path/.kodi/addons/" --source_id="arm-chorus2" @@ -160,7 +169,7 @@ ynh_script_progression --message="Securing files and directories..." chmod 750 "$final_path" chmod -R o-rwx "$final_path" chown -R $app:$app "$final_path" -usermod -a -G cdrom,audio,video,plugdev,users,dialout,dip,input,netdev "$app" +usermod -a -G cdrom,audio,video,plugdev,users,dialout,dip,input "$app" #================================================= # INTEGRATE SERVICE IN YUNOHOST @@ -182,11 +191,6 @@ ynh_systemd_action --service_name=$app --action="start" #================================================= ynh_script_progression --message="Configuring permissions..." -ynh_app_setting_set "$app" protected_uris "/" - -domainregex=$(echo "$domain" | sed 's/-/\%&/g') -ynh_app_setting_set "$app" skipped_regex "$domainregex/jsonrpc.*$,$domainregex/image.*$" - # Make app public if necessary if [ $is_public -eq 1 ] then