Commit d60de0cc authored by Arturo Martín Romero's avatar Arturo Martín Romero 🤔
Browse files

Paquete específico para la configuración del CEIP La Fuenfresca de Teruel

Pipeline #1169 passed with stages
in 41 seconds
Showing with 571 additions and 0 deletions
+571 -0
variables:
_USER: "builduser"
_PATH: /home/$_USER/$CI_PROJECT_NAME
stages:
- build
- upload
build-vitalinux14:
image: vitalinux14:dev
stage: build
script:
- useradd -m $_USER
- mkdir -p $_PATH
- mv * $_PATH
- pushd $_PATH
- su -c "/usr/bin/debuild --no-tgz-check -us -uc" $_USER
- popd
- mv /home/$_USER/*.deb .
artifacts:
expire_in: 1 days
paths:
- ./*.deb
only:
- tags
upload-vitalinux14:
image: vitalinux14:dev
stage: upload
script:
- MIGASFREE_PACKAGER_PROJECT=Lubuntu-14.04 migasfree-upload -f *.deb
dependencies:
- build-vitalinux14
only:
- tags
build-vitalinux18:
image: vitalinux18:dev
stage: build
script:
- useradd -m $_USER
- mkdir -p $_PATH
- mv * $_PATH
- pushd $_PATH
- su -c "/usr/bin/debuild --no-tgz-check -us -uc" $_USER
- popd
- mv /home/$_USER/*.deb .
artifacts:
expire_in: 1 days
paths:
- ./*.deb
only:
- tags
upload-vitalinux18:
image: vitalinux18:dev
stage: upload
script:
- MIGASFREE_PACKAGER_PROJECT=VX-18.04 migasfree-upload -f *.deb
dependencies:
- build-vitalinux18
only:
- tags
README.md 0 → 100644
# Paquete DEB vx-dga-l-conf-centro-ceiplafuenfrescateruel
Paquete encargado de configurar de forma personalizada las necesidades de un centro en concreto. Se pueden llegar a configurar de forma automática las siguientes caractéristicas en función de los CIDs o Etiquetas migasfree de los equipos:
* Horas de apagado de los equipos
* Páginas de inicio de los navegadores Web
* Extensiones de los navegadores Web
* Passwords de los usuarios
* Ebooks
* Lanzadores personalizados a aplicaciones
* Impresoras en red
* Wallpaper
* Carpetas compartidas NFS
* Gestión de cuentas de usuario
* Control de inactividad (tiempo y acción a realizar)
* etc.
# Usuarios Destinatarios
Usuarios del centro correspondiente
# Aspectos Interesantes:
```
Ninguno
```
# Como Crear el paquete DEB a partir del codigo de GitHub
Para crear el paquete DEB será necesario encontrarse dentro del directorio donde localizan los directorios que componen el paquete. Una vez allí, se ejecutará el siguiente comando (es necesario tener instalados los paquetes apt-get install debhelper devscripts):
```
apt-get install debhelper devscripts
/usr/bin/debuild --no-tgz-check -us -uc
```
En el caso de que no desees crear el paquete DEB a partir del código fuente, ya que no más a modificarlo ni introducir ninguna mejora, puedes obtener el paquete DEB aquí:
[Listado de Paquetes del Proyecto de Software Libre](http://migasfree.educa.aragon.es/repo/)
# Como Instalar el paquete generado vx-dga-l-\*.deb:
Para la instalación de paquetes que estan en el equipo local puede hacerse uso de **_dpkg_** o de **_gdebi_**, siendo este último el más aconsejado para que se instalen también las dependencias correspondientes.
```
gdebi vx-dga-l-*.deb
```
# Paquete DEB vx-dga-l-conf-centro-ceiplafuenfrescateruel
Paquete encargado de configurar de forma personalizada un centro en concreto
# Usuarios Destinatarios
Usuarios del centro correspondiente
# Aspectos Interesantes:
```
Ninguno
```
# Como Crear el paquete DEB a partir del codigo de GitHub
Para crear el paquete DEB será necesario encontrarse dentro del directorio donde localizan los directorios que componen el paquete. Una vez allí, se ejecutará el siguiente comando (es necesario tener instalados los paquetes apt-get install debhelper devscripts):
```
apt-get install debhelper devscripts
/usr/bin/debuild --no-tgz-check -us -uc
```
En el caso de que no desees crear el paquete DEB a partir del código fuente, ya que no más a modificarlo ni introducir ninguna mejora, puedes obtener el paquete DEB aquí:
[Listado de Paquetes del Proyecto de Software Libre](http://migasfree.educa.aragon.es/repo/)
# Como Instalar el paquete generado vx-dga-l-\*.deb:
Para la instalación de paquetes que estan en el equipo local puede hacerse uso de **_dpkg_** o de **_gdebi_**, siendo este último el más aconsejado para que se instalen también las dependencias correspondientes.
```
gdebi vx-dga-l-*.deb
```
vx-dga-l-conf-centro-ceiplafuenfrescateruel (1.0-1) unstable; urgency=low
* Paquete específico para la configuración del CEIP La Fuenfresca de Teruel
* Añadimos los perfiles de impresión para la etiqueta PRI-LAFUENFRESCA.IMPRESORAS
-- Arturo Martin <amartinromero@gmail.com> Wed, 3 Nov 2021 10:15:06 +0200
9
Source: vx-dga-l-conf-centro-ceiplafuenfrescateruel
Section: utils
Priority: extra
Maintainer: Arturo Martín <amartinromero@gmail.com>
Build-Depends: debhelper (>= 8.0.0)
Standards-Version: 3.9.7
Homepage: http://wiki.vitalinux.educa.aragon.es
Package: vx-dga-l-conf-centro-ceiplafuenfrescateruel
Architecture: all
Provides: vx-dga-l-conf-centro-virtual
Conflicts: vx-dga-l-conf-centro-virtual
Replaces: vx-dga-l-iconos
Pre-Depends:
Depends: ${misc:Depends}, vx-dga-l-conf-centro, vx-dga-l-printers-codusers, numlockx
Description: Personalización de Vitalinux por Centro
Paquete encargado de proveer el Json con los detalles de personalización
Format: http://dep.debian.net/deps/dep5
Upstream-Name: vx-dga-l-conf-centro-ceiplafuenfrescateruel
Files: * debian/*
Copyright: 2017 Arturo Martín <amartinromero@gmail.com>
License: GPL-3.0+
License: GPL-3.0+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
usr/*
\ No newline at end of file
#!/bin/bash
# postinst script for vx-dga-l-conf-centro-ceiplafuenfrescateruel
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
configure)
# Permisos de ejecución a los scripts del paquete:
chmod 755 /usr/bin/vx-*
# Comprobamos si ya existía en el preinst un vx-centro.conf.ini para preservar sus valores:
FICH_INI_ANT="/tmp/vx-centro.conf.ini.ant"
FICH_INI="/usr/share/vitalinux/conf-centro/vx-centro.conf.ini"
MENSAJE="Postinst: Comprobamos si existía en el preinst un vx-centro.conf.ini para preservar sus valores"
MENSAJE_TRUE="Postinst: Copiamos el ${FICH_INI} anterior para preservar sus valores"
MENSAJE_FALSE="Postinst: No existe ningún ${FICH_INI} anterior"
echo "=> ${MENSAJE}"
[[ -f "${FICH_INI}" && -f "${FICH_INI_ANT}" ]] && \
{
cp -f "${FICH_INI_ANT}" "${FICH_INI}"
echo "=> ${MENSAJE_TRUE}" ;
} || \
echo "=> ${MENSAJE_FALSE}"
# Configuración del Wallpaper del Centro: añadimos wallpaper personalizado
EJECUTABLE="/usr/bin/vx-conf-wallpaper-centro"
PAQUETECENTRO="vx-dga-l-conf-centro-ceiplafuenfrescateruel"
ACCION="add"
APLICAR="false"
if "${APLICAR}" && [ -x "${EJECUTABLE}" ] ; then
if "${EJECUTABLE}" "${ACCION}" "${PAQUETECENTRO}" > /dev/null 2>&1 ; then
echo "=> ${EJECUTABLE}: Se ha configurado el Wallpaper del Centro"
else
echo "=> ${EJECUTABLE}: Problemas para configurar el Wallpaper del centro"
fi
fi
# Aplicamos la configuración indicada en el Json que incorpora el paquete:
EJECUTABLE="/usr/bin/vx-conf-centro-general-cli"
if [ -x "${EJECUTABLE}" ] ; then
if "${EJECUTABLE}" > /dev/null 2>&1 ; then
echo "=> ${EJECUTABLE}: Se ha configurado el equipo correctamente"
else
echo "=> ${EJECUTABLE}: Problemas para configurar el equipo correctamente"
fi
fi
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0
#!/bin/sh
# pretinst script for vx-dga-l-conf-centro-ceiplafuenfrescateruel
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <postinst> `configure' <most-recently-configured-version>
# * <old-postinst> `abort-upgrade' <new version>
# * <conflictor's-postinst> `abort-remove' `in-favour' <package>
# <new-version>
# * <postinst> `abort-remove'
# * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
# <failed-install-package> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
install|upgrade)
# Comprobamos si hay algún vx-centro.conf.ini para tenerlo en cuenta en el postinst:
FICH_INI_ANT="/tmp/vx-centro.conf.ini.ant"
FICH_INI="/usr/share/vitalinux/conf-centro/vx-centro.conf.ini"
MENSAJE="Preinst: Comprobamos si existe un vx-centro.conf.ini para preservar sus valores en el postinst"
MENSAJE_TRUE="Preinst: Copiamos el ${FICH_INI} anterior para preservar sus valores"
MENSAJE_FALSE="Preinst: No existe ningún ${FICH_INI} anterior"
echo "=> ${MENSAJE}"
[ -f "${FICH_INI}" ] && \
{
cp -f "${FICH_INI}" "${FICH_INI_ANT}"
echo "=> ${MENSAJE_TRUE}" ;
} || \
echo "=> ${MENSAJE_FALSE}"
;;
abort-upgrade)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0
#!/bin/bash
# prerm script for vx-dga-l-conf-centro-ceiplafuenfrescateruel
#
# see: dh_installdeb(1)
set -e
# summary of how this script can be called:
# * <prerm> `remove'
# * <old-prerm> `upgrade' <new-version>
# * <new-prerm> `failed-upgrade' <old-version>
# * <conflictor's-prerm> `remove' `in-favour' <package> <new-version>
# * <deconfigured's-prerm> `deconfigure' `in-favour'
# <package-being-installed> <version> `removing'
# <conflicting-package> <version>
# for details, see http://www.debian.org/doc/debian-policy/ or
# the debian-policy package
case "$1" in
remove)
# Desconfiguración del Wallpaper del Centro: borramos wallpaper personalizado
EJECUTABLE="/usr/bin/vx-conf-wallpaper-centro"
PAQUETECENTRO="vx-dga-l-conf-centro-ceiplafuenfrescateruel"
ACCION="del"
APLICAR="false"
if "${APLICAR}" && [ -x "${EJECUTABLE}" ] ; then
if "${EJECUTABLE}" "${ACCION}" "${PAQUETECENTRO}" > /dev/null 2>&1 ; then
echo "=> ${EJECUTABLE}: Se ha desconfigurado el Wallpaper del Centro"
else
echo "=> ${EJECUTABLE}: Problemas para desconfigurar el Wallpaper del centro"
fi
fi
;;
upgrade|deconfigure)
;;
failed-upgrade)
;;
*)
echo "prerm called with unknown argument \`$1'" >&2
exit 1
;;
esac
# dh_installdeb will replace this with shell code automatically
# generated by other debhelper scripts.
#DEBHELPER#
exit 0
#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
%:
dh $@
date && sdk-list_tags.py3 | grep "LAFUENFRESCA"
mié nov 3 13:25:23 CET 2021
PRI-LAFUENFRESCA
PRI-LAFUENFRESCA.IMPRESORAS
\ No newline at end of file
#! /bin/bash
# incidencia: https://soporte.vitalinux.educa.aragon.es/issues/2428
# Damos respuesta a un Bug de Mblock
# Desc: Script de Instalación de la Extensión Mio Robot de MBlock
DIREXT="/opt/makeblock/mBlock/resources/ext/libraries/mio_robot"
[ -d "${DIREXT}" ] && \
{
echo "=> La Extensión Mio Robot de MBlock ya esta instalada ..." ;
exit 0
}
# Creamos el directorio donde se almacenan las extensiones en mblock:
DIR="/opt/makeblock/mBlock/resources/ext/libraries"
[ ! -d "${DIR}" ] && \
mkdir -p "${DIR}" && \
echo "=> Se ha creado el directorio de Extensiones de MBlock: ${DIR}"
# Damos permisos para que los usuarios puedan registrar sus propias extensiones:
[ -d "${DIR}" ] && chmod 777 "${DIR}" || \
{
echo "=> Problemas con el directorio de Destino de las Extensiones de MBlock ..." ;
exit 1 ;
}
# Descomprimimos la extensión Mio Robot en mblock",
# URL="http://migasfree.educa.aragon.es/cosas-centros/mblock-extensiones/mblock-ext-mio_robot.zip"
EXTENSION="/usr/share/vitalinux/mblock/mblock-ext-mio_robot.zip"
[ -f "${EXTENSION}" ] && unzip -q "${EXTENSION}" -d "${DIR}" && \
{
echo "=> Hemos descomprimido la Extension de MBlock Mio Robot" ;
exit 0 ;
} || \
{
echo "=> Problema para descomprimir la Extension de MBlock Mio Robot" ;
exit 1
}
\ No newline at end of file
#!/bin/bash
LIBRO=$1
[ -z "${1}" ] && exit 0
ARCHSO=$(getconf LONG_BIT)
[ -x "/media/profesores/.libros-digitales/libros-frances/CLUBPARACHUTE${LIBRO}/linux${ARCHSO}/ibook" ] && \
"/media/profesores/.libros-digitales/libros-frances/CLUBPARACHUTE${LIBRO}/linux${ARCHSO}/ibook"
#!/bin/bash
INITSYS="$(ls -al /proc/1/exe | awk -F' ' '{print $NF}' | awk -F'/' '{print $NF}')"
if [ "systemd" == "$INITSYS" ]; then
# systemctl stop avahi-daemon.service &> /dev/null || true
systemctl disable --now avahi-daemon.socket
systemctl disable --now avahi-daemon.service
echo "=> Se ha deshabilitado avahi ..."
elif [ "init" == "$INITSYS" ]; then
/etc/init.d/avahi-daemon stop &> /dev/null || true
fi
\ No newline at end of file
#!/bin/bash
if ! ( id "alumno" | grep "nopasswdlogin" &> /dev/null ) && id alumno &> /dev/null ; then
usermod -aG "nopasswdlogin" "alumno"
fi
\ No newline at end of file
#!/bin/bash
#LISTA_GRUPOS_SECUNDARIOS=("profesor" "dialout" "cdrom" "audio" "video" "nopasswdlogin")
LISTA_GRUPOS_SECUNDARIOS=("profesor" "dialout" "cdrom" "audio" "video")
if getent passwd profesor &> /dev/null ; then
echo "=> Degradamos la cuenta de usuario de profesor"
usermod \
-G "$(echo "${LISTA_GRUPOS_SECUNDARIOS[*]}" | tr -s " " ",")" \
profesor
fi
\ No newline at end of file
#!/bin/bash
# desc: Imponemos como visor pdf por defecto al programa atril
conf_atril_pdf() {
# Configuramos mimeapps.list para archivos PDF: defaults.list y mimeapps.list
# Indicamos la lista de mimetypes y filedesktops que los abriran:
echo "# Añadimos asociación Default para Java:"
LISTADO=( "application/pdf:atril.desktop" )
vx-mimetype-desktopfile-conf_ini "Default Applications" "${LISTADO[@]}" > /dev/null 2>&1
}
if [ -f "/usr/share/applications/atril.desktop" ] ; then
conf_atril_pdf
fi
exit 0
\ No newline at end of file
#!/bin/bash
function configurar_wallpaper() {
## WALLPAPER
## Divert de los archivos que define el fondo de pantalla
for _FILE in /usr/share/vitalinux/wallpapers/*0.png; do
dpkg-divert --add --package "${PAQUETECENTRO}" --rename \
--divert $_FILE.orig $_FILE
[ ! -e $_FILE -o -L $_FILE ] && \
ln -sf /usr/share/divert$_FILE $_FILE
done
# Ajustamos de nuevo las resoluciones
RESOLUCION=$(/usr/bin/obtener-resolucion-pantalla)
[ "$RESOLUCION" = "" ] && RESOLUCION="Indeterminada"
_FILE1=/usr/share/vitalinux/wallpapers/vitalinux-edu-wallpaper.png
_FILE2=/usr/share/vitalinux/wallpapers/vitalinux-login.png
case $RESOLUCION in
"4:3" )
cp /usr/share/vitalinux/wallpapers/vitalinux-edu-wallpaper-4x3-1600x1200.png $_FILE1
cp /usr/share/vitalinux/wallpapers/vitalinux-login-4x3-1600x1200.png $_FILE2
;;
"16:9" )
cp /usr/share/vitalinux/wallpapers/vitalinux-edu-wallpaper-16x9-1920x1080.png $_FILE1
cp /usr/share/vitalinux/wallpapers/vitalinux-login-16x9-1920x1080.png $_FILE2
;;
* )
# Por defecto dejamos la 16x9
cp /usr/share/vitalinux/wallpapers/vitalinux-edu-wallpaper-16x9-1920x1080.png $_FILE1
cp /usr/share/vitalinux/wallpapers/vitalinux-login-16x9-1920x1080.png $_FILE2
;;
esac
# GREETER
FILEGREETER="/etc/lightdm/lightdm-gtk-greeter.conf.d/99_vitalinux.conf"
[ -f $FILEGREETER ] && \
sed -i --follow-symlinks "s#background=.*#background=${_FILE2}#g" $FILEGREETER
}
function bug_lorele() {
BUGPAQUETE="vx-dga-l-desktop-wallpaper-lorele"
for _FILE in $(dpkg-divert --list | grep lorele | awk '{print $3}'); do
[ -L $_FILE ] && rm $_FILE
dpkg-divert --remove --package "${BUGPAQUETE}" --rename \
--divert $_FILE.orig $_FILE > /dev/null 2>/dev/null
done
}
function desconfigurar_wallpaper()
{
bug_lorele
for _FILE in /usr/share/vitalinux/wallpapers/*0.png; do
if dpkg-divert --list | grep -q "${PAQUETECENTRO}" | grep "${_FILE}" ; then
[ -L $_FILE ] && rm $_FILE
dpkg-divert --remove --package "${PAQUETECENTRO}" --rename \
--divert $_FILE.orig $_FILE
fi
done
## Restauramos los ficheros de imagen (wallpaper y login) base aplicados
_FILE1=/usr/share/vitalinux/wallpapers/vitalinux-edu-wallpaper.png
_FILE2=/usr/share/vitalinux/wallpapers/vitalinux-login.png
_FILE1BASE=/usr/share/vitalinux/wallpapers/vitalinux-edu-wallpaper-16x9-1920x1080.png
_FILE2BASE=/usr/share/vitalinux/wallpapers/vitalinux-login-16x9-1920x1080.png
[ -f $_FILE1BASE ] && cp $_FILE1BASE $_FILE1
[ -f $_FILE2BASE ] && cp $_FILE2BASE $_FILE2
}
ACCION="${1}"
PAQUETECENTRO="${2}"
case "${ACCION}" in
"add" )
# Eliminamos previamente el posible Wallpaper que pudiera haber:
desconfigurar_wallpaper
# Añadimos el wallpaper el nuevo wallpaper:
configurar_wallpaper
;;
"del" ) desconfigurar_wallpaper
;;
esac
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment