### setup ###
performance_mode:
for x ( /sys/devices/system/cpu/cpufreq/policy*/scaling_governor) { echo performance | sudo tee $x }
packages:
sudo aptitude install -y \
audacity \
coffeescript \
curl \
git \
libblas-dev \
libcairo2-dev \
libffi-dev \
libjpeg8-dev \
liblapack-dev \
libssl-dev \
libzmq3-dev \
mercurial \
nginx-core \
nginx-full \
normalize-audio \
python3-cairo-dev \
python3-dev \
python3-opencv \
python3-pygame \
python3-tk \
sox \
tix \
zlib1g-dev
gst_packages:
gir1.2-goocanvas-2.0 \
gir1.2-gst-plugins-base-1.0 \
gir1.2-gstreamer-1.0 \
gstreamer1.0-plugins-good \
gstreamer1.0-pulseaudio \
gstreamer1.0-tools \
libgirepository-1.0-1 \
libgirepository1.0-dev \
python3-gi \
python3-gst-1.0
pnpm:
sudo npm install -g pnpm@8.12.0
bin/node:
ln -sf `which nodejs` bin/node
pdm_local_install:
# drew has ~/bin in $PATH
pip install "pdm==2.12.4"
ln -s ../.local/bin/pdm ~/bin
js:
pnpm install --reporter append-only
py:
pdm sync
setup: packages gst_packages pnpm js py
deps: js py
push_github:
hg bookmark -r default main && hg push git+ssh://git@github.com/drewp/light9.git
pull_github:
hg pull git+ssh://git@github.com/drewp/light9.git
### show ###
qlc_artnet_dmx_proxy:
qlcplus --open cur/qlc.qxw
no_screen_blanking:
xset s off
xset -dpms
pulseaudio_loopback_device:
pactl load-module module-loopback
show_data_checkpoint:
hg add ${LIGHT9_SHOW}
hg com ${LIGHT9_SHOW} -m "checkpoint show data"
### pi setup ###
raspberry_pi_packages:
sudo apt-get install python3-picamera python3-dev python3-twisted python3-virtualenv
raspberry_pi_virtualenv:
mkdir -p env_pi
virtualenv -p /usr/bin/python3 --system-site-packages env_pi
env_pi/bin/pip install cyclone 'coloredlogs==6.0'
### arduino build ###
/usr/share/arduino/Arduino.mk:
sudo aptitude install arduino-mk
arduino_upload: /usr/share/arduino/Arduino.mk
cd rgbled
make upload
### testing ###
pytest:
pdm run pytest
pytest_watch:
pdm run pytest-watch
test_js:
pnpm exec vitest
profile_seq:
echo in lib, get https://github.com/uber/pyflame.git and https://github.com/brendangregg/FlameGraph.git
sudo lib/pyflame/src/pyflame -s 10 -p `pgrep -f effectsequencer` | perl -lpe 's,/home/drewp/projects-local/light9/,,g; s,env/local/lib/python2.7/site-packages/,,g;' | lib/FlameGraph/flamegraph.pl --width 2500 > /tmp/fl.svg
Status change: