From 9c31e6b18a32857c50bda9f3e8083a99ed676ecc Mon Sep 17 00:00:00 2001 From: stefandmn Date: Mon, 22 Feb 2021 07:43:54 +0200 Subject: [PATCH] Move system maintenance service to busybox package --- Makefile | 25 +++++++-- devices/RPi4/config/config.txt | 12 +++- packages/abstract/mediacenter/package.csh | 2 +- .../program/program.recovery/package.csh | 15 +++++ .../service/service.clue/oldpackage.csh | 35 ------------ packages/compress/bzip2/package.csh | 2 +- packages/network/samba/config/smb.conf | 55 +------------------ packages/network/samba/default.d/samba.conf | 2 +- packages/system/busybox/package.csh | 4 ++ .../busybox}/scripts/backup-restore | 0 .../busybox}/scripts/factory-reset | 8 +-- packages/system/busybox/scripts/init | 2 +- .../busybox}/system.d/backup-restore.service | 0 .../busybox}/system.d/backup-restore.target | 0 .../busybox}/system.d/factory-reset.service | 0 .../busybox}/system.d/factory-reset.target | 0 .../files/3rdparty/bootloader/config.txt | 4 +- 17 files changed, 61 insertions(+), 105 deletions(-) create mode 100644 packages/addons/program/program.recovery/package.csh delete mode 100644 packages/addons/service/service.clue/oldpackage.csh rename packages/{addons/service/service.clue => system/busybox}/scripts/backup-restore (100%) rename packages/{addons/service/service.clue => system/busybox}/scripts/factory-reset (90%) rename packages/{addons/service/service.clue => system/busybox}/system.d/backup-restore.service (100%) rename packages/{addons/service/service.clue => system/busybox}/system.d/backup-restore.target (100%) rename packages/{addons/service/service.clue => system/busybox}/system.d/factory-reset.service (100%) rename packages/{addons/service/service.clue => system/busybox}/system.d/factory-reset.target (100%) diff --git a/Makefile b/Makefile index 58ae7b4..4300cb7 100644 --- a/Makefile +++ b/Makefile @@ -144,14 +144,25 @@ gitrel: git push origin --tags +# Commit and push changes in both versioning systems (SVN and GIT) +revision: +ifneq ($(message),) + $(MAKE) svnrev + $(MAKE) gitrev +else + @printf "\n* Please specify 'message' parameter!\n\n" + exit 1 +endif + + # Display the help text help: echo -e "\ \nSYNOPSIS\n\ - make build | install | clean | cleanall | release \n\ - make cachestats | viewplan | viewpack | viewbuild\n\ - make svnrev | gitrev | gitrel\n\ - make help\n\ + make build | clean | cleanall | release | install \n\ + make cachestats | viewplan | viewpack | viewbuild \n\ + make svnrev | gitrev | gitrel | revision \n\ + make help \n\ \nDESCRIPTION\n\ Executes one of the make tasks defined through this Makefile flow, according \n\ to the specified DEVICE variable. In case is not defined/exported to the OS \n\ @@ -163,14 +174,14 @@ help: build [-e package=]\n\ build one particular package (and all related dependencies) or \n\ the entire DEVICE distribution\n\ - install -e package= | packages=]\n\ - install one particular package and related dependencies\n\ clean [-e package= | packages=]\n\ cleanup one particular package or the entire DEVICE distribution\n\ cleanall\n\ Clean-up all DEVICE distributions, cache and stamps resources as well\n\ release\n\ Build the system release and create OS image for the current DEVICE\n\ + install -e package= | packages=]\n\ + install one particular package and related dependencies\n\ cachestats\n\ Displays cache statistics\n\ viewplan | plan\n\ @@ -188,6 +199,8 @@ help: gitrel\n\ Create a new release tag into GitHub versioning repository using current\n\ addon version (defined in the addon descriptor - addon.xml file)\n\ + revision\n\ + Commit and push project changes in both versioning systems (SVN and GIT)\n\ help\n\ Shows this text\n\ \n\ diff --git a/devices/RPi4/config/config.txt b/devices/RPi4/config/config.txt index d39008a..d04c09a 100644 --- a/devices/RPi4/config/config.txt +++ b/devices/RPi4/config/config.txt @@ -27,12 +27,20 @@ hdmi_ignore_cec_init=0 disable_splash=1 # Uncomment to force a specific console size. By default it will be display's size minus overscan. -#framebuffer_width=1280 -#framebuffer_height=720 +# framebuffer_width=1280 +# framebuffer_height=720 # Activate Pi camera (only if is attached to the device) # start_x=1 +################################################################################ +# License keys to enable GPU hardware decoding for various codecs +# to obtain keys visit the shop at http://www.raspberrypi.com +################################################################################ + +# decode_MPG2=0x00000000 +# decode_WVC1=0x00000000 + ################################################################################ # Include distribution specific config file if it exists. ################################################################################ diff --git a/packages/abstract/mediacenter/package.csh b/packages/abstract/mediacenter/package.csh index 905be4a..329c153 100644 --- a/packages/abstract/mediacenter/package.csh +++ b/packages/abstract/mediacenter/package.csh @@ -1,7 +1,7 @@ PKG_NAME="mediacenter" PKG_VERSION="" PKG_URL="" -PKG_DEPENDS_TARGET="toolchain kodi repository.clue skin.clue module.clue service.clue weather.clue webinterface.clue program.slideshow program.search" +PKG_DEPENDS_TARGET="toolchain kodi repository.clue skin.clue module.clue service.clue weather.clue webinterface.clue program.slideshow program.search program.recovery" PKG_SECTION="abstract" PKG_DESCRIPTION="Metapackage to install kodi and related packages and addons" diff --git a/packages/addons/program/program.recovery/package.csh b/packages/addons/program/program.recovery/package.csh new file mode 100644 index 0000000..dc5901f --- /dev/null +++ b/packages/addons/program/program.recovery/package.csh @@ -0,0 +1,15 @@ +PKG_NAME="program.recovery" +PKG_VERSION="2.0.1" +PKG_ARCH="any" +PKG_URL="${DISTRO_ADDONS}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.zip" +PKG_DEPENDS_TARGET="toolchain kodi module.clue" +PKG_SECTION="program" +PKG_DESCRIPTION="Mediacenter System Backup and Restore" +PKG_TOOLCHAIN="manual" + + +makeinstall_target() { + # deploy resources + mkdir -p $INSTALL/usr/share/kodi/addons/$PKG_NAME + cp -PR $PKG_BUILD/* $INSTALL/usr/share/kodi/addons/$PKG_NAME/ +} \ No newline at end of file diff --git a/packages/addons/service/service.clue/oldpackage.csh b/packages/addons/service/service.clue/oldpackage.csh deleted file mode 100644 index e711058..0000000 --- a/packages/addons/service/service.clue/oldpackage.csh +++ /dev/null @@ -1,35 +0,0 @@ -PKG_NAME="program.clue" -PKG_VERSION="2.0.1" -PKG_ARCH="any" -PKG_URL="${DISTRO_ADDONS}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.zip" -PKG_DEPENDS_TARGET="toolchain Python2 connman pygobject dbus-python" -PKG_SECTION="program" -PKG_DESCRIPTION="Clue System Setup for Kodi" - -PKG_MAKE_OPTS_TARGET="DISTRO_NAME=$DISTRO_NAME ROOT_PASSWORD=$ROOT_PASSWORD" - -PKG_DEPENDS_TARGET="$PKG_DEPENDS_TARGET bkeymaps" - -makeinstall_target() { - # deploy resources - mkdir -p $INSTALL/usr/share/kodi/addons/$PKG_NAME - cp -PR $PKG_BUILD/* $INSTALL/usr/share/kodi/addons/$PKG_NAME/ -} - -post_makeinstall_target() { - mkdir -p $INSTALL/usr/lib/clue - cp $PKG_DIR/scripts/* $INSTALL/usr/lib/clue - - ADDON_INSTALL_DIR=$INSTALL/usr/share/kodi/addons/program.clue - - $TOOLCHAIN/bin/python -Wi -t -B $TOOLCHAIN/lib/$PKG_PYTHON_VERSION/compileall.py $ADDON_INSTALL_DIR/resources/lib/ -f - rm -rf $(find $ADDON_INSTALL_DIR/resources/lib/ -name "*.py") - - $TOOLCHAIN/bin/python -Wi -t -B $TOOLCHAIN/lib/$PKG_PYTHON_VERSION/compileall.py $ADDON_INSTALL_DIR/oe.py -f - rm -rf $ADDON_INSTALL_DIR/oe.py -} - -post_install() { - enable_service backup-restore.service - enable_service factory-reset.service -} diff --git a/packages/compress/bzip2/package.csh b/packages/compress/bzip2/package.csh index a5781dc..9512a9b 100644 --- a/packages/compress/bzip2/package.csh +++ b/packages/compress/bzip2/package.csh @@ -1,7 +1,7 @@ PKG_NAME="bzip2" PKG_VERSION="1.0.6" PKG_SHA256="a2848f34fcd5d6cf47def00461fcb528a0484d8edef8208d6d2e2909dc61d9cd" -PKG_URL="${DISTRO_SOURCES}/${PKG_NAME}-${PKG_VERSION}.tar.gz" +PKG_URL="ftp://sourceware.org/pub/bzip2/${PKG_NAME}-${PKG_VERSION}.tar.gz" PKG_DEPENDS_HOST="gcc:host" PKG_DEPENDS_TARGET="toolchain" PKG_DESCRIPTION="A high-quality bzip2 data compressor." diff --git a/packages/network/samba/config/smb.conf b/packages/network/samba/config/smb.conf index 947bf01..410a5e6 100644 --- a/packages/network/samba/config/smb.conf +++ b/packages/network/samba/config/smb.conf @@ -40,19 +40,10 @@ # "strict allocate = yes" breaks large network transfers to external hdd # Force this to "no" in case "yes" becomes the default in future strict allocate = no - allocation roundup size = 0 -# Using the following configurations as a template allows you to add -# writeable shares of disks and paths under /home - -[Update] - path = /home/.update - available = yes - browseable = yes - public = yes - writeable = yes - root preexec = mkdir -p /home/.update + # Using the following configurations as a template allows you to add + # writeable shares of disks and paths under /home [Videos] path = /home/videos @@ -102,30 +93,6 @@ writeable = yes root preexec = mkdir -p /home/pictures -[Emulators] - path = /home/emulators - available = yes - browseable = yes - public = yes - writeable = yes - root preexec = mkdir -p /home/emulators - -[Configfiles] - path = /home/.config - available = yes - browseable = yes - public = yes - writeable = yes - root preexec = mkdir -p /home/.config - -[Userdata] - path = /home/.kodi/userdata - available = yes - browseable = yes - public = yes - writeable = yes - root preexec = mkdir -p /home/.kodi/userdata - [Screenshots] path = /home/screenshots available = yes @@ -134,27 +101,11 @@ writeable = yes root preexec = mkdir -p /home/screenshots -[Logfiles] - path = /home/logfiles - available = yes - browseable = yes - public = yes - writeable = yes - root preexec = mkdir -p /home/logfiles - root preexec = createlog - [Backup] path = /home/backup available = yes browseable = yes public = yes - writeable = yes + writeable = no root preexec = mkdir -p /home/backup -[Picons] - path = /home/picons - available = yes - browseable = yes - public = yes - writeable = yes - root preexec = mkdir -p /home/picons/tvh /home/picons/vdr diff --git a/packages/network/samba/default.d/samba.conf b/packages/network/samba/default.d/samba.conf index e29fd29..2146398 100644 --- a/packages/network/samba/default.d/samba.conf +++ b/packages/network/samba/default.d/samba.conf @@ -1,5 +1,5 @@ SAMBA_AUTOSHARE="true" -SAMBA_USERNAME="root" +SAMBA_USERNAME="admin" SAMBA_PASSWORD="clue" SAMBA_SECURE="false" SAMBA_MINPROTOCOL="SMB2" diff --git a/packages/system/busybox/package.csh b/packages/system/busybox/package.csh index a8773bf..bde2342 100644 --- a/packages/system/busybox/package.csh +++ b/packages/system/busybox/package.csh @@ -121,6 +121,8 @@ makeinstall_target() { mkdir -p $INSTALL/usr/lib/clue cp $PKG_DIR/scripts/functions $INSTALL/usr/lib/clue cp $PKG_DIR/scripts/fs-resize $INSTALL/usr/lib/clue + cp $PKG_DIR/scripts/backup-restore $INSTALL/usr/lib/clue + cp $PKG_DIR/scripts/factory-reset $INSTALL/usr/lib/clue sed -e "s/@DISTRO_NAME@/$DISTRO_NAME/g" \ -i $INSTALL/usr/lib/clue/fs-resize @@ -171,6 +173,8 @@ post_install() { enable_service welcome.service enable_service var.mount enable_service fs-resize.service + enable_service backup-restore.service + enable_service factory-reset.service listcontains "${FIRMWARE}" "rpi-eeprom" && enable_service boot-firmware.service # cron support diff --git a/packages/addons/service/service.clue/scripts/backup-restore b/packages/system/busybox/scripts/backup-restore similarity index 100% rename from packages/addons/service/service.clue/scripts/backup-restore rename to packages/system/busybox/scripts/backup-restore diff --git a/packages/addons/service/service.clue/scripts/factory-reset b/packages/system/busybox/scripts/factory-reset similarity index 90% rename from packages/addons/service/service.clue/scripts/factory-reset rename to packages/system/busybox/scripts/factory-reset index 550d253..65ce300 100755 --- a/packages/addons/service/service.clue/scripts/factory-reset +++ b/packages/system/busybox/scripts/factory-reset @@ -41,9 +41,9 @@ show_reset_msg() { echo "" } -if [ -f /home/.cache/reset_oe ]; then +if [ -f /home/.cache/reset_clue ]; then # hard reset - rm -f /home/.cache/reset_oe + rm -f /home/.cache/reset_clue get_target if [ ! -z $target ]; then show_reset_msg @@ -62,9 +62,9 @@ if [ -f /home/.cache/reset_oe ]; then echo StartProgress countdown "Rebooting in 5s... " 5 "NOW" fi -elif [ -f /home/.cache/reset_xbmc ]; then +elif [ -f /home/.cache/reset_kodi ]; then # soft reset - rm -f /home/.cache/reset_xbmc + rm -f /home/.cache/reset_kodi get_target if [ ! -z $target ]; then show_reset_msg diff --git a/packages/system/busybox/scripts/init b/packages/system/busybox/scripts/init index 75e99be..5fa7fca 100755 --- a/packages/system/busybox/scripts/init +++ b/packages/system/busybox/scripts/init @@ -1143,7 +1143,7 @@ BACKUP_FILE=$(ls -1 /sysroot/home/.restore/??????????????.tar 2>/dev/null | head if [ -f /sysroot/home/.please_resize_me ]; then INIT_UNIT="--unit=fs-resize.target" -elif [ -f /sysroot/home/.cache/reset_oe -o -f /sysroot/home/.cache/reset_xbmc ]; then +elif [ -f /sysroot/home/.cache/reset_clue -o -f /sysroot/home/.cache/reset_kodi ]; then INIT_UNIT="--unit=factory-reset.target" elif [ -f "$BACKUP_FILE" ]; then INIT_UNIT="--unit=backup-restore.target" diff --git a/packages/addons/service/service.clue/system.d/backup-restore.service b/packages/system/busybox/system.d/backup-restore.service similarity index 100% rename from packages/addons/service/service.clue/system.d/backup-restore.service rename to packages/system/busybox/system.d/backup-restore.service diff --git a/packages/addons/service/service.clue/system.d/backup-restore.target b/packages/system/busybox/system.d/backup-restore.target similarity index 100% rename from packages/addons/service/service.clue/system.d/backup-restore.target rename to packages/system/busybox/system.d/backup-restore.target diff --git a/packages/addons/service/service.clue/system.d/factory-reset.service b/packages/system/busybox/system.d/factory-reset.service similarity index 100% rename from packages/addons/service/service.clue/system.d/factory-reset.service rename to packages/system/busybox/system.d/factory-reset.service diff --git a/packages/addons/service/service.clue/system.d/factory-reset.target b/packages/system/busybox/system.d/factory-reset.target similarity index 100% rename from packages/addons/service/service.clue/system.d/factory-reset.target rename to packages/system/busybox/system.d/factory-reset.target diff --git a/packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/config.txt b/packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/config.txt index 898ac60..95a5829 100644 --- a/packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/config.txt +++ b/packages/tools/bcm2835-bootloader/files/3rdparty/bootloader/config.txt @@ -39,8 +39,8 @@ hdmi_ignore_cec_init=0 disable_splash=1 # Uncomment to force a specific console size. By default it will be display's size minus overscan. -#framebuffer_width=1280 -#framebuffer_height=720 +# framebuffer_width=1280 +# framebuffer_height=720 # Activate Pi camera (only if is attached to the device) # start_x=1