Compare commits
22 Commits
main
..
1e87df0b7a
| Author | SHA1 | Date | |
|---|---|---|---|
| 1e87df0b7a | |||
| 7d5d68e29c | |||
| 4cc057ea57 | |||
| 5bcbe7239b | |||
| 21b077f547 | |||
| 74da51284c | |||
| f5c729d368 | |||
| 5a7ca0f0e9 | |||
| bbf04d6397 | |||
| c2d0c8e27b | |||
| 5352c625f3 | |||
| 6f609ac43c | |||
| 3d028e30b3 | |||
| a091d161cb | |||
| 6e669608bf | |||
| d9de230b24 | |||
| b2ad9369ac | |||
| b20e2845b5 | |||
| c8bc300077 | |||
| 2059073f80 | |||
| 2e408e4109 | |||
| 9fda4dec6f |
@@ -2,70 +2,8 @@
|
|||||||
|
|
||||||
This script plays a fake dog bark through speakers to scare people away from your house.
|
This script plays a fake dog bark through speakers to scare people away from your house.
|
||||||
|
|
||||||
## Setup
|
|
||||||
|
|
||||||
Set up the Pi:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ sudo usermod -aG audio tanner
|
|
||||||
$ sudo apt update
|
|
||||||
$ sudo apt install python3 python3-pip python3-virtualenv libsdl2-mixer-2.0-0 supervisor
|
|
||||||
$ sudo bash -c 'echo 0 > /proc/sys/kernel/hung_task_timeout_secs'
|
|
||||||
```
|
|
||||||
|
|
||||||
Edit /etc/pulse/daemon.conf:
|
|
||||||
|
|
||||||
```text
|
|
||||||
default-fragments = 5
|
|
||||||
default-fragment-size-msec = 2
|
|
||||||
```
|
|
||||||
|
|
||||||
Install woof:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ git clone https://git.tannercollin.com/tanner/woof.git
|
|
||||||
$ cd woof/
|
|
||||||
$ virtualenv -p python3 env
|
|
||||||
$ . env/bin/activate
|
|
||||||
(env) $ pip install -r requirements.txt
|
|
||||||
```
|
|
||||||
|
|
||||||
Run manually to test it:
|
|
||||||
```
|
|
||||||
$ . env/bin/activate
|
|
||||||
(env) $ python main.py
|
|
||||||
```
|
|
||||||
|
|
||||||
Ignore "(snd_pcm_recover) underrun occurred" errors.
|
|
||||||
|
|
||||||
To start automatically, create `/etc/supervisor/conf.d/woof.conf`:
|
|
||||||
|
|
||||||
```
|
|
||||||
[program:woof]
|
|
||||||
user=tanner
|
|
||||||
directory=/home/tanner/woof
|
|
||||||
command=/home/tanner/woof/env/bin/python -u main.py
|
|
||||||
stopasgroup=true
|
|
||||||
stopsignal=INT
|
|
||||||
autostart=true
|
|
||||||
autorestart=true
|
|
||||||
stderr_logfile=/dev/null
|
|
||||||
#stderr_logfile_maxbytes=10MB
|
|
||||||
stdout_logfile=/var/log/woof.log
|
|
||||||
stdout_logfile_maxbytes=10MB
|
|
||||||
```
|
|
||||||
|
|
||||||
Apply changes:
|
|
||||||
|
|
||||||
```
|
|
||||||
$ sudo supervisorctl reread; sudo supervisorctl reload
|
|
||||||
$ sudo supervisorctl status
|
|
||||||
$ tail -f /var/log/woof.log
|
|
||||||
```
|
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
This program is free and open-source software licensed under the GNU Affero General Public License. Please see the `LICENSE` file for details.
|
This program is free and open-source software licensed under the GNU Affero General Public License. Please see the `LICENSE` file for details.
|
||||||
|
|
||||||
That means you have the right to study, change, and distribute the software and source code to anyone and for any purpose. You deserve these rights.
|
That means you have the right to study, change, and distribute the software and source code to anyone and for any purpose. You deserve these rights.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user