Autor Tema: wifislax-updaters HILO 2  (Leído 200741 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #180 en: 16-09-2015, 11:46 (Miércoles) »
aria2

Código: [Seleccionar]
#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150916

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
f_variables(){
. /opt/wifislax-updaters/Funciones/funciones_updater
}

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=aria2
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=http://sourceforge.net/projects/aria2/files/stable/
VERSION=`curl -s $WEB | grep latest | grep .bz2 | cut -d = -f4 | cut -d '/' -f3 | cut -d '-' -f2`
DOWNLOAD=http://sourceforge.net/projects/aria2/files/stable/$PRGNAM-$VERSION/$PRGNAM-$VERSION.tar.bz2
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.bz2 ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 1
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
  -o -perm 511 \) -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
  -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;

# Aplicamos parche necesario para gcc 4.9
cat > aria2-gcc4.9.patch << "EOF"
--- aria2-1.19.0/src/a2gmp.h.orig 2015-05-26 23:16:33.145925238 +0700
+++ aria2-1.19.0/src/a2gmp.h 2015-05-26 23:17:01.022556391 +0700
@@ -35,6 +35,7 @@
 #ifndef D_A2GMP_H
 #define D_A2GMP_H
 
+#include <stddef.h>
 #include <gmp.h>
 
 namespace aria2 {
--- aria2-1.19.0/src/LibgmpDHKeyExchange.h.orig 2015-05-26 23:34:32.190146786 +0700
+++ aria2-1.19.0/src/LibgmpDHKeyExchange.h 2015-05-26 23:34:46.847939101 +0700
@@ -36,7 +36,7 @@
 #define D_LIBGMP_DH_KEY_EXCHANGE_H
 
 #include "common.h"
-
+#include <stddef.h>
 #include <gmp.h>
 
 namespace aria2 {

EOF


# Aplicamos parche
patch -p1 < aria2-gcc4.9.patch || exit 1
 
# Configuramos
echo
echo "$VERDE"Configurando ..."$CIERRE"
sleep 1
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --build=$ARCH-slackware-linux

# Compilamos
echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
make || exit 1
make install DESTDIR=$PKG || exit 1

}

###################################
## BLOQUE PRINCIPAL DE EJECUCION ##
###################################
# Si se cierra el script inesperadamente, ejecutar la funcion de limpieza
trap f_exitmode SIGHUP SIGINT

#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Creamos directorio de trabajo
f_directorioTemporal
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del paquete
f_versionInstalada
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales



Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2378
  • Prácticas precisas precisan práctica
Re: wifislax-updaters HILO 2
« Respuesta #181 en: 16-09-2015, 13:01 (Miércoles) »
Perfect  >:(

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #182 en: 16-09-2015, 23:04 (Miércoles) »
Ya lo he subido a github y he reparado el de wireshark , que cambiaron algo en la web y no pillaba la version bien.

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #183 en: 19-09-2015, 23:09 (Sábado) »
Voy a probar a incluir este updater ...

Para poder leer blurays comerciales se necesita un soft que conozca las llaves para tener acceso al contenido del mismo ...  en windows se usan programas de pago como powerdvd o similares.

en linux que todo es open , lo que se hace es añadir una .cfg  , que junto de la libreria libaacs , pueden hacer lo mismo que el citado programa anterior.

La pega esta en que ese cfg es una lista de llavez , para blurays concretos , con lo que es posible que tengas 3 discos bluray y solo puedas leer 1 , por que dicho fichero no contiene la llave.

no se con que frecuencia se actualiza dicho fichero ...pero he mirado el actual de wifislax, y soporta unos 2500 discos bluray , y el fichero actual soprota mas de 5000 ...   ;D


asi que he decidido crear un updater , que lea el fichero online y usare la cantidad de llaves que van anotadas en el cfg , para poner la version del paquete y contrastar con la version local del fichero.


si se actualiza mucho  ( todos los dias) ..lo blacklistearemos en el updater gui , para que asi no de guerra y el usuario lo actualice si quiere a mano desde el menu.


Código: [Seleccionar]
#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150919

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
f_variables(){
. /opt/wifislax-updaters/Funciones/funciones_updater
}

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=bluray-keys
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=http://www.labdv.com/aacs/KEYDB.cfg
VERSION=`curl -s $WEB | grep VUK | head -1 | cut -d ' ' -f5`
DOWNLOAD=$WEB
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f KEYDB.cfg ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Creando paquete ..."$CIERRE"
sleep 2
mkdir -p $PKG/root/.config/aacs/
cp -rf $TMP/KEYDB.cfg $PKG/root/.config/aacs/
}

###################################
## BLOQUE PRINCIPAL DE EJECUCION ##
###################################
# Si se cierra el script inesperadamente, ejecutar la funcion de limpieza
trap f_exitmode SIGHUP SIGINT

#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Creamos directorio de trabajo
f_directorioTemporal
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del paquete
f_versionInstalada
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #184 en: 04-10-2015, 20:54 (Domingo) »
comentando algunas cosas con geminis_demon

creo tener casi decidido , crear dos nuevos valores en los updaters para simplificar otras funciones.


donde las variables especificas de cada script , donde va la url  , versión y todo eso , voy a añadir dos mas.


EXTENSION=
SOURCES=


donde extensión será pues la extensión del fichero a bajar , algo que varia en cada script
sources serán el archivo a bajar + EXTENSION


con eso se podrán automatizar de una sola , las partes de descargar fichero , descomprimir ,comprobar si se descargo ya el fichero y vendrá bien para otra cosa que hay en mente


verificar que aria2c es  "usable"  , si no lo es, o no esta, se usara wget para la descarga de ficheros...asi aunque se rompa aria, los updaters pueden seguir trabajando , incluso para recompilar lo roto descargando con wget.

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #185 en: 04-10-2015, 21:45 (Domingo) »
para actualizar masivamente la fecha de los updaters me he hecho este script ... cutre pero que hace lo que necesito.


Código: [Seleccionar]
#!/bin/bash

mv -f /opt/wifislax-updaters/Funciones/funciones_updater /opt/wifislax-updaters/Funciones/funciones

for x in `find "/opt/wifislax-updaters" -type f -name "*_updater"` ; do
FECHA=`date +"%Y%d%m"`
FECHASCRIPT=`grep -r 'SCRIPT_VERSION=' $x | head -1`
sed -i "s/SCRIPT_VERSION=$FECHASCRIPT/SCRIPT_VERSION=$FECHA/g" $x
done

mv -f /opt/wifislax-updaters/Funciones/funciones /opt/wifislax-updaters/Funciones/funciones_updater

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #186 en: 04-10-2015, 22:03 (Domingo) »
lo que va a ir de foirma   "general" , en funciones


Código: [Seleccionar]
# Definimos gestor de Descarga
f_gestor(){
ARIA=`aria2c --version | grep -o Copyright | head -1`
if [ $ARIA = Copyright ]; then
GESTOR="aria2c -x 3 "
else
GESTOR="wget -c "
fi
}

# Descargar sources
f_download(){
if [ ! -f $SOURCES ]; then
$GESTOR $DOWNLOAD
fi
}


luego cada updater ya lleva su linea $DOWNLOAD


ya lo tengo operativo en funciones ...ahora me toca patear los scripts para ver que ajuste necesita cada uno ...   :-\
« Última modificación: 04-10-2015, 22:12 (Domingo) por USUARIONUEVO »

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2378
  • Prácticas precisas precisan práctica
Re: wifislax-updaters HILO 2
« Respuesta #187 en: 04-10-2015, 22:53 (Domingo) »
Piensa en lo que hablamos de ahorrar código, no hacen falta tantas funciones ni tantas variables, además cuanto menos código hay, luego es mas fácil leer el script.

La comprobación de si existe aria2c puede ir perfectamente dentro de la función de descarga, y el comando que comprueba si el ejecutable está disponible puede ir dentro del "if".

Código: [Seleccionar]
# Descargar sources
f_download(){
if [ "$(aria2c --version 2>/dev/null)" ]; then
GESTOR="aria2c -x 3 "
else
GESTOR="wget -c "
fi
if [ ! -f $SOURCES ]; then
$GESTOR $DOWNLOAD
fi
}

Incluso se puede hacer lo mismo en 2 líneas:

Código: [Seleccionar]
# Descargar sources
f_download(){
[ "$(aria2c --version 2>/dev/null)" ]&&GESTOR="aria2c -x 3 "||GESTOR="wget -c "
[ ! -f $SOURCES ]&&$GESTOR $DOWNLOAD
}

Imagínate si lo hacemos así siempre, la cantidad de código que ahorramos, un script de 10000 líneas se queda en la mitad.
« Última modificación: 04-10-2015, 22:56 (Domingo) por geminis_demon »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #188 en: 05-10-2015, 00:22 (Lunes) »
me quedo con la primera ..por que hay updaters que no pueden usar aria ... como el de hydra que sale que no tienes certificado de no se que , y me toca tirar de wget --no-check-certificate



Código: [Seleccionar]
# Descargar sources
f_download(){
if [ "$(aria2c --version 2>/dev/null)" ]; then
GESTOR="aria2c -x 3 "
else
GESTOR="wget -c "
fi
if [ $PRGNAM = hydra ]; then
GESTOR="wget -c --no-check-certificate "
fi
if [ ! -f $SOURCES ]; then
$GESTOR $DOWNLOAD
fi
}
« Última modificación: 05-10-2015, 00:25 (Lunes) por USUARIONUEVO »

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2378
  • Prácticas precisas precisan práctica
Re: wifislax-updaters HILO 2
« Respuesta #189 en: 05-10-2015, 00:26 (Lunes) »
Okay.

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #190 en: 05-10-2015, 00:39 (Lunes) »
estoy testeando la categoria

Auditoria

si estan todos ok , subo esos al git + funciones_updater


lo bueno es que como todo va encerrado en funciones ...no afecta en nada al resto ..se pueden ir adaptando tranquilamente por que aun usan sus funciones internas de descarga y tal. ;D


pero voy subir esa categoria , asi miras como queda la cosa, por que el updater gui necesitara algun ajuste.


ARCHIVO  ...sera sustituido por  SOURCES y añadida en todos los updaters posibles.
EXTENSION , definira la extension de las sources , asi a la hora de descomprimir y tal puedo dejar la plantilla casi hecha.


DESCARGA=   pasa a ser en todos  DOWNLOAD=
« Última modificación: 05-10-2015, 00:46 (Lunes) por USUARIONUEVO »

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2378
  • Prácticas precisas precisan práctica
Re: wifislax-updaters HILO 2
« Respuesta #191 en: 05-10-2015, 00:59 (Lunes) »
Vale pues avísame y actualizo y añado a la gui las variables nuevas.

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #192 en: 05-10-2015, 01:02 (Lunes) »
ys estan arriba

Auditoria + funciones_updater


sobra comentar ,pero por si acaso

F_download

pasa a ser

f_download


f minuscula para funciones en funciones_updater  F mayuscula para las funciones propias del script ...esta aclarado en los propios upaters pero por si acaso.
« Última modificación: 05-10-2015, 01:14 (Lunes) por USUARIONUEVO »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #193 en: 05-10-2015, 01:38 (Lunes) »
huis ...   ;D


en todos los scripts , este code acaba igual

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 1
rm -rf $PRGNAM-$VERSION
tar xvf $SOURCES
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
 \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 -o -perm 511 \) \
 -exec chmod 755 {} \; -o \
 \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
 -exec chmod 644 {} \;




creo que puede ir a funciones_updater

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2378
  • Prácticas precisas precisan práctica
Re: wifislax-updaters HILO 2
« Respuesta #194 en: 05-10-2015, 02:41 (Lunes) »
Ya lo tengo, puedes continuar actualizando los demás updaters.

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #195 en: 05-10-2015, 03:31 (Lunes) »
Ya lo tengo, puedes continuar actualizando los demás updaters.


ok , pero lo ultimo que dije de ese trozo de code comun , ya lo estoy metiendo al funciones tambien ...

la parte que hara eso , sera

f_compilar

Desconectado geminis_demon

  • Colaborador
  • *
  • Mensajes: 2378
  • Prácticas precisas precisan práctica
Re: wifislax-updaters HILO 2
« Respuesta #196 en: 05-10-2015, 03:37 (Lunes) »
Pero ese code lo que hace es extraer no??

f_extraer me parece mas descriptivo  ;D

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #197 en: 05-10-2015, 03:48 (Lunes) »
Pero ese code lo que hace es extraer no??

f_extraer me parece mas descriptivo  ;D

las funciones quedan

f_compilar    PRE-COMPILACION ...descomprime y prepara
F_compilar   COMPILACION

Hace un momento acabo de actualizar la categoria Auditoria ...

Ahora ya si , queda como esta , y estoy retocando la de desarrollo ... con el mismo fin.

he repferido ahora que ya estoy liado y los voy a abrir todos igualmente.
« Última modificación: 05-10-2015, 03:49 (Lunes) por USUARIONUEVO »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #198 en: 05-10-2015, 05:21 (Lunes) »
acabo de subir la categoria Internet ...  

recomiendo a quien siga el trasteo actualizar con git clone , por si algun updater no cambio la fecha , asegurarse de tener los del git,


juegos actualizada ...

he empezado librerias, pero ya pa mañana que llevo 6 horas con esto  :-\
« Última modificación: 05-10-2015, 05:57 (Lunes) por USUARIONUEVO »

Conectado USUARIONUEVO

  • Moderador
  • *
  • Mensajes: 15515
Re: wifislax-updaters HILO 2
« Respuesta #199 en: 05-10-2015, 19:51 (Lunes) »
Menudo trabajo de chinos ....   ^-^

Pero reconozco que voy aprenidendo cosillas.


Me ha gustado mucho , saber que puedo enlazar tantos comandos como quiera ,... si falla uno , intenta el siguiente ..y asi hasta dar con uno que funcione.

1 || 2 || 3 || 4

pensaba no se podian enlazar mas de dos, pero ... tantos como quiera y queda bastante elegante.

tenga casi acabadas las librerias + funciones   ... que espero no tener que seguir añadiendo , aunque no ha crecido mucho ... y se ha ahorrado mogollon de lineas en los updaters , algunos han queda en casi nada de code ...  ;D ;D ;D


#Preparamos entorno
f_compilar(){
   if [ ! -z $SOURCES ]; then
   echo ""
   echo "$VERDE"Descomprimiendo ..."$CIERRE"
   sleep 3
   rm -rf $PRGNAM-$VERSION
   if [ ! -z $EXTENSION ]; then
   if [ $EXTENSION = zip ]; then
   unzip $SOURCES
   else
   tar xvf $SOURCES || tar xvf $SRCNAM-$VERSION.$EXTENSION || tar xvf $PRGNAM-src-$VERSION.$EXTENSION
   fi
   fi
   cd $TMP/$PRGNAM-$VERSION || cd $TMP/$SRCNAM-$VERSION || cd $TMP/$PRGNAM || cd $TMP/$PRGNAM-$VERSION-$SRCNAM || cd $TMP/$SRCNAM
   fi
   chown -R root:root .
   find -L . \
   \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
     -o -perm 511 \) -exec chmod 755 {} \; -o \
   \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
   -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
}