From a3d55405ddf1c4bb29982729283ba0fc869da24c Mon Sep 17 00:00:00 2001 From: s-martin Date: Wed, 15 Jan 2020 22:44:35 +0100 Subject: [PATCH 01/24] Create pythonpackage.yml --- .github/workflows/pythonpackage.yml | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/pythonpackage.yml diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml new file mode 100644 index 000000000..6d747f385 --- /dev/null +++ b/.github/workflows/pythonpackage.yml @@ -0,0 +1,34 @@ +name: Python package + +on: [push] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + max-parallel: 4 + matrix: + python-version: [3.5, 3.6, 3.7] + + steps: + - uses: actions/checkout@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + - name: Lint with flake8 + run: | + pip install flake8 + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + #- name: Test with pytest + # run: | + # pip install pytest + # pytest From c29cc4ec0a3fe54e1f42eca5396b6a6556ab8369 Mon Sep 17 00:00:00 2001 From: s-martin Date: Sun, 26 Jan 2020 12:31:05 +0100 Subject: [PATCH 02/24] make RFID Reader service working again, see also #747 --- .../phoniebox-rfid-reader.service.stretch-default.sample | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample index 8551b25dc..baa5ea5cd 100755 --- a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py +ExecStart=/usr/bin/python2 /home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py [Install] WantedBy=multi-user.target \ No newline at end of file From 327011c1f65cdf1ad182f6e4c18f9e99bbb05d0a Mon Sep 17 00:00:00 2001 From: s-martin Date: Wed, 15 Jan 2020 22:44:35 +0100 Subject: [PATCH 03/24] Create pythonpackage.yml --- .github/workflows/pythonpackage.yml | 34 +++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/pythonpackage.yml diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml new file mode 100644 index 000000000..6d747f385 --- /dev/null +++ b/.github/workflows/pythonpackage.yml @@ -0,0 +1,34 @@ +name: Python package + +on: [push] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + max-parallel: 4 + matrix: + python-version: [3.5, 3.6, 3.7] + + steps: + - uses: actions/checkout@v1 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v1 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt + - name: Lint with flake8 + run: | + pip install flake8 + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + #- name: Test with pytest + # run: | + # pip install pytest + # pytest From e6d90c8e65c5b34a8873677c402447d67579fbea Mon Sep 17 00:00:00 2001 From: s-martin Date: Sun, 26 Jan 2020 12:31:05 +0100 Subject: [PATCH 04/24] make RFID Reader service working again, see also #747 --- .../phoniebox-rfid-reader.service.stretch-default.sample | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample index 6d44c53b1..531660da5 100755 --- a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=python2.7 /home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py +ExecStart=/usr/bin/python2 /home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py [Install] WantedBy=multi-user.target From 7dbbcfcb4cea56dbeb153e550f275634685009b8 Mon Sep 17 00:00:00 2001 From: s-martin Date: Sat, 1 Feb 2020 00:01:23 +0100 Subject: [PATCH 05/24] bugfix. flake8 checks should also run through then. --- scripts/python-phoniebox/PhonieboxConfigChanger.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/python-phoniebox/PhonieboxConfigChanger.py b/scripts/python-phoniebox/PhonieboxConfigChanger.py index bcccd09c6..98feefb52 100755 --- a/scripts/python-phoniebox/PhonieboxConfigChanger.py +++ b/scripts/python-phoniebox/PhonieboxConfigChanger.py @@ -63,7 +63,7 @@ def set(self,section,key,value): config_file = self.config.get("phoniebox","card_assignments_file") except ValueError: parser = self.config - config_file = configFilePath + config_file = self.configFilePath # update value try: parser.set(section,key,value) From 0455d54b13fc3fa7a738c085e7e17ceee375dc79 Mon Sep 17 00:00:00 2001 From: s-martin Date: Sat, 1 Feb 2020 00:27:36 +0100 Subject: [PATCH 06/24] hotfix: installer scripts should always checkout master --- scripts/installscripts/buster-install-default.sh | 4 ++-- scripts/installscripts/stretch-install-default.sh | 3 ++- scripts/installscripts/stretch-install-spotify.sh | 3 ++- 3 files changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index 8206aaf02..e52ca0906 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -511,8 +511,8 @@ cd /home/pi/ # Must be changed to the correct branch!!! # Change to master when merging develop with master!!! -git clone https://github.com/MiczFlor/RPi-Jukebox-RFID.git -#--branch develop +# this needs to be replaced on develop +git clone --branch master https://github.com/MiczFlor/RPi-Jukebox-RFID.git cd /home/pi/RPi-Jukebox-RFID/misc/sampleconfigs/ # The following lines are just for development. diff --git a/scripts/installscripts/stretch-install-default.sh b/scripts/installscripts/stretch-install-default.sh index e84697cc8..3f6ece9b8 100755 --- a/scripts/installscripts/stretch-install-default.sh +++ b/scripts/installscripts/stretch-install-default.sh @@ -391,7 +391,8 @@ sudo apt-get --yes --force-yes install apt-transport-https samba samba-common-bi # Get github code cd /home/pi/ -git clone https://github.com/MiczFlor/RPi-Jukebox-RFID.git +# this needs to be replaced on develop +git clone --branch master https://github.com/MiczFlor/RPi-Jukebox-RFID.git # the following three lines are needed as long as this is not the master branch: cd RPi-Jukebox-RFID git fetch diff --git a/scripts/installscripts/stretch-install-spotify.sh b/scripts/installscripts/stretch-install-spotify.sh index 35a1a744b..99eb31667 100755 --- a/scripts/installscripts/stretch-install-spotify.sh +++ b/scripts/installscripts/stretch-install-spotify.sh @@ -486,7 +486,8 @@ fi # Get github code cd /home/pi/ -git clone https://github.com/MiczFlor/RPi-Jukebox-RFID.git +# this needs to be replaced on develop +git clone --branch master https://github.com/MiczFlor/RPi-Jukebox-RFID.git # the following three lines are needed as long as this is not the master branch: cd RPi-Jukebox-RFID git fetch From bba7357dc6f90d519f51770acb94374c1642c737 Mon Sep 17 00:00:00 2001 From: Micz Flor Date: Wed, 12 Feb 2020 13:33:27 +0100 Subject: [PATCH 07/24] mqtt service restart fix #779 --- .../phoniebox-mqtt-client.service.stretch-default.sample | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample index 00b9c1c62..ecd653776 100644 --- a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample @@ -6,8 +6,9 @@ After=network.target iptables.service firewalld.service User=pi Group=pi Restart=always +RestartSec=10 WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon_mqtt_client.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon-mqtt-client.py [Install] WantedBy=multi-user.target From bb404d4bafa12b03198436916bf71d83b1e5aa11 Mon Sep 17 00:00:00 2001 From: s-martin Date: Wed, 12 Feb 2020 21:14:31 +0100 Subject: [PATCH 08/24] Use mopidy 2.2 also on master Use fix from #771 also on master. Supposed to fix issue #783 --- scripts/installscripts/buster-install-default.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index e52ca0906..e8e9e1fb4 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -485,8 +485,8 @@ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 1 # Install required spotify packages if [ $SPOTinstall == "YES" ] then - sudo apt-get install --yes mopidy=2.3.1-1 - sudo python2.7 -m pip install Mopidy==2.3.* + sudo apt-get install --yes mopidy=2.2.2-1 + sudo python2.7 -m pip install Mopidy==2.2.* sudo apt-get --yes --allow-downgrades --allow-remove-essential --allow-change-held-packages install libspotify12 python-cffi python-ply python-pycparser python-spotify sudo rm -rf /usr/lib/python2.7/dist-packages/mopidy_spotify* From bc6386036ba3b831589983ea50958101b97b6dde Mon Sep 17 00:00:00 2001 From: s-martin Date: Tue, 18 Feb 2020 20:22:24 +0100 Subject: [PATCH 09/24] Update buster-install-default.sh --- scripts/installscripts/buster-install-default.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index e8e9e1fb4..37d6673e3 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -503,7 +503,7 @@ then sudo python2.7 -m pip install pylast==2.4.0 # not sure tornado still needs to be downgraded now that Mopidy 3 is not installed and tornado seems to be 5.1 sudo python2.7 -m pip install 'tornado==5.0' - sudo python2.7 -m pip install Mopidy-Iris + sudo python2.7 -m pip install Mopidy-Iris=3.43.0 fi # Get github code From df037f82b56b6f99bc156e8e125fe4aefd444af4 Mon Sep 17 00:00:00 2001 From: s-martin Date: Tue, 18 Feb 2020 20:46:18 +0100 Subject: [PATCH 10/24] add missing equal sign --- scripts/installscripts/buster-install-default.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index 37d6673e3..f11f1d53e 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -503,7 +503,7 @@ then sudo python2.7 -m pip install pylast==2.4.0 # not sure tornado still needs to be downgraded now that Mopidy 3 is not installed and tornado seems to be 5.1 sudo python2.7 -m pip install 'tornado==5.0' - sudo python2.7 -m pip install Mopidy-Iris=3.43.0 + sudo python2.7 -m pip install Mopidy-Iris==3.43.0 fi # Get github code From 4a9ee0326b63a5ef4d2289683a726890aac0b037 Mon Sep 17 00:00:00 2001 From: s-martin Date: Tue, 18 Feb 2020 20:51:04 +0100 Subject: [PATCH 11/24] port changes also to stretch --- scripts/installscripts/stretch-install-spotify.sh | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/scripts/installscripts/stretch-install-spotify.sh b/scripts/installscripts/stretch-install-spotify.sh index 99eb31667..228185f3a 100755 --- a/scripts/installscripts/stretch-install-spotify.sh +++ b/scripts/installscripts/stretch-install-spotify.sh @@ -468,7 +468,10 @@ then wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key add - sudo wget -q -O /etc/apt/sources.list.d/mopidy.list https://apt.mopidy.com/stretch.list sudo apt-get update - sudo apt-get --yes --force-yes install mopidy + + sudo apt-get install --yes mopidy=2.2.2-1 + sudo python2.7 -m pip install Mopidy==2.2.* + sudo apt-get --yes --force-yes install libspotify12 python-cffi python-ply python-pycparser python-spotify sudo rm -rf /usr/lib/python2.7/dist-packages/mopidy_spotify* sudo rm -rf /usr/lib/python2.7/dist-packages/Mopidy_Spotify-* @@ -481,7 +484,9 @@ then # should be removed, if Mopidy-Iris can be installed normally # pylast >= 3.0.0 removed the python2 support sudo pip install pylast==2.4.0 - sudo pip install Mopidy-Iris + # not sure tornado still needs to be downgraded now that Mopidy 3 is not installed and tornado seems to be 5.1 + sudo python2.7 -m pip install 'tornado==5.0' + sudo python2.7 -m pip install Mopidy-Iris==3.43.0 fi # Get github code From a6855cf6005b7d5d5ff4d57c95cf4f01d15431e8 Mon Sep 17 00:00:00 2001 From: s-martin Date: Thu, 20 Feb 2020 09:10:01 +0100 Subject: [PATCH 12/24] Make master py3 compatible (#1) * Make master py3 compatible * Use py3 * Make py3 compatible * Make py3 compatible * Make py3 compatible * Make py3 compatible * Make py3 compatible * Make py3 compatible * Make py3 compatible * Make py3 compatible * Make py3 compatible --- scripts/MFRC522.py | 20 +++++++++---------- scripts/daemon_rfid_reader.py | 6 +++--- scripts/python-phoniebox/Phoniebox.py | 4 ++-- .../PhonieboxConfigChanger.py | 9 ++++++--- scripts/python-phoniebox/Reader.py | 6 +++--- 5 files changed, 24 insertions(+), 21 deletions(-) diff --git a/scripts/MFRC522.py b/scripts/MFRC522.py index 6f157c209..40c32b8b9 100755 --- a/scripts/MFRC522.py +++ b/scripts/MFRC522.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 # -*- coding: utf8 -*- import RPi.GPIO as GPIO @@ -287,7 +287,7 @@ def MFRC522_SelectTag(self, serNum): (status, backData, backLen) = self.MFRC522_ToCard(self.PCD_TRANSCEIVE, buf) if (status == self.MI_OK) and (backLen == 0x18): - print "Size: " + str(backData[0]) + print("Size: ", str(backData[0])) return backData[0] else: return 0 @@ -318,9 +318,9 @@ def MFRC522_Auth(self, authMode, BlockAddr, Sectorkey, serNum): # Check if an error occurred if not(status == self.MI_OK): - print "AUTH ERROR!!" + print("AUTH ERROR!!") if not (self.Read_MFRC522(self.Status2Reg) & 0x08) != 0: - print "AUTH ERROR(status2reg & 0x08) != 0" + print("AUTH ERROR(status2reg & 0x08) != 0") # Return the status return status @@ -337,10 +337,10 @@ def MFRC522_Read(self, blockAddr): recvData.append(pOut[1]) (status, backData, backLen) = self.MFRC522_ToCard(self.PCD_TRANSCEIVE, recvData) if not(status == self.MI_OK): - print "Error while reading!" + print("Error while reading!") i = 0 if len(backData) == 16: - print "Sector "+str(blockAddr)+" "+str(backData) + print("Sector ", str(blockAddr), " ", str(backData)) def MFRC522_Write(self, blockAddr, writeData): buff = [] @@ -353,7 +353,7 @@ def MFRC522_Write(self, blockAddr, writeData): if not(status == self.MI_OK) or not(backLen == 4) or not((backData[0] & 0x0F) == 0x0A): status = self.MI_ERR - print str(backLen)+" backdata &0x0F == 0x0A "+str(backData[0]&0x0F) + print(str(backLen), " backdata &0x0F == 0x0A ", str(backData[0]&0x0F)) if status == self.MI_OK: i = 0 buf = [] @@ -365,9 +365,9 @@ def MFRC522_Write(self, blockAddr, writeData): buf.append(crc[1]) (status, backData, backLen) = self.MFRC522_ToCard(self.PCD_TRANSCEIVE,buf) if not(status == self.MI_OK) or not(backLen == 4) or not((backData[0] & 0x0F) == 0x0A): - print "Error while writing" + print ("Error while writing") if status == self.MI_OK: - print "Data written" + print("Data written") def MFRC522_DumpClassic1K(self, key, uid): i = 0 @@ -377,7 +377,7 @@ def MFRC522_DumpClassic1K(self, key, uid): if status == self.MI_OK: self.MFRC522_Read(i) else: - print "Authentication error" + print("Authentication error") i = i+1 def MFRC522_Init(self): diff --git a/scripts/daemon_rfid_reader.py b/scripts/daemon_rfid_reader.py index 5580205c8..b8f62749e 100755 --- a/scripts/daemon_rfid_reader.py +++ b/scripts/daemon_rfid_reader.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 import subprocess import os @@ -9,7 +9,7 @@ # get absolute path of this script dir_path = os.path.dirname(os.path.realpath(__file__)) -print dir_path +print(dir_path) while True: # reading the card id @@ -26,4 +26,4 @@ if cardid != None: subprocess.call([dir_path + '/rfid_trigger_play.sh --cardid=' + cardid], shell=True) except OSError as e: - print "Execution failed:" \ No newline at end of file + print("Execution failed:") diff --git a/scripts/python-phoniebox/Phoniebox.py b/scripts/python-phoniebox/Phoniebox.py index 236479580..df77587a8 100755 --- a/scripts/python-phoniebox/Phoniebox.py +++ b/scripts/python-phoniebox/Phoniebox.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # -*- coding: utf-8 -*- __name__ = "Phoniebox" @@ -145,7 +145,7 @@ def do_restart_playlist(self): self.set_mpd_playmode(self.lastplayedID) self.play_mpd(self.get_cardsetting(self.lastplayedID,"uri")) - def do_restart_track(): + def do_restart_track(self): """ restart currently playing track """ self.mpd_connect_timeout() mpd_status = self.client.status() diff --git a/scripts/python-phoniebox/PhonieboxConfigChanger.py b/scripts/python-phoniebox/PhonieboxConfigChanger.py index 98feefb52..3b0ec958e 100755 --- a/scripts/python-phoniebox/PhonieboxConfigChanger.py +++ b/scripts/python-phoniebox/PhonieboxConfigChanger.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # -*- coding: utf-8 -*- #import json @@ -69,7 +69,7 @@ def set(self,section,key,value): parser.set(section,key,value) self.debug("Set {} = {} in section {}".format(key,value,section)) except configparser.NoSectionError as e: - raise configparser.NoSectionError, e + raise configparser.NoSectionError(e) # write to file # with open(config_file, 'w') as f: # parser.write(f) @@ -91,7 +91,7 @@ def get(self,section,t="ini"): def print_usage(self): print("Usage: {} set ".format(sys.argv[0])) -if __name__ == "__main__": +def main(self): cmdlist = ["assigncard","removecard","set","get"] @@ -133,3 +133,6 @@ def print_usage(self): print("supported commands are {} and {}".format(", ".join(cmdlist[:-1]),cmdlist[-1])) except: self.print_usage() + +if __name__ == "__main__": + main() diff --git a/scripts/python-phoniebox/Reader.py b/scripts/python-phoniebox/Reader.py index 400ee638a..66806e936 100755 --- a/scripts/python-phoniebox/Reader.py +++ b/scripts/python-phoniebox/Reader.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # This alternative Reader.py script was meant to cover not only USB readers but more. # It can be used to replace Reader.py if you have readers such as # MFRC522 or RDM6300. @@ -57,13 +57,13 @@ def readCard(self): (error, tag_type) = self.device.request() if not error: - print "Card detected." + print("Card detected.") # Perform anti-collision detection to find card uid (error, uid) = self.device.anticoll() if not error: return ''.join((str(x) for x in uid)) - print "No Device ID found." + print("No Device ID found.") return None @staticmethod From fc372876490c13a689d86f0d710606e89269d7e8 Mon Sep 17 00:00:00 2001 From: s-martin Date: Thu, 20 Feb 2020 21:02:32 +0100 Subject: [PATCH 13/24] Search other file extensions with flake8 --- .github/workflows/pythonpackage.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml index 6d747f385..d271c2272 100644 --- a/.github/workflows/pythonpackage.yml +++ b/.github/workflows/pythonpackage.yml @@ -25,7 +25,7 @@ jobs: run: | pip install flake8 # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --filename=*.py,*.*.py # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics #- name: Test with pytest From 72d63cf188b618aaccfcdb711f1a1c4d44849a76 Mon Sep 17 00:00:00 2001 From: s-martin Date: Thu, 20 Feb 2020 21:07:41 +0100 Subject: [PATCH 14/24] Use other file extensions --- .github/workflows/pythonpackage.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/pythonpackage.yml b/.github/workflows/pythonpackage.yml index d271c2272..4b5bc16f2 100644 --- a/.github/workflows/pythonpackage.yml +++ b/.github/workflows/pythonpackage.yml @@ -25,9 +25,9 @@ jobs: run: | pip install flake8 # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --filename=*.py,*.*.py + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics --filename=*.py,*.py.* # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics --filename=*.py,*.py.* #- name: Test with pytest # run: | # pip install pytest From b2c60235b3e2cc7dae6f7610f0741a4081b8d9a6 Mon Sep 17 00:00:00 2001 From: s-martin Date: Thu, 20 Feb 2020 21:10:06 +0100 Subject: [PATCH 15/24] Make py3 compatible --- scripts/Reader.py.experimental | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/Reader.py.experimental b/scripts/Reader.py.experimental index bd4f43f0a..444ddf4d5 100755 --- a/scripts/Reader.py.experimental +++ b/scripts/Reader.py.experimental @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # This alternative Reader.py script was meant to cover not only USB readers but more. # It can be used to replace Reader.py if you have readers such as # MFRC522 or RDM6300. @@ -58,13 +58,13 @@ class Mfrc522Reader(object): (error, tag_type) = self.device.request() if not error: - print "Card detected." + print("Card detected.") # Perform anti-collision detection to find card uid (error, uid) = self.device.anticoll() if not error: return ''.join((str(x) for x in uid)) - print "No Device ID found." + print("No Device ID found.") return None @staticmethod From 1106cb0d2c8c9ce29d30bcbb28b8e1f9c1ffca0d Mon Sep 17 00:00:00 2001 From: s-martin Date: Fri, 21 Feb 2020 21:18:56 +0100 Subject: [PATCH 16/24] * force services to be used by python 3 * use always python 3 for RegisterDevice.py --- ...niebox-activate-amplifier.service.stretch-default.sample | 2 +- .../phoniebox-gpio-buttons.service.stretch-default.sample | 2 +- .../phoniebox-mqtt-client.service.stretch-default.sample | 2 +- .../phoniebox-rfid-reader.service.stretch-default.sample | 2 +- .../phoniebox-rotary-encoder.service.stretch-default.sample | 6 +++--- scripts/Reader.py | 2 +- scripts/Reader.py.kkmoonRFIDreader | 2 +- scripts/installscripts/buster-install-default.sh | 2 +- scripts/installscripts/stretch-install-default.sh | 2 +- scripts/installscripts/stretch-install-spotify.sh | 2 +- scripts/python-phoniebox/PhonieboxDaemon.py | 2 +- 11 files changed, 13 insertions(+), 13 deletions(-) diff --git a/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample index 1ed48979e..116acc99d 100755 --- a/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/activate-amplifier.py +ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/activate-amplifier.py [Install] WantedBy=multi-user.target diff --git a/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample index 180b77c68..fe43e8fab 100755 --- a/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/gpio-buttons.py +ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/gpio-buttons.py [Install] WantedBy=multi-user.target \ No newline at end of file diff --git a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample index ecd653776..9fd8c905c 100644 --- a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample @@ -8,7 +8,7 @@ Group=pi Restart=always RestartSec=10 WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon-mqtt-client.py +ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/daemon-mqtt-client.py [Install] WantedBy=multi-user.target diff --git a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample index 531660da5..4d959e50f 100755 --- a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/usr/bin/python2 /home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py +ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py [Install] WantedBy=multi-user.target diff --git a/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample index 4369ec504..71cedbd83 100644 --- a/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample @@ -2,12 +2,12 @@ Description=Phoniebox Rotary Encoder Service After=network.target iptables.service firewalld.service -[Service] -User=pi +[Service] +User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/rotary-encoder.py +ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/rotary-encoder.py [Install] WantedBy=multi-user.target diff --git a/scripts/Reader.py b/scripts/Reader.py index 0061ffa81..69533f5d1 100755 --- a/scripts/Reader.py +++ b/scripts/Reader.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # There are a variety of RFID readers out there, USB and non-USB variants. # This might create problems in recognizing the reader you are using. # We haven't found the silver bullet yet. If you can contribute to this diff --git a/scripts/Reader.py.kkmoonRFIDreader b/scripts/Reader.py.kkmoonRFIDreader index 26ce880c2..eeb417ab4 100755 --- a/scripts/Reader.py.kkmoonRFIDreader +++ b/scripts/Reader.py.kkmoonRFIDreader @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # This alternative Reader.py script was meant to fixes issues with # KKMOON RFID Reader which appears twice in the devices list as HID 413d:2107 # and this required to check "if" the device is a keyboard. diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index f11f1d53e..91186bd09 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -863,7 +863,7 @@ case "$response" in ;; *) cd /home/pi/RPi-Jukebox-RFID/scripts/ - python2 RegisterDevice.py + python3 RegisterDevice.py sudo chown pi:www-data /home/pi/RPi-Jukebox-RFID/scripts/deviceName.txt sudo chmod 644 /home/pi/RPi-Jukebox-RFID/scripts/deviceName.txt ;; diff --git a/scripts/installscripts/stretch-install-default.sh b/scripts/installscripts/stretch-install-default.sh index 3f6ece9b8..89d823625 100755 --- a/scripts/installscripts/stretch-install-default.sh +++ b/scripts/installscripts/stretch-install-default.sh @@ -692,7 +692,7 @@ case "$response" in ;; *) cd /home/pi/RPi-Jukebox-RFID/scripts/ - python2 RegisterDevice.py + python3 RegisterDevice.py sudo chown pi:www-data /home/pi/RPi-Jukebox-RFID/scripts/deviceName.txt sudo chmod 644 /home/pi/RPi-Jukebox-RFID/scripts/deviceName.txt ;; diff --git a/scripts/installscripts/stretch-install-spotify.sh b/scripts/installscripts/stretch-install-spotify.sh index 228185f3a..a6d125f03 100755 --- a/scripts/installscripts/stretch-install-spotify.sh +++ b/scripts/installscripts/stretch-install-spotify.sh @@ -818,7 +818,7 @@ case "$response" in ;; *) cd /home/pi/RPi-Jukebox-RFID/scripts/ - python2 RegisterDevice.py + python3 RegisterDevice.py sudo chown pi:www-data /home/pi/RPi-Jukebox-RFID/scripts/deviceName.txt sudo chmod 644 /home/pi/RPi-Jukebox-RFID/scripts/deviceName.txt ;; diff --git a/scripts/python-phoniebox/PhonieboxDaemon.py b/scripts/python-phoniebox/PhonieboxDaemon.py index 61839ee89..c0d0bc1ba 100755 --- a/scripts/python-phoniebox/PhonieboxDaemon.py +++ b/scripts/python-phoniebox/PhonieboxDaemon.py @@ -1,4 +1,4 @@ -#!/usr/bin/env python2 +#!/usr/bin/env python3 # -*- coding: utf-8 -*- #import threading From 8e706132eac8aefd5332f548fd7ec19413638727 Mon Sep 17 00:00:00 2001 From: s-martin Date: Fri, 6 Mar 2020 22:50:02 +0100 Subject: [PATCH 17/24] remove path to executable --- .../phoniebox-activate-amplifier.service.stretch-default.sample | 2 +- .../phoniebox-gpio-buttons.service.stretch-default.sample | 2 +- .../phoniebox-mqtt-client.service.stretch-default.sample | 2 +- .../phoniebox-rfid-reader.service.stretch-default.sample | 2 +- .../phoniebox-rotary-encoder.service.stretch-default.sample | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample index 116acc99d..1ed48979e 100755 --- a/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-activate-amplifier.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/activate-amplifier.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/activate-amplifier.py [Install] WantedBy=multi-user.target diff --git a/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample index fe43e8fab..180b77c68 100755 --- a/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-gpio-buttons.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/gpio-buttons.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/gpio-buttons.py [Install] WantedBy=multi-user.target \ No newline at end of file diff --git a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample index 9fd8c905c..ecd653776 100644 --- a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample @@ -8,7 +8,7 @@ Group=pi Restart=always RestartSec=10 WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/daemon-mqtt-client.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon-mqtt-client.py [Install] WantedBy=multi-user.target diff --git a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample index 4d959e50f..292494b94 100755 --- a/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-rfid-reader.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon_rfid_reader.py [Install] WantedBy=multi-user.target diff --git a/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample index 71cedbd83..7a94541e0 100644 --- a/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-rotary-encoder.service.stretch-default.sample @@ -7,7 +7,7 @@ User=pi Group=pi Restart=always WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/usr/bin/python3 /home/pi/RPi-Jukebox-RFID/scripts/rotary-encoder.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/rotary-encoder.py [Install] WantedBy=multi-user.target From 3fed7e747e89133b73c0af494fcf7daf2031cf8e Mon Sep 17 00:00:00 2001 From: s-martin Date: Sat, 7 Mar 2020 22:07:02 +0100 Subject: [PATCH 18/24] Fixed file name (#788) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit File name on ˋmasterˋ is still with underscores --- .../phoniebox-mqtt-client.service.stretch-default.sample | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample index ecd653776..ba64af405 100644 --- a/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample +++ b/misc/sampleconfigs/phoniebox-mqtt-client.service.stretch-default.sample @@ -8,7 +8,7 @@ Group=pi Restart=always RestartSec=10 WorkingDirectory=/home/pi/RPi-Jukebox-RFID -ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon-mqtt-client.py +ExecStart=/home/pi/RPi-Jukebox-RFID/scripts/daemon_mqtt_client.py [Install] WantedBy=multi-user.target From bbf962cbc935f37cebf2af061efdcc0f4b479d63 Mon Sep 17 00:00:00 2001 From: s-martin Date: Sun, 8 Mar 2020 09:51:02 +0100 Subject: [PATCH 19/24] Fix installation of py packages now for python 3 --- scripts/installscripts/buster-install-default.sh | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index 91186bd09..1f32a14eb 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -526,19 +526,19 @@ cd /home/pi/RPi-Jukebox-RFID/misc/sampleconfigs/ cd /home/pi/RPi-Jukebox-RFID # Install more required packages -sudo python2.7 -m pip install -r requirements.txt +sudo python3 -m pip install -r requirements.txt # actually, for the time being most of the requirements are run here. # the requirements.txt version seems to throw errors. Help if you can to fix this: -sudo python2.7 -m pip install "evdev == 0.7.0" -sudo python2.7 -m pip install --upgrade youtube_dl -sudo python2.7 -m pip install git+git://github.com/lthiery/SPI-Py.git#egg=spi-py -sudo python2.7 -m pip install pyserial +sudo python3 -m pip install "evdev == 0.7.0" +sudo python3 -m pip install --upgrade youtube_dl +sudo python3 -m pip install git+git://github.com/lthiery/SPI-Py.git#egg=spi-py +sudo python3 -m pip install pyserial # spidev is currently installed via apt-get #sudo pip install spidev -sudo python2.7 -m pip install RPi.GPIO -sudo python2.7 -m pip install pi-rc522 +sudo python3 -m pip install RPi.GPIO +sudo python3 -m pip install pi-rc522 # Switch of WiFi power management sudo iwconfig wlan0 power off From 81bc7cc6db15a54845ce6ecfbbaeb34225aa62ae Mon Sep 17 00:00:00 2001 From: s-martin Date: Sun, 8 Mar 2020 09:58:43 +0100 Subject: [PATCH 20/24] Separate installation of py2 and py3 packages --- scripts/installscripts/buster-install-default.sh | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/installscripts/buster-install-default.sh b/scripts/installscripts/buster-install-default.sh index 1f32a14eb..dc67f3aba 100755 --- a/scripts/installscripts/buster-install-default.sh +++ b/scripts/installscripts/buster-install-default.sh @@ -473,15 +473,17 @@ sudo wget -q -O /etc/apt/sources.list.d/mopidy.list https://apt.mopidy.com/buste sudo apt-get update sudo apt-get --yes upgrade -sudo apt-get install --yes libspotify-dev python3 git -sudo apt-get --yes --allow-downgrades --allow-remove-essential --allow-change-held-packages install apt-transport-https samba samba-common-bin gcc raspberrypi-kernel-headers lighttpd php7.3-common php7.3-cgi php7.3 php7.3-fpm at mpd mpc mpg123 ffmpeg python-mutagen python3-gpiozero resolvconf spi-tools python-spidev python3-spidev python-dev python3 +sudo apt-get install --yes libspotify-dev git +sudo apt-get --yes --allow-downgrades --allow-remove-essential --allow-change-held-packages install apt-transport-https samba samba-common-bin gcc raspberrypi-kernel-headers lighttpd php7.3-common php7.3-cgi php7.3 php7.3-fpm at mpd mpc mpg123 ffmpeg resolvconf spi-tools sudo apt-get --yes install git -sudo apt-get --yes install python-pip python3-pip + +# prepare python2 and python3 +sudo apt-get --yes --allow-downgrades --allow-remove-essential --allow-change-held-packages install python-dev python-pip python-mutagen python-gpiozero python-spidev +sudo apt-get --yes --allow-downgrades --allow-remove-essential --allow-change-held-packages install python3 python3-dev python3-pip python3-mutagen python3-gpiozero python3-spidev # use python3.7 as default sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.7 1 - # Install required spotify packages if [ $SPOTinstall == "YES" ] then From b6af69dcde78a35a67a6793d2bc4638c4be13591 Mon Sep 17 00:00:00 2001 From: Andreas Brett Date: Sun, 5 Apr 2020 19:30:54 +0200 Subject: [PATCH 21/24] delay shutdown if apt update/upgrade is running --- scripts/playout_controls.sh | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/scripts/playout_controls.sh b/scripts/playout_controls.sh index f33d13698..bcc5a2915 100755 --- a/scripts/playout_controls.sh +++ b/scripts/playout_controls.sh @@ -120,6 +120,21 @@ case $COMMAND in sleep 1 /usr/bin/mpg123 $PATHDATA/../shared/shutdownsound.mp3 sleep 3 + while : + do + apt=1 + sudo lsof /var/lib/apt/lists/lock > /dev/null + apt=$(($apt * $?)) + sudo lsof /var/lib/dpkg/lock > /dev/null + apt=$(($apt * $?)) + sudo lsof /var/cache/apt/archives/lock > /dev/null + apt=$(($apt * $?)) + if [ $apt -eq 0 ]; then + sleep 5 + else + break + fi + done sudo poweroff ;; shutdownsilent) @@ -128,6 +143,21 @@ case $COMMAND in #remove shuffle mode if active SHUFFLE_STATUS=$(echo -e status\\nclose | nc -w 1 localhost 6600 | grep -o -P '(?<=random: ).*') if [ "$SHUFFLE_STATUS" == 1 ] ; then mpc random off; fi + while : + do + apt=1 + sudo lsof /var/lib/apt/lists/lock > /dev/null + apt=$(($apt * $?)) + sudo lsof /var/lib/dpkg/lock > /dev/null + apt=$(($apt * $?)) + sudo lsof /var/cache/apt/archives/lock > /dev/null + apt=$(($apt * $?)) + if [ $apt -eq 0 ]; then + sleep 5 + else + break + fi + done sudo poweroff ;; shutdownafter) From 42226729eff8611a19da7fa6e1dc92fcfea0da54 Mon Sep 17 00:00:00 2001 From: Andreas Brett Date: Sun, 5 Apr 2020 19:35:49 +0200 Subject: [PATCH 22/24] Update playout_controls.sh --- scripts/playout_controls.sh | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/scripts/playout_controls.sh b/scripts/playout_controls.sh index bcc5a2915..5b07c005b 100755 --- a/scripts/playout_controls.sh +++ b/scripts/playout_controls.sh @@ -112,14 +112,6 @@ if [ "${DEBUG_playout_controls_sh}" == "TRUE" ]; then echo "VAR VALUE: $VALUE" > case $COMMAND in shutdown) - if [ "${DEBUG_playout_controls_sh}" == "TRUE" ]; then echo " shutdown" >> $PATHDATA/../logs/debug.log; fi - $PATHDATA/resume_play.sh -c=savepos && mpc clear - #remove shuffle mode if active - SHUFFLE_STATUS=$(echo -e status\\nclose | nc -w 1 localhost 6600 | grep -o -P '(?<=random: ).*') - if [ "$SHUFFLE_STATUS" == 1 ] ; then mpc random off; fi - sleep 1 - /usr/bin/mpg123 $PATHDATA/../shared/shutdownsound.mp3 - sleep 3 while : do apt=1 @@ -135,14 +127,17 @@ case $COMMAND in break fi done - sudo poweroff - ;; - shutdownsilent) - # doesn't play a shutdown sound + if [ "${DEBUG_playout_controls_sh}" == "TRUE" ]; then echo " shutdown" >> $PATHDATA/../logs/debug.log; fi $PATHDATA/resume_play.sh -c=savepos && mpc clear #remove shuffle mode if active SHUFFLE_STATUS=$(echo -e status\\nclose | nc -w 1 localhost 6600 | grep -o -P '(?<=random: ).*') if [ "$SHUFFLE_STATUS" == 1 ] ; then mpc random off; fi + sleep 1 + /usr/bin/mpg123 $PATHDATA/../shared/shutdownsound.mp3 + sleep 3 + sudo poweroff + ;; + shutdownsilent) while : do apt=1 @@ -158,6 +153,11 @@ case $COMMAND in break fi done + # doesn't play a shutdown sound + $PATHDATA/resume_play.sh -c=savepos && mpc clear + #remove shuffle mode if active + SHUFFLE_STATUS=$(echo -e status\\nclose | nc -w 1 localhost 6600 | grep -o -P '(?<=random: ).*') + if [ "$SHUFFLE_STATUS" == 1 ] ; then mpc random off; fi sudo poweroff ;; shutdownafter) From 266aca36f152e039a2f86298ee8d3d0cfb2ce594 Mon Sep 17 00:00:00 2001 From: Andreas Brett Date: Sun, 5 Apr 2020 19:36:55 +0200 Subject: [PATCH 23/24] Update playout_controls.sh --- scripts/playout_controls.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/playout_controls.sh b/scripts/playout_controls.sh index 5b07c005b..eb29713d0 100755 --- a/scripts/playout_controls.sh +++ b/scripts/playout_controls.sh @@ -127,14 +127,14 @@ case $COMMAND in break fi done - if [ "${DEBUG_playout_controls_sh}" == "TRUE" ]; then echo " shutdown" >> $PATHDATA/../logs/debug.log; fi + if [ "${DEBUG_playout_controls_sh}" == "TRUE" ]; then echo " shutdown" >> $PATHDATA/../logs/debug.log; fi $PATHDATA/resume_play.sh -c=savepos && mpc clear #remove shuffle mode if active SHUFFLE_STATUS=$(echo -e status\\nclose | nc -w 1 localhost 6600 | grep -o -P '(?<=random: ).*') if [ "$SHUFFLE_STATUS" == 1 ] ; then mpc random off; fi sleep 1 - /usr/bin/mpg123 $PATHDATA/../shared/shutdownsound.mp3 - sleep 3 + /usr/bin/mpg123 $PATHDATA/../shared/shutdownsound.mp3 + sleep 3 sudo poweroff ;; shutdownsilent) From ed888dae6cc8781ec0b1a1afa33b861d531d1cb6 Mon Sep 17 00:00:00 2001 From: s-martin Date: Sun, 24 May 2020 13:45:26 +0200 Subject: [PATCH 24/24] Updated 2.0 release date (today) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d64917aab..7f815d74d 100755 --- a/README.md +++ b/README.md @@ -14,7 +14,7 @@ A contactless jukebox for the Raspberry Pi, playing audio files, playlists, podc * **Gitter Community** we got ourselves a gitter community; chat us up at https://gitter.im/phoniebox -* **Phoniebox [2.0](https://github.com/MiczFlor/RPi-Jukebox-RFID/milestone/1?closed=1) released (2020-05-xx)** +* **Phoniebox [2.0](https://github.com/MiczFlor/RPi-Jukebox-RFID/milestone/1?closed=1) released (2020-05-24)** The 2.0 release was pushed through the doors with *countless additions and great oversight* from @s-martin and *substantial input* by @ZyanKLee together alongside many other contributors (some of which in alphabetical order): @andreasbrett @BerniPi @ctietze @danielhammer @fredg02 @Groovylein @MalteHST @patrickweigelt @Piehti @SimonChelkowski @veloxidSchweiz @xn--nding-jua and starring @splitti as *the great hotfix*. [List of all contributors](https://github.com/MiczFlor/RPi-Jukebox-RFID/graphs/contributors)