> index.html
mjpg_streamer test page
Snapshot
Refresh the page to refresh the snapshot
Stream
EOT
popd
popd
fi
### mjpg_streamer
unpack /filesystem/root /
if [ "$MJPGSTREAMER_INCLUDE_MJPGSTREAMER" == "yes" ]
then
systemctl_if_exists enable webcamd.service
else
rm /etc/logrotate.d/webcamd
rm /etc/systemd/system/webcamd.service
rm /root/bin/webcamd
fi
#cleanup
apt-get clean
apt-get autoremove -y
# link logfiles to klipper_logs
ln -s /var/log/webcamd.log /home/pi/klipper_logs/
# Run installation steps defined above
# Unpack root at the end, so files are modified before
unpack /filesystem/root /
================================================
FILE: src/modules/moonraker/config
================================================
[ -n "$MOONRAKER_SRC_DIR" ] || MOONRAKER_SRC_DIR=/home/pi/moonraker
[ -n "$MOONRAKER_PYTHON_DIR" ] || MOONRAKER_PYTHON_DIR=/home/pi/moonraker-env
[ -n "$MOONRAKER_REPO_SHIP" ] || MOONRAKER_REPO_SHIP=https://github.com/Arksine/moonraker.git
[ -n "$MOONRAKER_REPO_BRANCH" ] || MOONRAKER_REPO_BRANCH=master
================================================
FILE: src/modules/moonraker/filesystem/home/pi/klipper_config/moonraker.conf
================================================
[server]
host: 0.0.0.0
port: 7125
[file_manager]
# cancel object preprocessing - set to True to enable; leave disabled when running on a low-powered device (e.g. Pi Zero)
enable_object_processing: False
[data_store]
temperature_store_size: 600
gcode_store_size: 1000
[authorization]
force_logins: True
cors_domains:
*.local
*.lan
*://app.fluidd.xyz
trusted_clients:
10.0.0.0/8
127.0.0.0/8
169.254.0.0/16
172.16.0.0/12
192.168.0.0/16
FE80::/10
::1/128
# enables partial support of Octoprint API
[octoprint_compat]
# enables moonraker to track and store print history.
[history]
# this enables moonraker announcements for fluidd
[announcements]
subscriptions:
fluidd
# this enables moonraker's update manager
[update_manager]
enable_auto_refresh: True
# this enabled fluidd updates
[update_manager fluidd]
type: web
repo: fluidd-core/fluidd
path: ~/fluidd
================================================
FILE: src/modules/moonraker/filesystem/root/etc/logrotate.d/moonraker
================================================
/home/pi/klipper_logs/moonraker.log
{
rotate 7
daily
maxsize 64M
missingok
notifempty
compress
delaycompress
sharedscripts
}
================================================
FILE: src/modules/moonraker/filesystem/root/etc/systemd/system/moonraker.service
================================================
#Systemd service file for moonraker
[Unit]
Description=Starts Moonraker on startup
After=network.target
[Install]
WantedBy=multi-user.target
[Service]
Type=simple
User=pi
RemainAfterExit=yes
ExecStart=/home/pi/moonraker-env/bin/python /home/pi/moonraker/moonraker/moonraker.py -c /home/pi/klipper_config/moonraker.conf -l /home/pi/klipper_logs/moonraker.log
Restart=always
RestartSec=10
================================================
FILE: src/modules/moonraker/start_chroot_script
================================================
#!/usr/bin/env bash
# Moonraker install script
# Script that installs Moonraker API service
# Written by Raymond Himle and Stefan Dej
# Thanks to Arksine
# GPL V3
########
# Source error handling, leave this in place
set -x
set -e
source /common.sh
install_cleanup_trap
unpack /filesystem/home/pi /home/pi pi
unpack /filesystem/root /
echo "Installing Moonraker"
apt update
apt install wget git gpiod -y
# Packages for python and moonraker requirements
apt install python3-virtualenv python3-dev libopenjp2-7 python3-libgpiod curl libcurl4-openssl-dev libssl-dev liblmdb-dev libsodium-dev zlib1g-dev libjpeg-dev packagekit -y
# clone moonraker repo
cd /home/pi
gitclone MOONRAKER_REPO moonraker
# create python virtualenv and install moonraker python requirements
su -c "virtualenv -p /usr/bin/python3 ${MOONRAKER_PYTHON_DIR}" - pi
su -c "ln -s /usr/lib/python3/dist-packages/gpiod* ${MOONRAKER_PYTHON_DIR}/lib/python*/site-packages" - pi
su -c "${MOONRAKER_PYTHON_DIR}/bin/pip install -r ${MOONRAKER_SRC_DIR}/scripts/moonraker-requirements.txt" - pi
su -c "${MOONRAKER_SRC_DIR}/scripts/sudo_fix.sh" - pi
# enable systemd service
systemctl_if_exists enable moonraker.service
# Run installation steps defined above
================================================
FILE: src/modules/releaseinfochange/start_chroot_script
================================================
#!/usr/bin/env bash
set -xe
source /common.sh
install_cleanup_trap
apt update --allow-releaseinfo-change
apt full-upgrade --yes
================================================
FILE: src/vagrant/Vagrantfile
================================================
vagrant_root = File.dirname(__FILE__)
Vagrant.configure("2") do |o|
o.vm.box = "debian/buster64"
o.ssh.shell = "bash -c 'BASH_ENV=/etc/profile exec bash'"
o.vm.synced_folder File.read("../custompios_path").gsub("\n",""), "/CustomPiOS", create:true, type: "nfs"
o.vm.synced_folder "../", "/distro", create:true, type: "nfs"
o.vm.network :private_network, ip: "192.168.55.55"
o.vm.provision :shell, :path => "setup.sh", args: ENV['SHELL_ARGS']
#o.vbguest.auto_update = false
o.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
v.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
end
end
================================================
FILE: src/vagrant/run_vagrant_build.sh
================================================
#!/usr/bin/env bash
sudo vagrant ssh -- -t "sudo /CustomPiOS/nightly_build_scripts/custompios_nightly_build $@"
================================================
FILE: src/vagrant/setup.sh
================================================
#!/usr/bin/env bash
sudo apt-get update
sudo apt-get install -y gawk util-linux git qemu-user-static p7zip-full unzip zip