Loading Dockerfile +8 −6 Original line number Diff line number Diff line Loading @@ -9,28 +9,30 @@ FROM debian:bookworm-20230320-slim RUN apt-get update && apt-get -y upgrade && \ apt-get --no-install-recommends -y install \ iproute2 \ jq \ wget \ unzip \ procps \ udhcpd \ python3 \ iproute2 \ xz-utils \ ca-certificates \ qemu-utils \ btrfs-progs \ netcat-openbsd \ ca-certificates \ qemu-system-x86 \ udhcpd \ && apt-get clean COPY run.sh /run/ COPY agent/agent.sh /agent/ COPY agent/service.sh /agent/ COPY server.sh /run/ COPY install.sh /run/ COPY serial/serial.sh /run/ COPY qemu-ifup /run/ COPY qemu-ifdown /run/ COPY generate-dhcpd-conf /run/ COPY serial/serial.sh /run/ COPY agent/agent.sh /agent/ COPY agent/service.sh /agent/ COPY --from=builder /src/serial/main /run/serial.bin Loading agent/agent.sh +26 −2 Original line number Diff line number Diff line Loading @@ -2,11 +2,35 @@ set -u echo "Starting agent.." chmod 666 /dev/ttyS0 echo "Starting agent.." > /dev/ttyS0 first_run=false for filename in /usr/local/packages/*.spk; do first_run=true done if [ "$first_run" = true ]; then for filename in /usr/local/packages/*.spk; do /usr/syno/bin/synopkg install $filename > /dev/null rm $filename done /usr/syno/bin/synopkg start FileStation > /dev/null /usr/syno/bin/synopkg start SMBService > /dev/null /usr/syno/bin/synopkg start SynoFinder > /dev/null /usr/syno/bin/synopkg start DhcpServer > /dev/null /usr/syno/bin/synopkg start SecureSignIn > /dev/null /usr/syno/bin/synopkg start Python2 > /dev/null /usr/syno/bin/synopkg start ScsiTarget > /dev/null /usr/syno/bin/synopkg start OAuthService > /dev/null else sleep 5 fi echo "" > /dev/ttyS0 echo "You can now login to DSM at http://localhost:5000/" > /dev/ttyS0 echo "" > /dev/ttyS0 Loading install.sh +6 −0 Original line number Diff line number Diff line Loading @@ -38,11 +38,13 @@ fi HDA="$TMP/hda1" IDB="$TMP/indexdb" PKG="$TMP/packages" HDP="$TMP/synohdpack_img" [ ! -f "$HDA.tgz" ] && echo "Invalid PAT file: File contains no OS image." && exit 64 [ ! -f "$HDP.txz" ] && echo "Invalid PAT file: HD pack not found." && exit 65 [ ! -f "$IDB.txz" ] && echo "Invalid PAT file: IndexDB file not found." && exit 66 [ ! -d "$PKG" ] && echo "Invalid PAT file: File contains no packages." && exit 68 BOOT=$(find $TMP -name "*.bin.zip") Loading Loading @@ -80,6 +82,10 @@ tar xpfJ $HDP.txz --absolute-names -C $MOUNT/ tar xpfJ $HDA.txz --absolute-names -C $MOUNT/ tar xpfJ $IDB.txz --absolute-names -C $MOUNT/usr/syno/synoman/indexdb/ LOC="$MOUNT/usr/local" mkdir -p $LOC mv $PKG/ $LOC/ LOC="$MOUNT/usr/local/bin" mkdir -p $LOC mv /agent/agent.sh $LOC/agent.sh Loading Loading
Dockerfile +8 −6 Original line number Diff line number Diff line Loading @@ -9,28 +9,30 @@ FROM debian:bookworm-20230320-slim RUN apt-get update && apt-get -y upgrade && \ apt-get --no-install-recommends -y install \ iproute2 \ jq \ wget \ unzip \ procps \ udhcpd \ python3 \ iproute2 \ xz-utils \ ca-certificates \ qemu-utils \ btrfs-progs \ netcat-openbsd \ ca-certificates \ qemu-system-x86 \ udhcpd \ && apt-get clean COPY run.sh /run/ COPY agent/agent.sh /agent/ COPY agent/service.sh /agent/ COPY server.sh /run/ COPY install.sh /run/ COPY serial/serial.sh /run/ COPY qemu-ifup /run/ COPY qemu-ifdown /run/ COPY generate-dhcpd-conf /run/ COPY serial/serial.sh /run/ COPY agent/agent.sh /agent/ COPY agent/service.sh /agent/ COPY --from=builder /src/serial/main /run/serial.bin Loading
agent/agent.sh +26 −2 Original line number Diff line number Diff line Loading @@ -2,11 +2,35 @@ set -u echo "Starting agent.." chmod 666 /dev/ttyS0 echo "Starting agent.." > /dev/ttyS0 first_run=false for filename in /usr/local/packages/*.spk; do first_run=true done if [ "$first_run" = true ]; then for filename in /usr/local/packages/*.spk; do /usr/syno/bin/synopkg install $filename > /dev/null rm $filename done /usr/syno/bin/synopkg start FileStation > /dev/null /usr/syno/bin/synopkg start SMBService > /dev/null /usr/syno/bin/synopkg start SynoFinder > /dev/null /usr/syno/bin/synopkg start DhcpServer > /dev/null /usr/syno/bin/synopkg start SecureSignIn > /dev/null /usr/syno/bin/synopkg start Python2 > /dev/null /usr/syno/bin/synopkg start ScsiTarget > /dev/null /usr/syno/bin/synopkg start OAuthService > /dev/null else sleep 5 fi echo "" > /dev/ttyS0 echo "You can now login to DSM at http://localhost:5000/" > /dev/ttyS0 echo "" > /dev/ttyS0 Loading
install.sh +6 −0 Original line number Diff line number Diff line Loading @@ -38,11 +38,13 @@ fi HDA="$TMP/hda1" IDB="$TMP/indexdb" PKG="$TMP/packages" HDP="$TMP/synohdpack_img" [ ! -f "$HDA.tgz" ] && echo "Invalid PAT file: File contains no OS image." && exit 64 [ ! -f "$HDP.txz" ] && echo "Invalid PAT file: HD pack not found." && exit 65 [ ! -f "$IDB.txz" ] && echo "Invalid PAT file: IndexDB file not found." && exit 66 [ ! -d "$PKG" ] && echo "Invalid PAT file: File contains no packages." && exit 68 BOOT=$(find $TMP -name "*.bin.zip") Loading Loading @@ -80,6 +82,10 @@ tar xpfJ $HDP.txz --absolute-names -C $MOUNT/ tar xpfJ $HDA.txz --absolute-names -C $MOUNT/ tar xpfJ $IDB.txz --absolute-names -C $MOUNT/usr/syno/synoman/indexdb/ LOC="$MOUNT/usr/local" mkdir -p $LOC mv $PKG/ $LOC/ LOC="$MOUNT/usr/local/bin" mkdir -p $LOC mv /agent/agent.sh $LOC/agent.sh Loading