From ccfacceba742e47ed82848f147ff1b6d05a83b67 Mon Sep 17 00:00:00 2001 From: Gustavo Date: Mon, 15 Feb 2016 16:14:35 -0200 Subject: [PATCH] deleted: evtest deleted: moonlight.sh new file: script.moonlight/LICENSE.txt new file: script.moonlight/addon.py new file: script.moonlight/addon.xml renamed: mappings/default.conf -> script.moonlight/bin/mappings/default.conf renamed: mappings/dualshock3.conf -> script.moonlight/bin/mappings/dualshock3.conf renamed: mappings/dualshock4.conf -> script.moonlight/bin/mappings/dualshock4.conf renamed: mappings/rumblepad2.conf -> script.moonlight/bin/mappings/rumblepad2.conf renamed: mappings/xbox360.conf -> script.moonlight/bin/mappings/xbox360.conf renamed: bin/moonlight -> script.moonlight/bin/moonlight new file: script.moonlight/bin/service.sh new file: script.moonlight/changelog.txt new file: script.moonlight/icon.png renamed: libs/libevdev.so.2.1.12 -> script.moonlight/libs/libevdev.so.2.1.12 renamed: libs/libgamestream.so.0 -> script.moonlight/libs/libgamestream.so.0 renamed: libs/libmoonlight-common.so.0 -> script.moonlight/libs/libmoonlight-common.so.0 renamed: libs/libmoonlight-pi.so -> script.moonlight/libs/libmoonlight-pi.so renamed: libs/libopus.so.0 -> script.moonlight/libs/libopus.so.0 new file: script.moonlight/resources/settings.xml new file: script.moonlight/service.py new file: script.moonlight/settings-default.xml new file: script.moonlight/system.d/script.moonlight.service --- evtest | Bin 26116 -> 0 bytes moonlight.sh | 13 - script.moonlight/LICENSE.txt | 339 ++++++++++++++++++ script.moonlight/addon.py | 5 + script.moonlight/addon.xml | 19 + .../bin/mappings}/default.conf | 0 .../bin/mappings}/dualshock3.conf | 0 .../bin/mappings}/dualshock4.conf | 0 .../bin/mappings}/rumblepad2.conf | 0 .../bin/mappings}/xbox360.conf | 0 {bin => script.moonlight/bin}/moonlight | Bin script.moonlight/bin/service.sh | 79 ++++ script.moonlight/changelog.txt | 1 + script.moonlight/icon.png | Bin 0 -> 30157 bytes .../libs}/libevdev.so.2.1.12 | Bin .../libs}/libgamestream.so.0 | Bin .../libs}/libmoonlight-common.so.0 | Bin .../libs}/libmoonlight-pi.so | Bin {libs => script.moonlight/libs}/libopus.so.0 | Bin script.moonlight/resources/settings.xml | 14 + script.moonlight/service.py | 1 + script.moonlight/settings-default.xml | 13 + .../system.d/script.moonlight.service | 14 + 23 files changed, 485 insertions(+), 13 deletions(-) delete mode 100755 evtest delete mode 100755 moonlight.sh create mode 100644 script.moonlight/LICENSE.txt create mode 100644 script.moonlight/addon.py create mode 100644 script.moonlight/addon.xml rename {mappings => script.moonlight/bin/mappings}/default.conf (100%) rename {mappings => script.moonlight/bin/mappings}/dualshock3.conf (100%) rename {mappings => script.moonlight/bin/mappings}/dualshock4.conf (100%) rename {mappings => script.moonlight/bin/mappings}/rumblepad2.conf (100%) rename {mappings => script.moonlight/bin/mappings}/xbox360.conf (100%) rename {bin => script.moonlight/bin}/moonlight (100%) mode change 100755 => 100644 create mode 100644 script.moonlight/bin/service.sh create mode 100644 script.moonlight/changelog.txt create mode 100644 script.moonlight/icon.png rename {libs => script.moonlight/libs}/libevdev.so.2.1.12 (100%) rename {libs => script.moonlight/libs}/libgamestream.so.0 (100%) rename {libs => script.moonlight/libs}/libmoonlight-common.so.0 (100%) rename {libs => script.moonlight/libs}/libmoonlight-pi.so (100%) rename {libs => script.moonlight/libs}/libopus.so.0 (100%) create mode 100644 script.moonlight/resources/settings.xml create mode 100644 script.moonlight/service.py create mode 100644 script.moonlight/settings-default.xml create mode 100644 script.moonlight/system.d/script.moonlight.service diff --git a/evtest b/evtest deleted file mode 100755 index 275586a608f2bf700cd6b230322c40cbea9c490a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26116 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 diff --git a/moonlight.sh b/moonlight.sh deleted file mode 100755 index 06ba947..0000000 --- a/moonlight.sh +++ /dev/null @@ -1,13 +0,0 @@ -#! /bin/sh -cpath=`pwd` -export LD_LIBRARY_PATH=$cpath/libs:$LD_LIBRARY_PATH - -if pgrep "kodi.bin" > /dev/null -then - systemctl stop kodi -fi - -modprobe snd_bcm2835 -bin/moonlight $@ -rmmod snd_bcm2835 -systemctl start kodi diff --git a/script.moonlight/LICENSE.txt b/script.moonlight/LICENSE.txt new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/script.moonlight/LICENSE.txt @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/script.moonlight/addon.py b/script.moonlight/addon.py new file mode 100644 index 0000000..39c4fb3 --- /dev/null +++ b/script.moonlight/addon.py @@ -0,0 +1,5 @@ +import os + +with open('/storage/.kodi/addons/script.moonlight/start_moonlight.tmp', 'w') as f: + f.write("open moonlight") + diff --git a/script.moonlight/addon.xml b/script.moonlight/addon.xml new file mode 100644 index 0000000..a9f7f1f --- /dev/null +++ b/script.moonlight/addon.xml @@ -0,0 +1,19 @@ + + + + + + + executable + + + + + all + Run moonlight + Run moonlight + GNU General Public License, v2 + + gustavobenn@hotmail.com + + \ No newline at end of file diff --git a/mappings/default.conf b/script.moonlight/bin/mappings/default.conf similarity index 100% rename from mappings/default.conf rename to script.moonlight/bin/mappings/default.conf diff --git a/mappings/dualshock3.conf b/script.moonlight/bin/mappings/dualshock3.conf similarity index 100% rename from mappings/dualshock3.conf rename to script.moonlight/bin/mappings/dualshock3.conf diff --git a/mappings/dualshock4.conf b/script.moonlight/bin/mappings/dualshock4.conf similarity index 100% rename from mappings/dualshock4.conf rename to script.moonlight/bin/mappings/dualshock4.conf diff --git a/mappings/rumblepad2.conf b/script.moonlight/bin/mappings/rumblepad2.conf similarity index 100% rename from mappings/rumblepad2.conf rename to script.moonlight/bin/mappings/rumblepad2.conf diff --git a/mappings/xbox360.conf b/script.moonlight/bin/mappings/xbox360.conf similarity index 100% rename from mappings/xbox360.conf rename to script.moonlight/bin/mappings/xbox360.conf diff --git a/bin/moonlight b/script.moonlight/bin/moonlight old mode 100755 new mode 100644 similarity index 100% rename from bin/moonlight rename to script.moonlight/bin/moonlight diff --git a/script.moonlight/bin/service.sh b/script.moonlight/bin/service.sh new file mode 100644 index 0000000..c9e6bd3 --- /dev/null +++ b/script.moonlight/bin/service.sh @@ -0,0 +1,79 @@ +#!/bin/sh + +. /etc/profile +oe_setup_addon script.moonlight + +export LD_LIBRARY_PATH=$ADDON_DIR/libs:$LD_LIBRARY_PATH + +chmod a+x $ADDON_DIR/bin/* + +MOONLIGHT_ARG="" + +if [ "$MOON_PACKETSIZE" != "0" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -packetsize $MOON_PACKETSIZE" +fi + +if [ "$MOON_BITRATE" != "0" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -bitrate $MOON_BITRATE" +fi + +if [ "$MOON_RESOLUTION" = "720p" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -720" +else + MOONLIGHT_ARG="$MOONLIGHT_ARG -1080" +fi + +if [ "$MOON_FRAMERATE" = "60" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -60fps" +else + MOONLIGHT_ARG="$MOONLIGHT_ARG -30fps" +fi + +if [ "$MOON_FORCEHW" = "true" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -forcehw" +fi + +if [ "$MOON_SURROUND" = "true" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -surround" +fi + +if [ "$MOON_LOCALAUDIO" = "true" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -localaudio" +fi + +if [ "$MOON_NOSOPS" = "true" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -nosops" +fi + +if [ "$MOON_REMOTE" = "true" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -remote" +fi + +if [ "$MOON_MAPPING" != "" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG -mapping $ADDON_DIR/bin/mappings/$MOON_MAPPING.conf" +fi + +if [ "$MOON_SERVER_IP" != "0.0.0.0" ]; then + MOONLIGHT_ARG="$MOONLIGHT_ARG $MOON_SERVER_IP" +fi + +while [ 1 ] +do + if [ -f $ADDON_DIR/start_moonlight.tmp ] + then + rm $ADDON_DIR/start_moonlight.tmp + + if pgrep "kodi.bin" > /dev/null + then + systemctl stop kodi + fi + + modprobe snd_bcm2835 + echo $MOONLIGHT_ARG >> $ADDON_LOG_FILE + $ADDON_DIR/bin/moonlight $MOONLIGHT_ARG stream >> $ADDON_LOG_FILE 2>&1 + rmmod snd_bcm2835 + systemctl start kodi + fi + + sleep 1 +done diff --git a/script.moonlight/changelog.txt b/script.moonlight/changelog.txt new file mode 100644 index 0000000..3c75b86 --- /dev/null +++ b/script.moonlight/changelog.txt @@ -0,0 +1 @@ +1.0.0 Initial Release \ No newline at end of file diff --git a/script.moonlight/icon.png b/script.moonlight/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b950eb28287904795f3d14c9329a90e2fab18dcd GIT binary patch literal 30157 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 cmZSg#b99 + + + + + + + + + + + + + \ No newline at end of file diff --git a/script.moonlight/service.py b/script.moonlight/service.py new file mode 100644 index 0000000..792d600 --- /dev/null +++ b/script.moonlight/service.py @@ -0,0 +1 @@ +# diff --git a/script.moonlight/settings-default.xml b/script.moonlight/settings-default.xml new file mode 100644 index 0000000..8b12244 --- /dev/null +++ b/script.moonlight/settings-default.xml @@ -0,0 +1,13 @@ + + + + + + + + + + + + + \ No newline at end of file diff --git a/script.moonlight/system.d/script.moonlight.service b/script.moonlight/system.d/script.moonlight.service new file mode 100644 index 0000000..432d6cd --- /dev/null +++ b/script.moonlight/system.d/script.moonlight.service @@ -0,0 +1,14 @@ +[Unit] +Description=Moonlight Client +After=graphical.target + +[Service] +Type=idle +ExecStart=/bin/sh -c "exec sh /storage/.kodi/addons/script.moonlight/bin/service.sh" +TimeoutStopSec=1 +Restart=always +RestartSec=2 +StartLimitInterval=0 + +[Install] +WantedBy=kodi.target \ No newline at end of file