00: Versión de Linux

01: Lightdm.sh

# SOLO SI EL EQUIPO NO ESTÁ EN DEBIAN 12# Ejecutar como ADMIN/AGENTE# PASO 0.1 - Esperar hasta que se reinicie

#/bin/bash

apt update -yapt upgrade -yif [ ! -d /etc/lightdm/ ]; then    apt -y purge sddm    apt autoremove -y    apt -y install lightdm    sed -i 's/#autologin-user=/autologin-user=cvc/g' /etc/lightdm/lightdm.conf    sed -i 's/#autologin-user-timeout=0/autologin-user-timeout=0/g' /etc/lightdm/lightdm.conf    rm /etc/systemd/system/startx.service /etc/systemd/system/getty.target.wants/getty\@tty1.service    rm -r /etc/sddm.conf.d/    rebootfi

02:  Networkd.sh

# SOLO SI EL EQUIPO NO ESTÁ EN DEBIAN 12# Ejecutar como ADMIN/AGENTE# PASO 0.2 - Esperar 2 minutos

#/bin/bash

if [ ! -f /etc/systemd/network/wired.network ]; then    curl -L https://comunicacionvisualcanarias.com/_ext/updates/2023_1/files/wired.network -o /etc/systemd/network/wired.network

   ADDRESS=$(ip a | grep "inet" | grep "scope global" | grep -v "dynamic" | awk '{ print $2 }')    GATEWAY=$(ip route | grep "default via" | awk '{print $3}')

   if [ ! -z $ADDRESS ]; then        sed -i "s/DHCP=.*/DHCP=no/g" /etc/systemd/network/wired.network        sed -i "s|Address=.*|Address=$ADDRESS|g" /etc/systemd/network/wired.network        sed -i "s/Gateway=.*/Gateway=$GATEWAY/g" /etc/systemd/network/wired.network    fi

   systemctl enable systemd-networkd    systemctl disable NetworkManager    apt purge -y network-manager    systemctl start systemd-networkd    rm -r /etc/NetworkManagerfi

03:  UpdateLite.sh

# SOLO SI EL EQUIPO NO ESTÁ EN DEBIAN 12# Ejecutar como ADMIN/AGENTE# PASO 0.3 - Esperar hasta que se reinicie

#!/bin/bash# ################################################################ ###################### Pre Instalacion ######################### ###############################################################

if [ -f /home/cvc/system.cfg ]; then    echo "ya actualizado"    exit 1fi

if [ ! -f /home/cvc/system/system.cfg ]; then    echo "no se puede actualizar, no hay system.cfg"    exit 1fi

# EntornoID=$(grep 'ID="' /home/cvc/system/system.cfg | cut -d'"' -f2)CLIENT=$(grep 'CLIENT="' /home/cvc/system/system.cfg | cut -d'"' -f2)STARTAPP=$(grep 'STARTAPP="' /home/cvc/system/system.cfg | cut -d'"' -f2)SYNC_MEDIA=$(grep 'SYNC_MEDIA="' /home/cvc/system/system.cfg | cut -d'"' -f2)SYNC_MUSIC=$(grep 'SYNC_MUSIC="' /home/cvc/system/system.cfg | cut -d'"' -f2)

cd /home/cvcexport HOME=/home/cvc

# Deshabilitar tareasprintf "" | sudo -u cvc crontab -printf "" | crontab -

# Borrar paquetes innecesariosapt update -yapt purge -y kitty nano vim-tiny expectapt autoremove -y

######## Descargar paquete de instalación[ -d /tmp/update ] && rm -R /tmp/updatemkdir -p /tmp/update/rootcurl -L -o /tmp/update/package.zip "https://comunicacionvisualcanarias.com/_ext/updates/2023_1/package.zip"

######## Copiar contenidos, musica y configmkdir /tmp/update/mediacp -R /home/cvc/_contenidos/files/* /tmp/update/media/

mkdir /tmp/update/musiccp -R /home/cvc/_musica/files/* /tmp/update/music/

mkdir /tmp/update/networkcp /etc/systemd/network/wired.network /tmp/update/network/wired.network

# Extraer paqueteapt install -y unzipunzip /tmp/update/package.zip -d /tmp/update/root/

# ################################################################# ########################  INSTALACIÓN ########################### ################################################################

######## Preparar los paquetesapt upgrade -yapt install -y alsa-utils xdotool zstd bash-completion neovim scrot lm-sensors htop curl efibootmgr ffmpeg jq moreutils

######## Actualizar debiansed -i 's/bullseye/bookworm/g' /etc/apt/sources.listsed -i 's/non-free/non-free-firmware/g' /etc/apt/sources.listsed -i 's/non-free-firmware-firmware/non-free-firmware/g' /etc/apt/sources.listexport DEBIAN_FRONTEND=noninteractiveexport DEBIAN_PRIORITY=criticalapt update -yapt-get -y -o "Dpkg::Options::=--force- confdef" -o "Dpkg::Options::=--force-confold" upgrade --without-new-pkgsapt-get -y -o "Dpkg::Options::=--force-confdef" -o "Dpkg::Options::=--force-confold" full-upgrade

######## Borrar archivos antiguosrm -f /home/cvc/FIRST_RUNrm -rf /home/cvc/meshrm -rf /home/cvc/updaterm -rf /home/cvc/systemrm -rf /home/cvc/.config/canalrm -rf /home/cvc/.config/totemrm -rf /home/cvc/.config/webviewerrm -rf /home/cvc/.config/guardias

rm -rf /efi/*rm -rf /usr/share/plymouth/*

######## Copiar ficheros de actualizacioncp -R /tmp/update/root/* /

# ############################################################## ###################### CONFIGURACIÓN ######################### #############################################################

# Permisoschown -R cvc:cvc /home/cvc/chown root:root /etc/sudoers /etc/sudoers.d -R

chown root /home/cvc/apps/canal/chrome-sandboxchmod 4755 /home/cvc/apps/canal/chrome-sandboxchmod +x /home/cvc/apps/canal/canal

chown root /home/cvc/apps/totem/chrome-sandboxchmod 4755 /home/cvc/apps/totem/chrome-sandboxchmod +x /home/cvc/apps/totem/totem

chown root /home/cvc/apps/webviewer/chrome-sandboxchmod 4755 /home/cvc/apps/webviewer/chrome-sandboxchmod +x /home/cvc/apps/webviewer/webviewer

chown root /home/cvc/apps/guardias/chrome-sandboxchmod 4755 /home/cvc/apps/guardias/chrome-sandboxchmod +x /home/cvc/apps/guardias/guardias

chmod +x /home/cvc/scripts/*chown cvc:cvc /home/cvc/deploy/deploy.json

chmod +x /home/cvc/.bash_aliases

# Fondo de escritoriocp /home/cvc/resources/defaults/$CLIENT/BG.png /home/cvc/resources/BG.png

######## Configuración de Apps# Canalmkdir -p /home/cvc/.config/canal/_customcp -R /home/cvc/resources/defaults/$CLIENT/config/canal/*  /home/cvc/.config/canal/_custom/

# Totemmkdir -p /home/cvc/.config/totem/_customif [ -d /home/cvc/resources/defaults/$CLIENT/config/totem/ ]; then    cp -R /home/cvc/resources/defaults/$CLIENT/config/totem/*  /home/cvc/.config/totem/_custom/else

   cp -R /home/cvc/resources/defaults/cvc/config/totem/*  /home/cvc/.config/totem/_custom/fi

# cServercp -R /home/cvc/resources/defaults/$CLIENT/config/server/*  /home/cvc/apps/server/

######## Reestablecer configuraciones

# Contenidos y musicacp /tmp/update/media/* /home/cvc/deploy/media/cp /tmp/update/music/* /home/cvc/deploy/music/

# Configuracion de sistemased -i "s/ID=.*/ID=\"$ID\"/g" /home/cvc/system.cfgsed -i "s/CLIENT=.*/CLIENT=\"$CLIENT\"/g" /home/cvc/system.cfgsed -i "s/STARTAPP=.*/STARTAPP=\"$STARTAPP\"/g" system.cfgsed -i "s/SYNC_MEDIA=.*/SYNC_MEDIA=\"$SYNC_MEDIA\"/g" system.cfgsed -i "s/SYNC_MUSIC=.*/SYNC_MUSIC=\"$SYNC_MUSIC\"/g" system.cfgsed -i "s/SYNC_POWER=.*/SYNC_POWER=\"true\"/g" system.cfg

cp /tmp/update/network/wired.network /etc/systemd/network/wired.network

# Actualizar Plymouthcp /home/cvc/resources/defaults/$CLIENT/plymouthd.defaults /usr/share/plymouth/plymouthd.defaultsupdate-initramfs -u

# Actualizar EFIcp /vmlinuz /efi/EFI/vmlinuzcp /initrd.img /efi/EFI/initrdfor i in {0..6}do    efibootmgr -B -b 000$idoneefibootmgr -c -d /dev/sda -p 1 -l "\EFI\boot\bootx64.efi" -L "cvcOS"

# Otras configuracionessystemctl daemon-reloadsystemctl enable hwclocksystemctl set-default graphical.target

# Limpieza finalrm -rf /home/cvc/_appsrm -rf /home/cvc/_contenidosrm -rf /home/cvc/_musicarm -rf /home/cvc/telemetryapt -y purge *pulse*apt autoremove -yapt autoclean

# Configurar cronprintf "" | crontab -printf "*/10 * * * * /home/cvc/scripts/logger\n* * * * * /home/cvc/scripts/sync\n" | sudo -u cvc crontab -

rm -Rf /tmp/update

reboot

04:  Volume.sh

# SOLO SI EL EQUIPO NO ESTÁ EN DEBIAN 12# Ejecutar como USUARIO# PASO 0.4 - Instantaneo

#/bin/bash

sudo -u cvc amixer set Master 100%

