Seguridad Wireless - Wifi

Suite Seguridad Wireless => Colaboracion y desarrollo de nuestras lives => Mensaje iniciado por: Fr3dY en 10-09-2014, 00:00 (Miércoles)

Título: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 00:00 (Miércoles)
Buenas,

Hoy le he echado un vistazo a los updaters y creo que sería interesante crearlos de una forma más "modular", creando funciones, aprovechando el código común y dejando en los scripts únicamente las funciones concretas de cada uno.
De esta forma, cualquier modificación será más sencilla, y si afectasen a la parte común sólo habría que tocar en un fichero.

He cogido los 2 primeros que he visto (aircrack-ng y armitage) y los he convertido a este nuevo formato, decidme qué os parece.
Además, he puesto la comprobación de conexión a internet como primer paso, ya que ciertas variables hacen uso de la conexión para ver la VERSION, REVISION, etc.

Si os gusta, puedo reescribir poco a poco todos los demás (los que vayáis a crear nuevos, podéis hacerlos directamente en este formato).


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

# Script by www.seguridadwireless.net

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
rm -Rf $TMP &>/dev/null
exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
clear
echo ""
echo "$BLANCO                *****************************$CIERRE"
echo "$VERDE                    Instalador/Actualizador   $CIERRE"
echo "$VERDE                       para el programa       $CIERRE"
echo "$CYAN                         $PRGNAM               $CIERRE"
echo "$VERDE                                              $CIERRE"
echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
echo "$BLANCO                *****************************$CIERRE"
echo ""
sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
if [ "$(ping google.com -c1 2>/dev/null)" ]; then
echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
echo ""
else
echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
echo ""
sleep 5
exit 0
fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
DIRECTORIO=$(pwd)
SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
echo
echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
echo ${ROJO}NUEVA VERSION$CIERRE
echo
echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
echo
echo ${CYAN}Actualizando ${PRGNAM}_updater
curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
echo ${ROJO}LISTO$CIERRE
sleep 3
$0
exit
fi
fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
ARCH=$1
if [ -z "$ARCH" ]; then
 case "$( uname -m )" in
i?86) export ARCH=i486 ;;
arm*) export ARCH=arm ;;
  *) export ARCH=$( uname -m ) ;;
 esac
fi

if [ "$ARCH" = "i486" ]; then
 SLKCFLAGS="-O2 -march=i486 -mtune=i686"
 LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
 SLKCFLAGS="-O2 -march=i686 -mtune=i686"
 LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
 SLKCFLAGS="-O2 -fPIC"
 LIBDIRSUFFIX="64"
else
 SLKCFLAGS="-O2"
 LIBDIRSUFFIX=""
fi

set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
echo ""
echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
sleep 3
echo ""
echo "__________________________________________"
echo ""
echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION-r$REVISION"$CIERRE""
echo ""
echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
read junk
echo ""
fi

# Si el sistema tiene una version anterior se eliminara
if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
f_eliminaVersion
fi
}

# Elimina una version anterior
f_eliminaVersion() {
echo ""
echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
sleep 5
removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
}


# Creamos xzm , instalamos y salimos
f_tareasFinales() {
echo ""
echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
sleep 5
cd $PKG
stripdir $PKG
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-r$REVISION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-r$REVISION-$ARCH-$BUILD$TAG.xzm /
rm -Rf $TMP &>/dev/null
clear
echo ""
echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION-r$REVISION"$CIERRE""
echo ""
echo "$VERDE"Las tareas han finalizado"$CIERRE"
sleep 3
echo ""
echo "$VERDE"Bye Bye"$CIERRE"
echo ""
sleep 3
exit 0
}


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140827


############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
DIR="${BASH_SOURCE%/*}"
if [[ ! -d "$DIR" ]]; then DIR="$PWD"; fi
. "$DIR/funciones.sh"


############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
PRGNAM=aircrack-ng
VERSION=`curl -s http://svn.aircrack-ng.org/trunk/VERSION`
REVISION=`curl -s http://svn.aircrack-ng.org/trunk/ | grep -i revision | head -1 | cut -d ":" -f 1 | cut -d ' ' -f4`
SVN="svn co http://svn.aircrack-ng.org/trunk/"
}

# Compilamos
F_compila() {
cd $TMP/trunk
echo $CYAN
echo "Compilamos las sources de$VERDE $PRGNAM-$VERSION-r$REVISION"
sleep 3
make unstable=true prefix=/usr sqlite=true libnl=true
sleep 3
}

# Instalamos para que funcione el oui update
F_makeInstall() {
make prefix=/usr install
}

# Actualizamos la oui.list
F_actualizaOUI() {
echo $VERDE
echo "Actualizando aircrack oui.list ...."
echo $AMARILLO
airodump-ng-oui-update
sleep 2
}

# Instalamos
F_instala() {
make unstable=true prefix=/usr sqlite=true libnl=true DESTDIR=$PKG install &>/dev/null
mkdir -p $PKG/etc/aircrack-ng/ &>/dev/null
cp /etc/aircrack-ng/airodump-ng-oui.txt $PKG/etc/aircrack-ng/airodump-ng-oui.txt &>/dev/null
}


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

#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Compilamos
F_compila
#Instalamos para que funcione oui update
F_makeInstall
#Actualizamos oui.list
F_actualizaOUI
#Instalamos
F_instala
#Creamos xzm , instalamos y salimos
f_tareasFinales


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140811

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
DIR="${BASH_SOURCE%/*}"
if [[ ! -d "$DIR" ]]; then DIR="$PWD"; fi
. "$DIR/funciones.sh"

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
  WEB=http://www.fastandeasyhacking.com/download
  VERSION=`curl -s $WEB | grep .tgz | cut -d "/" -f2 | cut -d "." -f-1 | cut -d "e" -f 2`
  REVISION=0
  PRGNAM=armitage
}

# Comprobar dependencias
F_dependencias() {
if [ -d /opt/metasploit ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"metasploit"$CIERRE: $EXIST"
if [ ! -d /opt/metasploit ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 5
exit 0
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 5
fi
}


# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $PRGNAM$VERSION.tgz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$PRGNAM$VERSION.tgz
fi
}

#Descomprime el fichero descargado
F_descomprime() {
# Descomprimimos el fichero descargado
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM$VERSION.tgz
mkdir -p $PKG/opt
mv -f $TMP/$PRGNAM $PKG/opt
}

# Creamos la ruta, el fichero desktop y copiamos icono a una ruta mejor
F_desktop() {
mkdir -p $PKG/usr/share/{applications/wifislax/Testing,pixmaps}
cp -rf $PKG/opt/armitage/armitage-logo.png $PKG/usr/share/pixmaps/$PRGNAM.png
# Ahora creamos el fichero desktop
echo "[Desktop Entry]
Categories=testing
Exec=/opt/armitage/armitage
Icon=armitage
Name[es]=Armitage
Name=Armitage
Path=/opt/armitage/
StartupNotify=true
Terminal=false
Type=Application
X-KDE-SubstituteUID=false
" > $PKG/usr/share/applications/wifislax/Testing/$PRGNAM.desktop
}


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

#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Comprobamos dependencias necesarias
F_dependencias
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Creamos ficheros de desktop/icono
F_desktop
#Creamos xzm , instalamos y salimos
f_tareasFinales


Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 12:12 (Miércoles)
holas, ya le hechare un vistazo mas a fondo , pero a priori aclrar que lo de las variables arriba del todo , incluso antes que internet es a posta , aunque parezca desordenado , es supercomodo ,tenerlas todas juntas arriba ..accesibles.

a fin de cuentas no tienen efecto hasta que son reclamadas ... y antes de nada se hace lo de testear internet, asi que es solo cuestión de gustos , vk496 me dijo lo mismo , yo personalmente seguire como hasta ahora, arriba todos a la vista rápida.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 12:16 (Miércoles)
OK, puedes poner la funcion F_variables en la parte más alta del script, por eso no hay problema ;)




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 10-09-2014, 12:37 (Miércoles)
Mas que cambiar el orden de las variables, lo que Fr3dY intenta es que no se repita siempre lo mismo en todos los scripts, ha hecho como una "librería" que contiene las variables y funciones que son genéricas para todos los updaters, y esa librería es llamada al principio de cada updater.

A mi me gusta porque está todo mas ordenado y limpio, y como bien dice cuando tengas que arreglar algo solo lo tienes que cambiar en la librería, no tienes que modificar todos los updaters uno por uno.

Me parece una buena idea.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 13:04 (Miércoles)
acabo de fijarme en este..

funciones.sh:

pero como digo tengo que mirarlo y testear que funca bien...además de entenderlo , quiero entenderlo , por que sino me moriré de asco...  ;D


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 13:07 (Miércoles)
Ese fichero funciones.sh es la "librería" que contiene las funciones y definiciones comunes a todos los scripts, y se carga al comienzo de cada updater.
Cualquier duda, me preguntas y te ayudo con lo que sea.




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 13:19 (Miércoles)
voy pillando el concepto , ...

pero tendre que ir en cuidado , ... alguno lleva una de esas funciones globales, modificada específicamente para ese script ...por algún motivo.


el script de aircrack-ng era bastante suyo , y tenia varias funciones modificadas esplicitamente por su culpa ...  ;)


entonces debería hacer un alto , y conducirlos todos a este nuevo formato , la verdad seria mucho mas comodo , modificar solo un script que tenga las globales genéricas , como lo de buscar el internet, versión de script  ...  etc.


justo hoy he terminado con uno bastante complicado ( no por el code ) , como es el ati_updater  , instala y genera el driver ati ... aunque es con una versión fija ...la 14.6 que es el que pide el ultimo hashcat , creo eso debería seguir asi , .. e ir yo actualizando el script acorde al driver que pida hashcat ..a fin de cuentas es la razón de su existencia.


______________________________________________________________________________________


Bueno , ... pues STOP , a escribir nuevos updaters , hasta tener esto portado al nuevo sistema.

yo hasta la noche no puedo ponerme con esto ...

Fr3dY  gracias mil   >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 13:20 (Miércoles)
perdón por el re-post  , hoy actualice las carpeta de scripts ..

voy a añadirla la ruta al post de consultas de desarrollo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 13:23 (Miércoles)
Yo hasta esta tarde tampoco podré seguir con el tema. Continuaré por los de la carpeta 'Auditorias' (así no nos 'solapamos').




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 13:25 (Miércoles)
vamos a ordenarnos un poco


como Fr3dY a empezado a portar la carpeta Auditores ...

si le parece bien le dejamos esa a el.


y para no parecer vago , me pido una con mas de 2 scripts ... me pido Sistema


Si alguien se apunta , (geminis o vk496 ) , por favor avisad de que carpeta cogéis ... para no duplicar trabajos.

si Fr3dY por lo que sea no le apetece , que lo diga , cada uno que deje sun comment para intentar no hacer dos personas lo mismo y tener mas o menos claro lo que hay o no hecho.


gracias a todos.

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 13:26 (Miércoles)
Yo hasta esta tarde tampoco podré seguir con el tema. Continuaré por los de la carpeta 'Auditorias' (así no nos 'solapamos').




Saludos

Estaba escribiendo eso mismo ...  ;)

el que vaya a empezar algo que avise, asi como si no puede continuarlo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-09-2014, 14:12 (Miércoles)
Yo me cojo Librerías o Juegos.... pero me lo tengo que pensar  >:D >:D >:D >:D ;D ;D ;D ;D

Pongamonos serios. xD

Yo cogeré Internet.

@USUARIONUEVO... Cambia la ruta de los scripts, leñe!  ;D

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 14:15 (Miércoles)

@USUARIONUEVO... Cambia la ruta de los scripts, leñe!  ;D


no entiendo eso ...  ¿ que no los ponga en /opt ?¿

o lo del menú ?¿

Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-09-2014, 14:20 (Miércoles)
El menú XD

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 14:23 (Miércoles)
Tened en cuenta que para la prueba de ayer, indiqué que el script "funciones.sh" se cargase desde la misma ruta en la que está el script lanzador en cuestión (mediante el DIR=...).
Tal y como están alojados los scripts en el sistema de ficheros, este método no serviría a menos que creásemos enlaces simbólicos a "funciones.sh" dentro de cada carpeta.

Para corregirlo, podemos indicar la ruta completa de "funciones.sh", o meter todos los updaters en una misma carpeta... @USUARIONUEVO, cómo lo ves?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 14:30 (Miércoles)
los scripts están en carpetas, por que después aparecen en submenús igual a las carpetas...

el fichero funciones.sh , lo meteré en

/opt/wifislax-scripts

y de hay simbólicos a todas las de updaters y punto.

o

mejor todavía , dentro de la misma ruta

/opt/wifislax-updaters

crear la carpeta funciones y de hay ...simbólicos a tuti plen ...asi todo en la misma carpeta.

/opt/wifislax-updaters/Funciones/funciones.sh

asi quedara ...



AGRADECERIA ANTES DE QUE TOQUEIS QUE OS SINCRONICEIS LOS SCRIPTS CON EL FTP

mas que nada , por que no sea que hagamos el trabajo sobre una versión vieja de algún script ... y reintroduzcamos los bugs reparados.  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 14:33 (Miércoles)
juas , funciones.sh  no lleva versión del script ...   ^-^
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 14:34 (Miércoles)
juas , funciones.sh  no lleva versión del script ...   ^-^

Ponle la fecha de ayer mismo ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-09-2014, 14:35 (Miércoles)
Creo que a wifislax-updater_updater no le va a gustar eso  ^-^

/opt/wifislax-updaters/Funciones/funciones.sh

Crearía una carpeta de mas en el menu.

Creo que lo mejor es ponerlo en /opt/wifislax-updaters/funciones.sh

y cargarlo en los scripts mediante:

../funciones.sh

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 10-09-2014, 14:41 (Miércoles)
El funciones.sh lo puedes poner donde quieras, despues un simbolico en /usr/bin, y despues para llamarlo en los scripts se puede hacer sin especificar ruta.

Código: [Seleccionar]
. funciones.sh

Pero si pones el simbolico en /usr/bin mejor ponerle un nombre que lo identifique mejor, porque funciones.sh es muy genérico, funciones_updater.sh o algo así sería mas practico.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 14:52 (Miércoles)
ok , lo pondré como digo

/opt/wifislax-updaters/Funciones/funciones.sh

y un simbolico a usr/bin  para poder ejecutarlo sin dilemas ni PATH ni nada.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-09-2014, 17:05 (Miércoles)
Una petición @USUARIONUEVO:

En kwrite:

Preferencis > Configurar Editor > Tipos de letra y colores > Estilos de texto realzados > OtherCommand

Por lo que mas quieras, cambia el color. Trabajar en un editor oscuro con funciones o programas "desconocidos" para el editor aun mas oscuras se hace imposible. Algo clarito porfavor

Gracias

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 17:32 (Miércoles)
te refieras a esos comandos que salen morado oscuro ..supongo y que da asquito por que no se ven..

mirare algo amarillito no muy chillon o algunb marron claro o algo asi que se vea.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-09-2014, 17:39 (Miércoles)
Gracias  >:(

Cuando hacía mis proyectos, me dejaba la vista en eso xD

He modificado funciones.sh. Marco en negrita las zonas que he cambiado

Citar
#!/bin/bash

# Script by www.seguridadwireless.net

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-2)
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 5
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}


# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 5
   cd $PKG
   stripdir $PKG 2>/dev/null
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$TAG.xzm /
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
    if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi

   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-09-2014, 17:51 (Miércoles)
dropbox_updater según el nuevo estandar

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140910

############################################################
## Funciones comunes. Su nombre empieza por f_ ##
############################################################
. /opt/wifislax-updaters/Funciones/funciones.sh

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
  WEB=https://linux.dropbox.com/packages/fedora/
  ARCHIVO=$(curl -s https://linux.dropbox.com/packages/fedora/ | grep dropbox| sed -e 's/\(<[^<][^<]*>\)//g' | awk '{print $1}' | sort -r | grep i386 -m1)
  VERSION=$(echo $ARCHIVO | cut -d "-" -f3,4 | cut -d "." -f1,2,3)
  PRGNAM=dropbox
}


# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $ARCHIVO ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$ARCHIVO
fi
}

#Descomprime el fichero descargado
F_descomprime() {
# Descomprimimos el fichero descargado
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rpm2dir $ARCHIVO $PKG
}


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

#Comprobamos conexion a Internet
f_comprobarConexion
#Inicializamos las variables del script
F_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Creamos xzm , instalamos y salimos
f_tareasFinales

Hoy no creo que pueda hacer muchos....

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 22:57 (Miércoles)
por si alguien quiere customizarse los colores de kwrite al abrir scripts ...

una vez abierto kwrite

preferencias -->> configurar editor -->> tipos de letra y colores


hay podeis elegir vuestros colores

despues si estais en modo live y quereis conservar vuestra config ..hay que salvar el fichero

katesyntaxhighlightingrc


ya sabeis haceis una carpeta con la ruta exacta de como estaria el fichero original ...

mkdir -p /root/Desktop/Configuracion_kwrite/root/.kde/share/config/
cp -rf /root/.kde/share/config/katesyntaxhighlightingrc /root/Desktop/Configuracion_kwrite/root/.kde/share/config/
dir2xzm o clik derecho sobre la carpeta del escritorio y crear xzm sin log.



plan b , vais a /mnt/live/memory/changes click derecho sobre changes , y crear xzm

al acabar os lo llevais al escritorio , click derecho extraer  ... y borrais todo menos la ruta y fichero que interesa.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 10-09-2014, 23:15 (Miércoles)
Citar
katesyntaxhighlightingrc

¿Ese es el nombre real del fichero o lo has codificado en base64?  ;D Vaya nombrecito... parece la clave por defecto de un roputer de telefonica  >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 23:17 (Miércoles)
al final tengo dilema con el funciones.sh y su "sitio" ideal.


aunque la idea no me gusta mucho , lo mas "comodo" , seria desmontar las carpetas internas de la ruta /opt y meter los scripts todos directsamente en

wifislax-updaters a la raiz, junto con el funciones.sh


mas que nada por que entendi que lo importante es que deben estar en la misma ruta  ...funciones.sh y script


 ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 23:18 (Miércoles)
Citar
katesyntaxhighlightingrc

¿Ese es el nombre real del fichero o lo has codificado en base64?  ;D Vaya nombrecito... parece la clave por defecto de un roputer de telefonica  >:D


si , asi se llama, .... ya podia yo salvar el kwriterc  ;D  , ese es el que guarda las opciones "scripting" ...no se por que no se guardara todo en el kwriterc o katerc


__________________________________________

tema aparte , hay algunos scripts que no estan portados al 100x100 al sistema de trabajo , ... en la carpeta navegadores el de firefox y chrome , estan hechos de otra forma , .. solo estan parcialmente portados.

el de chorme , creo tal vez seria mejor opcion ofreciera solo la version estable del navegador.



PD: OS ESTAIS DEJANDO LO MAS IMPORTANTE SIN CORREGIR ... LA FECHA DEL SCRIPT QUE USAMOS COMO SISTEMA DE VERSION "HAY QUE ACTUALIZAR LA FECHA"
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 23:25 (Miércoles)
JODDERRR , .... 


. /opt/wifislax-updaters/Funciones/funciones.sh


VENGA ,hagamoslo asi ...

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 10-09-2014, 23:28 (Miércoles)
 ;D ;D ;D ;D ;D ;D

Venga, lo dejamos fijo en esa ruta y terminamos con tu agonía jajajajaj



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 23:31 (Miércoles)
;D ;D ;D ;D ;D ;D

Venga, lo dejamos fijo en esa ruta y terminamos con tu agonía jajajajaj



Saludos

soy bastante maniatico con tener las cosas ordenadas , (en el live) , es para compartir con mucha gente ,debe ser un sistema serio y ordenado , en la medida de lo posible.

de los que ya habeis publicado , no os preocupeis, ya les corrijo la ruta y la fecha a los que lo necesiten.

 ;)


no subire iso nueva , hasta tener todos portados.


_____________________________________________________________

primera prueba, primer fail  .... 

como no , el aircrack_updater , que suyo es el muy cabr0n.

Código: [Seleccionar]
/opt/wifislax-updaters/Auditores/aircrack_updater: línea 27: cd: /tmp/build//trunk: No existe el fichero o el directorio
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 10-09-2014, 23:44 (Miércoles)
Citar
el de chorme , creo tal vez seria mejor opcion ofreciera solo la version estable del navegador.

No se si estas esperando a que lo corrija yo por ser el autor.. pero yo la verdad es que no tengo tiempo ni ganas, porque cuando coja un rato tengo otras cosas en la cabeza a las que meterle mano, como al geminisauditor, así que os doy via libre para que lo adapteis al estandar de los demás.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-09-2014, 23:49 (Miércoles)
Citar
el de chorme , creo tal vez seria mejor opcion ofreciera solo la version estable del navegador.

No se si estas esperando a que lo corrija yo por ser el autor.. pero yo la verdad es que no tengo tiempo ni ganas, porque cuando coja un rato tengo otras cosas en la cabeza a las que meterle mano, como al geminisauditor, así que os doy via libre para que lo adapteis al estandar de los demás.

ok , ... en general son los updaters primeros , ...el de bully tampoco esta portado al 100x100  :-\


____________________________

respecto al problemilla del script de aircrack ...

# Compilamos
F_compila() {
   cd $TMP/trunk
   echo $CYAN
   echo "Compilamos las sources de$VERDE $PRGNAM-$VERSION-r$REVISION"
   sleep 3
   make unstable=true prefix=/usr sqlite=true libnl=true
   sleep 3
}


no puedo compilar ... si no bajo el code primero   ;D


# creo que ha habido un salto , ...falta este code

# Descargamos source code del svn , ANTES comprobamos que esta operativo el sitio svn
TEST_SVN=`svn info http://svn.aircrack-ng.org | grep -i url | cut -d ":" -f1`
if [ $TEST_SVN = URL ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION-r$REVISION"$CIERRE"
sleep 5
echo ""
$SVN
else
echo "$ROJO"El sitio svn de aircrack-ng no responde"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
echo ""
sleep 5
exit 0
fi


tambien faltaban las rutas de trabajo ...

# Directorios de trabajo
F_directorios() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}
    -->> MENTIRA , estan mas abajo ,solo falta poner la parte de probar el svn y descargar svn
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 00:08 (Jueves)

funciones.sh

  dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$TAG.xzm /


  dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 01:24 (Jueves)
grrrrrrrrrrrrrrrrrrrrrrrr


tenemos un problema ...

cuando acaba un script y hace

rm -Rf $TMP &>/dev/null

se esta cepillando todo el

/tmp/build

por que ejecutamos primero el funciones ... y la variable $PRGNAM , queda vacia, ya que esta despues ...

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 01:54 (Jueves)
Dejo los tres que habian hechos , retocados para que no se cepillen todo el tmp y poder asi ejecutar los scripts que queramos a la vez.

POR FAVOR , fijaros , he cambiado el orden inicial , perimero las variables del script donde aparece el name de programa que necesita despues las variables globales ...  que dicho sea de paso , lo he convertido en funcion , por que si no , se ejcuta al inicio l solo y la tenemos otra vez, hay que encerrar la funcion y llamarla a placer.


_____________________________________________________________________________________________________________________

aircrack_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911


############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=aircrack-ng
VERSION=`curl -s http://svn.aircrack-ng.org/trunk/VERSION`
REVISION=`curl -s http://svn.aircrack-ng.org/trunk/ | grep -i revision | head -1 | cut -d ":" -f 1 | cut -d ' ' -f4`
SVN="svn co http://svn.aircrack-ng.org/trunk/"
}

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

# Version instalada custom
F_versionInstalada_AIrcrack() {
if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
echo ""
echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
sleep 3
echo ""
echo "__________________________________________"
echo ""
echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION-r$REVISION"$CIERRE""
echo ""
echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
read junk
echo ""
fi

# Si el sistema tiene una version anterior se eliminara
if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
f_eliminaVersion
fi
}

# Verificamos
F_verificar() {
TEST_SVN=`svn info http://svn.aircrack-ng.org | grep -i url | cut -d ":" -f1`
if [ $TEST_SVN = URL ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION-r$REVISION"$CIERRE"
sleep 5
echo ""
$SVN
else
echo "$ROJO"El sitio svn de aircrack-ng no responde"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
echo ""
sleep 5
exit 0
fi
}

# Compilamos
F_compila() {
cd $TMP/trunk
echo $CYAN
echo "Compilamos las sources de$VERDE $PRGNAM-$VERSION-r$REVISION"
sleep 3
make unstable=true prefix=/usr sqlite=true libnl=true
sleep 3
}

# Instalamos para que funcione el oui update
F_makeInstall() {
make prefix=/usr install
}

# Actualizamos la oui.list
F_actualizaOUI() {
echo $VERDE
echo "Actualizando aircrack oui.list ...."
echo $AMARILLO
airodump-ng-oui-update
sleep 2
}

# Instalamos
F_instala() {
make unstable=true prefix=/usr sqlite=true libnl=true DESTDIR=$PKG install &>/dev/null
mkdir -p $PKG/etc/aircrack-ng/ &>/dev/null
cp /etc/aircrack-ng/airodump-ng-oui.txt $PKG/etc/aircrack-ng/airodump-ng-oui.txt &>/dev/null
}

# Creamos xzm , instalamos y salimos
F_tareasFinales_Aircrack() {
echo ""
echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
sleep 5
cd $PKG
stripdir $PKG 2>/dev/null
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-r$REVISION-$ARCH-$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-r$REVISION-$ARCH-$TAG.xzm /
rm -Rf $TMP &>/dev/null
clear
echo ""
echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
echo ""
echo "$VERDE"Las tareas han finalizado"$CIERRE"
sleep 3
echo ""
echo "$VERDE"Bye Bye"$CIERRE"
echo ""
sleep 3
exit 0
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
F_versionInstalada_AIrcrack
#Creamos directorio de trabajo
f_directorioTemporal
# Verificamos
F_verificar
#Compilamos
F_compila
#Instalamos para que funcione oui update
F_makeInstall
#Actualizamos oui.list
F_actualizaOUI
#Instalamos
F_instala
#Creamos xzm , instalamos y salimos
F_tareasFinales_Aircrack



Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 01:58 (Jueves)
armitage_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140910

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
WEB=http://www.fastandeasyhacking.com/download
VERSION=`curl -s $WEB | grep .tgz | cut -d "/" -f2 | cut -d "." -f-1 | cut -d "e" -f 2`
REVISION=0
PRGNAM=armitage
}

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

# Comprobar dependencias
F_dependencias() {
if [ -d /opt/metasploit ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"metasploit"$CIERRE: $EXIST"
if [ ! -d /opt/metasploit ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 5
exit 0
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 5
fi
}


# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $PRGNAM$VERSION.tgz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$PRGNAM$VERSION.tgz
fi
}

#Descomprime el fichero descargado
F_descomprime() {
# Descomprimimos el fichero descargado
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM$VERSION.tgz
mkdir -p $PKG/opt
mv -f $TMP/$PRGNAM $PKG/opt
}

# Creamos la ruta, el fichero desktop y copiamos icono a una ruta mejor
F_desktop() {
mkdir -p $PKG/usr/share/{applications/wifislax/Testing,pixmaps}
cp -rf $PKG/opt/armitage/armitage-logo.png $PKG/usr/share/pixmaps/$PRGNAM.png
# Ahora creamos el fichero desktop
echo "[Desktop Entry]
Categories=testing
Exec=/opt/armitage/armitage
Icon=armitage
Name[es]=Armitage
Name=Armitage
Path=/opt/armitage/
StartupNotify=true
Terminal=false
Type=Application
X-KDE-SubstituteUID=false
" > $PKG/usr/share/applications/wifislax/Testing/$PRGNAM.desktop
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Comprobamos dependencias necesarias
F_dependencias
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Creamos ficheros de desktop/icono
F_desktop
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 01:59 (Jueves)
dropbox_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
WEB=https://linux.dropbox.com/packages/fedora/
ARCHIVO=$(curl -s https://linux.dropbox.com/packages/fedora/ | grep dropbox| sed -e 's/\(<[^<][^<]*>\)//g' | awk '{print $1}' | sort -r | grep i386 -m1)
VERSION=$(echo $ARCHIVO | cut -d "-" -f3,4 | cut -d "." -f1,2,3)
PRGNAM=dropbox
}

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


# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $ARCHIVO ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$ARCHIVO
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rpm2dir $ARCHIVO $PKG
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 02:00 (Jueves)
funciones.sh

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 5
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}


# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 5
   cd $PKG
   stripdir $PKG 2>/dev/null
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
    if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}
 
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 04:31 (Jueves)
Parece que ya no hay problemas ....    >:D >:(

firmwares_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
FECHA=`date +%d%m%Y`
PRGNAM=Firmwares
VERSION=$FECHA
}

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

# Descarga los firmwares mas nuevos disponibles
F_descargar() {
echo ""
echo "$VERDE"Se procede a descargar los firmwares desde kernel.org"$CIERRE"
echo "$AMARILLO"
git clone git://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
echo "$CIERRE"
}

# Creamos directorios , eliminamos sobrantes .git y movemos
F_arreglar(){
rm -Rf $TMP/linux-firmware/.git
rm -Rf $TMP/linux-firmware/LICENSE*
rm -Rf $TMP/linux-firmware/LICENCE*
rm -Rf $TMP/linux-firmware/WHENCE
rm -Rf $TMP/linux-firmware/README
rm -Rf $TMP/linux-firmware/Makefile
rm -Rf $TMP/linux-firmware/GPL-3
rm -Rf $TMP/linux-firmware/configure
mkdir -p $PKG/lib/firmware
mv $TMP/linux-firmware/* $PKG/lib/firmware/
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descarga los firmwares mas nuevos disponibles
F_descargar
#Eliminar innecesarios
F_arreglar
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-09-2014, 08:31 (Jueves)
Parece que le has cogido el gustillo... :D
Yo no se si tendré mucho tiempo hasta la semana que viene, pero haré lo que pueda.

Por cierto, en funciones.sh puse el formato $HOME/Desktop/$PRGNAM-$VERSION-r$REVISION-$ARCH-$BUILD$TAG.xzm en la función de tareasFinales, porque el updater de aircrack-ng utilizaba REVISION.
Lo añadí para que todos utilizaran el mismo standard, y a armitage le puse REVISION=0 manualmente.
¿No podríamos hacerlo así, en vez de utilizar una función específica para aircrack? ¿O el resto de updaters no utilizan REVISION?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 08:43 (Jueves)
creo que solo aircrack , usa revision ,por que la cogemos siempre de la mas actual en desarrollo del svn.

solo ese script usa revision.  ;)

ten en cuenta que si no hay revision , en el name se quedaria hay un espacio en blanco , con lo que ...

por ejemplo

VERSION=1.2
ARCH=NOARCH

SI HACEMOS

$VERSION-r$REVISION-$ARCH

se nos quedara

1.2-r-noarch

cuando debe quedar

1.2-noarch
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 08:48 (Jueves)
flash-player_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB=http://www.adobe.com/software/flash/about/
VERSION=`curl -s $WEB | grep -i "<td>11.2.*.*</td>" | head -1 | sed "s/<td>//" | cut -d "<" -f-1 | sed "s/ //g"`
PRGNAM=flashplayer-plugin
DOWNLOAD=https://fpdownload.macromedia.com/get/flashplayer/pdc/$VERSION/install_flash_player_11_linux.i386.tar.gz
}

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

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f install_flash_player_11_linux.i386.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado
F_descomprimir(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
tar xvf install_flash_player_11_linux.i386.tar.gz -C $PKG

mkdir -p $PKG/usr/lib/mozilla/plugins
mv $PKG/libflashplayer.so $PKG/usr/lib/mozilla/plugins

cd $PKG
rm -rf readme.txt
chown -R root:root $PKG
chmod -R g-w $PKG
find $PKG -type f -name "*.so" -exec chmod 0755 {} \;
}

# Creamos desktop
F_desktop(){
rm -rf $PKG/usr/share/applications/*.desktop
echo "[Desktop Entry]
Name=Adobe Flash Player
Comment=Preferences for Adobe Flash Player
Comment[es]=Preferencias para Adobe Flash Player
Exec=flash-player-properties
Icon=flash-player-properties
Terminal=false
Type=Application
StartupNotify=true
Categories=Settings" > $PKG/usr/share/applications/$PRGNAM.desktop
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado
F_descomprimir
#Creamos la entrada al menu
F_desktop
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 08:49 (Jueves)
gparted_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB=http://sourceforge.net/projects/gparted/files/gparted/
VERSION=`curl -s $WEB | grep /latest | cut -d '/' -f 8 | cut -d- -f1`
PRGNAM=gparted
}

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

# 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 5
wget $WEB/$PRGNAM-$VERSION/$PRGNAM-$VERSION.tar.bz2
fi
}

# Descomprimimos el fichero descargado
F_descomprimir(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
tar xvf $PRGNAM-$VERSION.tar.bz2
}

F_compilar(){
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 {} \;


sed -i "s:@gksuprog@ @installdir@/gparted %f:@installdir@/gparted_polkit %f:g" \
gparted.desktop.in.in

echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 5

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --disable-doc \
  --build=$ARCH-slackware-linux
 
echo ""
echo "$VERDE"Compilando ..."$CIERRE"
sleep 5

make -j$NUCLEOS
make install-strip DESTDIR=$PKG
}

# Generamos ficheros necesarios
F_extras(){
cat > com.slackware.pkexec.gparted.policy << "EOF"
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">
<policyconfig>
<action id="com.slackware.pkexec.gparted">
<message>Authentication is required to run the GParted Partition Editor</message>
<icon_name>gparted</icon_name>
<defaults>
<allow_any>auth_admin</allow_any>
<allow_inactive>auth_admin</allow_inactive>
<allow_active>auth_admin</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">/usr/sbin/gparted</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
</action>
</policyconfig>
EOF

cat > gparted_polkit << "EOF"
#!/bin/bash
if [ $(which pkexec) ]; then
pkexec --disable-internal-agent "/usr/sbin/gparted" "$@"
else
/usr/sbin/gparted "$@"
fi
EOF

# Instalamos la regla polkit
install -Dm0644 com.slackware.pkexec.gparted.policy \
$PKG/usr/share/polkit-1/actions/com.slackware.pkexec.gparted.policy

install -Dm0755 gparted_polkit \
$PKG/usr/sbin/gparted_polkit
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado
F_descomprimir
#Creamos la entrada al menu
F_compilar
#Generamos ficheros necesarios
F_extras
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 08:49 (Jueves)
hardinfo_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables(){
WEB=http://sourceforge.net/projects/hardinfo.berlios/files/
VERSION=`curl -s $WEB | grep /latest | cut -d "/" -f 7 | cut -d- -f2 | cut -d "." -f-3`
PRGNAM=hardinfo
}

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

# 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 5
wget $WEB/$PRGNAM-$VERSION.tar.bz2
fi
}

# Descomprimimos el fichero descargado
F_descomprimir(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
tar xvf $PRGNAM-$VERSION.tar.bz2
}

# Compilamos
F_compilar(){
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 {} \;

# Fix mandir
sed -i "s|share/man|man|" configure

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
--libdir=/usr/lib${LIBDIRSUFFIX} \
--sysconfdir=/etc \
--localstatedir=/var \
--mandir=/usr/man \
--build=$ARCH-slackware-linux

make || exit 1
make install DESTDIR=$PKG

rm -rf $PKG/usr/local
}
 
# El desktop original , no me gusta , creamos uno nuevo
F_extras(){
rm -rf $PKG/usr/share/applications/hardinfo.desktop
mkdir -p $PKG/usr/share/pixmaps
cp -rf $PKG/usr/share/hardinfo/pixmaps/logo.png $PKG/usr/share/pixmaps/hardinfo.png
echo "[Desktop Entry]
Name=Hardinfo
Exec=hardinfo
Icon=hardinfo
Terminal=false
Type=Application
Categories=System;
" > $PKG/usr/share/applications/hardinfo.desktop
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado
F_descomprimir
#Creamos la entrada al menu
F_compilar
#Generamos ficheros necesarios
F_extras
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-09-2014, 09:13 (Jueves)
creo que solo aircrack , usa revision ,por que la cogemos siempre de la mas actual en desarrollo del svn.

solo ese script usa revision.  ;)

ten en cuenta que si no hay revision , en el name se quedaria hay un espacio en blanco , con lo que ...

por ejemplo

VERSION=1.2
ARCH=NOARCH

SI HACEMOS

$VERSION-r$REVISION-$ARCH

se nos quedara

1.2-r-noarch

cuando debe quedar

1.2-noarch

Sí, por eso en armitage puse REVISION=0... pero si aircrack es el único que usa esa nomenclatura, no merece la pena.



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 12:58 (Jueves)
puedo hacer un invento ...

que la variable VERSION sea la suma de VERSION + REVISION

y luego en funciones un if , si PRGNAM es aircrack-ng INSTALADA= su version particular
else
la generica

 ;) :D ;D

ya lo mirare.

____________________________

ya tengo la primera parte para librarme del REVISION

ahora version dira todo

Código: [Seleccionar]
WEB=http://svn.aircrack-ng.org/trunk
VERSION=`echo $(curl -s $WEB/VERSION)-r$(curl -s $WEB/ | grep -i revision | head -1 | cut -d ":" -f 1 | cut -d ' ' -f4)`
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 13:44 (Jueves)
pues ya lo tengo arreglado

aircrack_updater ya sigue el estandar  ;D


Voy a subir al ftp los que tengo , la carpeta que hay ahora , le añadire al final -old  para tenerlos hay por si acaso necesitais mirar algo.

 ;D

Dejo la ultima version de funciones.sh con la variable para aircrack-ng

_________________________________________________________________________________

funciones.sh  11/09/2014    13:45


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140911

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 5
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}


# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 5
   cd $PKG
   stripdir $PKG 2>/dev/null
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
    if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-09-2014, 13:46 (Jueves)
OK, y pon el listado de cambios en el orden inverso! ;D




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 13:47 (Jueves)
OK, y pon el listado de cambios en el orden inverso! ;D




Saludos

osti , ya se me olvidaba otra vezzz...  

voy

_____________

Hecho , subidos scripts nuevo formato
http://www.downloadwireless.net/?dir=wifislax-updaters

Renombrada antigua carpeta a wifislax-updaters-old para que podáis consultar los de formato viejo
http://www.downloadwireless.net/?dir=wifislax-updaters-old


y el changelog ordenado por fecha.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Manuel_cdz85 en 11-09-2014, 14:27 (Jueves)
Una buena idea podria ser incluir  "WhatsApp Forensics" como herramienta forense,
y como material de oficina algun diccionario traductor.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-09-2014, 14:28 (Jueves)
Una buena idea podria ser incluir  "WhatsApp Forensics" como herramienta forense,
y como material de oficina algun diccionario traductor.

Este hilo no es de petición de módulos, hay uno en concreto para eso...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 14:32 (Jueves)
creo se refiere a algún script_updater para poder instalar algo de eso.


en cualquier caso el desarrollo de nuevos scripts esta parado , hasta acabar la migración al nuevo formato de scripts.
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 11-09-2014, 14:32 (Jueves)
Lo del diccionario traductor ya lo vi por otro hilo (me lo pido, aunque no se seguirá haciendo scripts hasta adaptar a todos al nuevo formato)

Sobre whatsapp forensics, en mi opinión actualmente no es rentable. Solo funciona bien si le pasas la base de datos limpia (y actualmente, la base se puede descifrar, pero hay que acceder a códigos que  se encuentran en lugares protegidos... Es decir, se necesita root)

Lo sé porque tengo un script a medio a acabar que utiliza esas herramientas para descifrarlo mediante preguntas, según lo que haga falta.

De todas formas, si hace falta, acisad y lo hago

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Manuel_cdz85 en 11-09-2014, 14:34 (Jueves)
Si me referia a eso newuser, bueno no sabia donde ponerlo si aqui o en el otro lado, espero se tenga en cuenta, cuando llegue el momento el tema diccionario traductor me vien genial y el del whatsApp veo que viene muy bien para el tema forense
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: Manuel_cdz85 en 11-09-2014, 14:37 (Jueves)
Lo del diccionario traductor ya lo vi por otro hilo (me lo pido, aunque no se seguirá haciendo scripts hasta adaptar a todos al nuevo formato)

Sobre whatsapp forensics, en mi opinión actualmente no es rentable. Solo funciona bien si le pasas la base de datos limpia (y actualmente, la base se puede descifrar, pero hay que acceder a códigos que  se encuentran en lugares protegidos... Es decir, se necesita root)

Lo sé porque tengo un script a medio a acabar que utiliza esas herramientas para descifrarlo mediante preguntas, según lo que haga falta.

De todas formas, si hace falta, acisad y lo hago

Salu2

A bueno pues lo dejo entonces a decision vuestra lo del  whatsApp y el tema diccionario gracias me ara falta y supongo que a muchos tambien les vendra muy bien ^^
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-09-2014, 21:08 (Jueves)
@USUARIONUEVO, creo que deberíamos tener un repositorio específico para estos scripts, porque bajar la .iso solo para eso me parece un poco excesivo.
Me conformo con que subas un .zip que se vaya actualizando con lo que vayamos posteando en el hilo, hasta que los completemos. No hace falta complicarse mucho, ¿qué te parece?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 11-09-2014, 21:23 (Jueves)
Los scripts adaptados al nuevo estandar están aquí: http://www.downloadwireless.net/?dir=wifislax-updaters

Y los antiguos aquí: http://www.downloadwireless.net/?dir=wifislax-updaters-old
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-09-2014, 22:13 (Jueves)
sigue funcionando perfectamente el script

wifislax-updaters


que directamente os bajara los nuevos y/o actualizados y os los instalara.

y sueltos , ya ha puesto geminis donde estas los nuevos y donde los viejos.

precisamente he renombrado el directorio anterior a old , para que este script se vaya directamente a la misma carpeta , solo que contiene los scripts del nuevo formato.

________________________

algo no termina de ir en el wifislax-updaters (script) , me crea el xzm  , supuestamente deberia copiar toda la carpeta

/opt/wifislax-updaters

pero no lo hace bien , ... a bajado el funciones.sh y tal ... pero no lo ha metido al xzm ...


deberia estar , la tarea es muy sencilla ..

1 -actualizar
2 - cp /opt/wifislax-updaters  /root/Desktop/updaters_nuevos/opt/wifislax-updaters

vamos copiar la carpeta entera, pero como digo algo no va bien ,por que no esta todo ....
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 12-09-2014, 00:29 (Viernes)
Cuando dices 'cp' imagino que será 'cp -R' para que copie todas las subcarpetas recursivamente, no?




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-09-2014, 00:35 (Viernes)
Cuando dices 'cp' imagino que será 'cp -R' para que copie todas las subcarpetas recursivamente, no?




Saludos

si , claro . deberia copiar toda la carpeta ,pero no se por que , crea el modulo sin las carpetas nuevas...

un copiado recursivo de la carpeta deberia estar todo ..

me di cuenta por que lo abri el xzm , y la carpeta nueva de Funciones , no estaba , ni el script ... sin embargo si que lo bajo del ftp ...o eso creo.

PD: ahora le he vuelto a probar y lo ha hecho todo ok...   ???
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-09-2014, 00:46 (Viernes)
lo que ocurre ahora es lo que dijo vk , .... genera la entrada desktop.


la funcion de generar desktop , debe excluir la carpeta FUnciones.   ;D


bueno , pues no vamos a complicarnos demasiado la vida ...   ;D


Código: [Seleccionar]
if [ -d $PKG/usr/share/applications/wifislax/Actualizadores/Funciones ]; then
rm -rf $PKG/usr/share/applications/wifislax/Actualizadores/Funciones
fi

justo antes de generar el xzm ,  y se acabo el objeto perdido ...   ^-^ >:D >:(
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 12-09-2014, 01:34 (Viernes)
Que cabrón...  Eso es hacer trampa! Jajajaja

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-09-2014, 02:10 (Viernes)
ya lo he portado del todo , ..habia algunos "vacios legales"  ..jajaja

me daba fallo si no habia updates por que la variable

CREAR_MODULO

solo pasaba a SI , si habia updates , si no habia updates la variable quedaba vacia... ( en realidad no estaba definida en ningun sitio ,excepto si habia un update)

asi que de entrada le he metido NO , ...si luego pasa SI , ya se hacen las tareas oportunas..

tabien he tocado la generacion de los desktops ...habia "tabulaciones"  (espacios en blanco) que quedan muy ordenados en el script y tal , pero se generaban los campos de los desktops con tabulaciones incluidas.

os recomiendo cuandpo se trate de insertar code TEXTO , nada de tabulaciones , ...desde el campo 0 de la linea  ...por que si no se producen errores , me paso en gparted con las policy-kit ....  hasta que me di cuenta.

para adaptarse al standar he creado la variable VERSION , y bla bla bla ...  noarch (son scripts)  ...y alguna chorrada mas.

he decidido tocar este antes ,por que es la base de todo ... es el que se encarga de controlar versiones etc...

_________________________________________________________________________________________________________

wifislax-updaters_updater

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

# Script for www.seguridadwireless.net by vk496

SCRIPT_VERSION=20140912

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB="http://downloadwireless.net"
ELDIRECTORIO="wifislax-updaters"
PRGNAM=$ELDIRECTORIO
DIRECTORIOHTML="?dir=$ELDIRECTORIO"
VERSION=`echo $(date +"%Y%m%d")`
CREAR_MODULO=NO
}

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

# Directorios de trabajo y actualizar
F_actualizar(){
mkdir -p $PKG $PKG/usr/share/applications/wifislax/Actualizadores

if [ ! -d $PKG/opt/$ELDIRECTORIO ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO
fi

echo

for carpeta in $(curl -s $WEB/$DIRECTORIOHTML | grep "item dir" | sed 's/<[^>]\+>//g'); do

for archivo in $(curl -s $WEB/$DIRECTORIOHTML/$carpeta | grep "item file" | sed 's/<[^>]\+>//g' | sed 's/^[[:space:]]*//g' | grep -vE *~$); do
echo -n "${CYAN}Buscando $archivo... $CIERRE"

if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
echo -n "${VERDE}EXISTE$CIERRE"

if [[ $LOCAL_VERSION -lt $WEB_VERSION ]]; then
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo " + ${AMARILLO}ACTUALIZADO $ROSA(${WEB_VERSION:6}/${WEB_VERSION:4:2}/${WEB_VERSION:0:4})$CIERRE"
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
else
echo -e " $BLANCO(${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4})$CIERRE"
fi
else
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
LOCAL_VERSION=$(cat $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo "${ROJO}DESCARGADO$CIERRE $BLANCO($ROSA${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4}$BLANCO)$CIERRE"
PRGNAM_CORTO=$(echo $archivo | cut -d "_" -f1)
mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores/$carpeta

echo "[Desktop Entry]
Categories=$carpeta;
Exec=sh -c \"/opt/wifislax-updaters/$carpeta/$archivo;${SHELL:-bash}\"
Icon=updaters
MimeType=
Name=$PRGNAM_CORTO
Path=/opt/wifislax-updaters/$carpeta/
Terminal=true
TerminalOptions=
Type=Application">$PKG/usr/share/applications/wifislax/Actualizadores/$carpeta/$PRGNAM_CORTO.desktop

fi

done

done

sleep 2
echo
}

# Crear estructura
F_estructura(){
if [ $CREAR_MODULO = SI ]; then

echo ${CYAN}Creando logs e instalando....$CIERRE
sleep 2

mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores $PKG/opt/wifislax-updaters
cp -Ru /usr/share/applications/wifislax/Actualizadores/ $PKG/usr/share/applications/wifislax/
cp -Ru /opt/wifislax-updaters/ $PKG/opt/

if [ -d $PKG/usr/share/applications/wifislax/Actualizadores/Funciones ]; then
rm -rf $PKG/usr/share/applications/wifislax/Actualizadores/Funciones
fi
fi
}

F_final(){
if [ $CREAR_MODULO = SI ]; then
f_tareasFinales
else
echo $VERDE
echo No hay actualizaciones para los updaters
sleep 3
echo
echo Bye Bye
echo $CIERRE
fi
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
# Directorios de trabajo y actualizar
F_actualizar
# Crear estructura
F_estructura
#Creamos xzm , instalamos y salimos
F_final
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 12-09-2014, 08:49 (Viernes)
@USUARIONUEVO, una cosilla... dices que en el script wifislax-updaters_updater la arquitectura es 'noarch' ya que son scripts, pero en la llamada a f_arquitectura no has puesto ningún parámetro.
¿No deberías haber puesto "f_arquitectura noarch"? La función establece la arquitectura si se la pasas como parámetro (en este caso sería "noarch"), y la calcula mediante uname... si no indicas nada.




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 12-09-2014, 08:49 (Viernes)
Los scripts adaptados al nuevo estandar están aquí: http://www.downloadwireless.net/?dir=wifislax-updaters

Y los antiguos aquí: http://www.downloadwireless.net/?dir=wifislax-updaters-old

Gracias! Si es que estoy fatal... :D




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-09-2014, 11:57 (Viernes)
@USUARIONUEVO, una cosilla... dices que en el script wifislax-updaters_updater la arquitectura es 'noarch' ya que son scripts, pero en la llamada a f_arquitectura no has puesto ningún parámetro.
¿No deberías haber puesto "f_arquitectura noarch"? La función establece la arquitectura si se la pasas como parámetro (en este caso sería "noarch"), y la calcula mediante uname... si no indicas nada.




Saludos


pues si que al final me lo deje sin poner ..  ;)

lo tenia puesto , pero luego no se que empece a tocar ... en realidad lo que paso es que tenia una copia en escritorio y otra en la ruta de trabajo ,y creo modifique el del scritorio y despues me lleve el otro  ;) ;) ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-09-2014, 12:44 (Viernes)
Ahora los subo al ftp


funciones.sh

con algunos extras

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140912

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 5
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}


# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 5
   cd $PKG
   stripdir $PKG 2>/dev/null
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
  /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}



jre_updater


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140912

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=jre
WEB=$(curl -s http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html | grep -E i?86 | grep tar.gz | grep linux | cut -d ":" -f4- | cut -d "\"" -f2)
ARCHIVO=${WEB##*/}
VERSION=$(echo $ARCHIVO | cut -d "-" -f 2)
}

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

# Si el paquete no existe se descargara de internet
F_download(){
echo ".oracle.com TRUE / FALSE 1906724535 oraclelicense accept-securebackup-cookie">cookie
if [ ! -f $ARCHIVO ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
wget --load-cookies=cookie $WEB
fi
}

# Empezamos a crear el paquete
F_crearpaquete(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3

mkdir -p $PKG/usr/java/ $PKG/etc/profile.d $PKG/usr/lib/mozilla/plugins/ $PKG/usr/lib/java $PKG/usr/share/applications
tar -xvf $ARCHIVO -C $PKG/usr/java/
cleandir $PKG

cd $PKG
echo "#!/bin/csh
setenv JAVA_HOME /usr/lib/java
setenv MANPATH \${MANPATH}:\${JAVA_HOME}/man
setenv PATH \${PATH}:\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin" >$PKG/etc/profile.d/jre.csh

echo "#!/bin/sh
export JAVA_HOME=/usr/lib/java
export MANPATH=\"\${MANPATH}:\${JAVA_HOME}/man\"
export PATH=\"\${PATH}:\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin\"" >$PKG/etc/profile.d/jre.sh
chmod +x $PKG/etc/profile.d/jre.sh
chmod +x $PKG/etc/profile.d/jre.csh

mv $PKG/usr/java/jre*/* $PKG/usr/lib/java/
ln -s $PKG/usr/lib/java/ $PKG/usr/lib/$(ls $PKG/usr/java/ | cut -d "/" -f1)
rm -Rf $PKG/usr/java


ln -s /usr/lib/java/lib/i386/libnpjp2.so $PKG/usr/lib/mozilla/plugins/libnpjp2.so
ln -s /usr/lib/java/lib/i386/server/libjvm.so $PKG/usr/lib/libjvm.so
sleep 3

# Entrada a escritorio
echo "[Desktop Entry]
Exec=/usr/lib/java/bin/jcontrol
Icon=sun-jcontrol.png
Name[es]=Java Control Panel
Name=Java Control Panel
Categories=Settings
StartupNotify=false
Terminal=false
Type=Application" >$PKG/usr/share/applications/sun_java.desktop
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
# Empezamos a crear el paquete
F_crearpaquete
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 04:02 (Sábado)
Ya tengo acabada la categoria Sistema , mañana subire los scripts.

He eliminado q4wine , por que con winetricks es suficiente y por que el q4wine se me antojaba hipercomplicado.
El script kernel-compiler no lo voy a portar por ser demasiado complejo y tener infinidad de variables que solo se usan hay ...  con el del driver ati , probablemente pase igual.


ME PIDO OFICINA

Mañana por la mañana actualizare el ftp
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 14:06 (Sábado)
ftp sincronizado ... categoría sistema portada , menos el kernel-updater , que creo es un poco delicado tocarlo.

el q4wine paso a mejor vida  ;D

esta noche creo podre hacer los 3 que hay en Oficina.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:24 (Sábado)
funciones.sh    13/09/2014

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140913

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 5
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}


# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 5
   cd $PKG
# Variable para acrobat reader que no puede ser stripado
   if [ ! $PRGNAM = adobe-reader ]; then
   stripdir $PKG 2>/dev/null
   fi
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
  /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 21:24 (Sábado)
Yo lo haría como en la función de f_arquitectura: si enviamos como parámetro "nostrip", no hará nada (pero el comportamiento por defecto es que haga strip).




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:24 (Sábado)
voy a necesitar ayudita.


hay algun que otro script que renombra el modulo al final , añadiendo un numero y tal ..cosa que la funcion de tareasfinales no puede saber ...

o como el caso de ahora...que en tareasfinales se aplica stripdir , y me encuentro que adobe-reader no puede ser estripado.


he hecho un apaño temporal , pero si surgen mas no se como hacer.

Código: [Seleccionar]
# Variable para acrobat reader que no puede ser stripado
   if [ ! $PRGNAM = adobe-reader ]; then
   stripdir $PKG 2>/dev/null
   fi


esa regla aplica stripdir , SIEMPRE QUE EL PAQUETE NO SEA ABOBE-READER

¿y si ahora tubiera que añadir otro excluido ?  ... es lo que no se como hacer...


podria añadir otro if , pero creo el maximo son dos...


# Variable para acrobat reader que no puede ser stripado
   if [ ! $PRGNAM = adobe-reader ]; then
   if [ ! $PRGNAM = OTRO-NO-STRIPABLE]; then
   stripdir $PKG 2>/dev/null
   fi
   fi

¿ se pueden apilar mas, ?¿?¿
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:26 (Sábado)
Yo lo haría como en la función de f_arquitectura: si enviamos como parámetro "nostrip", no hará nada (pero el comportamiento por defecto es que haga strip).




Saludos

ok , creo que sigo el juego  ...

ARCH=$1

y si no hay nada, se aplica lo que siga .,..

mm, a ver si me aclaro , creo es la mejor opcion , ... nostrip  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 21:28 (Sábado)
Por cierto, aunque prefiero el método del parámetro, pero para cualquier otro caso... en las condiciones if puedes indicar AND (&&) u OR (||) de esta forma:

AND:
if [ condicion1 ] && [ condicion 2] & ....
then
   ...
fi

OR:
if [ condicion1 ] || [ condicion 2] || ....
then
   ...
fi



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:32 (Sábado)
Por cierto, aunque prefiero el método del parámetro, pero para cualquier otro caso... en las condiciones if puedes indicar AND (&&) u OR (||) de esta forma:

AND:
if [ condicion1 ] && [ condicion 2] & ....
then
   ...
fi

OR:
if [ condicion1 ] || [ condicion 2] || ....
then
   ...
fi



Saludos


ok , pero es mas comodo pasarle la variable como el noarch ... por que si son muchos queda muy feo.


stripar se hace justo antes de crear el xzm ... tal vez deberia , sacarlo del bucle de tareas finales ...y crearlo como

f_stripdir
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 21:37 (Sábado)
Puedes hacerlo como una función aparte (aunque imagino que tendrías que dividir las tareas finales en dos)... sigo optando por añadir el parámetro y dejarlo casi como está ;)

# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 5
   cd $PKG
   if [ $1!="nostrip" ]
   then
       stripdir $PKG 2>/dev/null
   fi  
   cleandir $PKG
...
...



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:39 (Sábado)
jajaja , es que esto aun no me lo habias contado

Código: [Seleccionar]
if [ $1=="nostrip" ]

claro que prefiero que siga junto , si no ,  me toca re-editar TODOS los scripts ..para añadir la funcion nueva a las tareas..y si lo apañamos como esta , no es necesario tocar mas ...solo


tareasfinales nostrip

cuando sea necesario y ya esta.   ;) >:( >:(


gracias, voy a probar.



mmm , veo has editado la respuesta , me fijo en la exclamacion ...


   if [ $1!="nostrip" ]
   then
       stripdir $PKG 2>/dev/null
   fi



no seria asi ?¿

   if [ ! $1="nostrip" ]
   then
       stripdir $PKG 2>/dev/null
   fi

de forma que si no hay nostrip , aplicara el stripdir.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 21:40 (Sábado)
No pruebes, que tal y como está hace lo contrario de lo que queremos... lo actualizo en un minuto :D

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:44 (Sábado)
   if [ ! $1 = "nostrip" ]; then
   stripdir $PKG 2>/dev/null
   fi


de momento funciona con abode , ahora estoy compilando otro ,para ver si a ese SI ,le aplica el stripdir ...deberia funcionar.    ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 21:57 (Sábado)
para el tema del renombrado de modulos se puede hacer parecido ...

no tengpo constancia , de que ningun modulo necesite ser renombrado y no aplicar strip , con lo que no habri problema en principio en tener varias variables esperando instruccion , por que a lo sumo se llenara solo una de las variables.



para los modulos de renombrado , pues lo mismo , ...

solo que debere crearle varias reglas tipo

RENOMBRAR1=
RENOMBRAR2=
RENOMBRAR3=

$RENOMBRAR

bueno ese tema ya lo miramos mas adelante.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 21:58 (Sábado)
Bueno, dos cosillas... queremos que cuando le pasemos 'nostrip' NO HAGA EL STRIP, y ahora mismo la condición hace lo contrario.
Por lado, cuando no pongamos la variable no tengo claro si fallará el script al hacer la sustitución del nulo en la condición del if... pruebalo de todas formas, si no funciona prueba esto otro:

#Si no indicamos nada, hace strip
if [ -z $1 ]
then
    stripdir $PKG 2>/dev/null
fi

El único problema es que tal y como está, da igual que digamos "nostrip" como si decimos "pepito"... lo único que mira es si le estamos enviando un parámetro o no.
Como ahora mismo solo vamos a usar "nostrip", podemos dejarlo así. En el momento en el que se nos ocurra otro parámetro adicional para otra cosa, añadiré un bloque adicional de comprobación de dicho parámetro y que ejecute lo que corresponda, algo así:

if [ -z $1 ]
then
    stripdir $PKG 2>/dev/null
fi
else
    if [ $1 == "nostrip" ]
    then
      :
    elif [ $1 == "otroparametro1" ]
    then
       #ejecutaloquesea
    ...
    fi
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:02 (Sábado)
venia justo a eso ...

cuando no hay parametro , peta "variable no definida"  ...   >:(


voy probar con la -Z
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:07 (Sábado)
Me acabo de dar cuenta de un fallo ...

cuando se muestra la version de script SIEMPRE SE MUESTRA LA VERSION DE funciones.sh , y no la version del script que se esta ejecutando.


si ejecuto aicrack , y en VERSION_SCRIPT pone 2019 , pues no sale eso , sale la VERSION_SCRIPT , de funciones.sh

asi no encontrara NUNCA actualizaciones para si mismo.  ( el script no se podra autoactualizar desde el ftp )


EDIT: solucion temporal = quitar del funciones.sh  la variable ...

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 22:15 (Sábado)
Me acabo de dar cuenta de un fallo ...

cuando se muestra la version de script SIEMPRE SE MUESTRA LA VERSION DE funciones.sh , y no la version del script que se esta ejecutando.


si ejecuto aicrack , y en VERSION_SCRIPT pone 2019 , pues no sale eso , sale la VERSION_SCRIPT , de funciones.sh

asi no encontrara NUNCA actualizaciones para si mismo.  ( el script no se podra autoactualizar desde el ftp )


EDIT: solucion temporal = quitar del funciones.sh  la variable ...



¿Cómo se actualiza el script funciones.sh? ¿Se mira su versión? En ese caso, habrá que dejar un VERSION_FUNCIONES específico para ese script, no?




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:15 (Sábado)
   if [ -z $1 ]; then
   stripdir $PKG 2>/dev/null
   fi


$1

variable sin definir ,cuando no usamos nostrip parametro.   :-\
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:17 (Sábado)
Me acabo de dar cuenta de un fallo ...

cuando se muestra la version de script SIEMPRE SE MUESTRA LA VERSION DE funciones.sh , y no la version del script que se esta ejecutando.


si ejecuto aicrack , y en VERSION_SCRIPT pone 2019 , pues no sale eso , sale la VERSION_SCRIPT , de funciones.sh

asi no encontrara NUNCA actualizaciones para si mismo.  ( el script no se podra autoactualizar desde el ftp )


EDIT: solucion temporal = quitar del funciones.sh  la variable ...



¿Cómo se actualiza el script funciones.sh? ¿Se mira su versión? En ese caso, habrá que dejar un VERSION_FUNCIONES específico para ese script, no?




Saludos

si exacto ..habri que crear una regla para si mismo , ... pero se me antoja complicadisimo , ...

al final de las variables de funciones.sh , deberia el mismo ... llamar esa funcion que solo seria para el ..y que dentro , deberia llevar si VERSION_SCRIPT   ..

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 22:17 (Sábado)
  if [ -z $1 ]; then
   stripdir $PKG 2>/dev/null
   fi


$1

variable sin definir ,cuando no usamos nostrip parametro.   :-\

Prueba así:

argumento=$1
if [ -z ${argumento} ]
then
   ...
fi
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:22 (Sábado)
me funciona cambiando el 1 , por la arroba...


Código: [Seleccionar]
   if [ -z "$@" ]; then
   stripdir $PKG 2>/dev/null
   fi
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:26 (Sábado)
a falta de ir mirando cosas , dejo el funciones.sh que va bien con nostrip y lo de la version script ...


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

# Script by www.seguridadwireless.net

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 3
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 3
   cd $PKG
   if [ -z "$@" ]; then
   stripdir $PKG 2>/dev/null
   fi 
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
  /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 22:31 (Sábado)
Citar
if [ -z $1 ];then
    stripdir $PKG 2>/dev/null
else
    if [ $1 == "nostrip" ]
    then
      :
    elif [ $1 == "otroparametro1" ]
    then
       #ejecutaloquesea
    ...
fi


Creo que sería mas facil así:

Código: [Seleccionar]
if [ $1 == "nostrip" ];then
    ...
elif [ $1 == "otroparametro1" ];then
    ...
elif [ $1 == "otroparametro1" ];then
   ...
else
    stripdir $PKG 2>/dev/null
fi

Aunque es cuestión de gustos...

Haber si me pongo ahora con los scripts....

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:36 (Sábado)
con lo que propones , que creo es lo mismo que dijo Fr3dY , estaria ya la variable funcional y parcheada ante otros posibles parametros entrantes que no sean nostrip


pero no me estaba funcionando con $1
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 13-09-2014, 22:37 (Sábado)
vk496, +1 a tu propuesta

En el caso de "nostrip", y para mantener coherencia en los bloques, podemos poner : como contenido del bloque (: es el no-op en bash):

if [ ! -z $1 ]
then
  if [ $1 == "nostrip" ];then
      #No hacemos nada
      :
  elif [ $1 == "otroparametro1" ];then
      ...
  elif [ $1 == "otroparametro1" ];then
     ...
  else
      stripdir $PKG 2>/dev/null
  fi
fi



Actualizo: añado una primera comprobación de que la variable no sea nula

Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 22:40 (Sábado)
El funciones.sh que has dejado @USUARIONUEVO me da problemas con wifislax-updaters_updater

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:41 (Sábado)
El funciones.sh que has dejado @USUARIONUEVO me da problemas con wifislax-updaters_updater

Salu2

claro , por que le quite VERSION_SCRIPT

si se declara hay ,todos los scripts pillan la fecha del funciones.sh
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:48 (Sábado)
jodder , cuando la variable es $1  , peta siempre cuando esta vacio el campo


Código: [Seleccionar]
funciones.sh: línea 162: $1: variable sin asignar

¿ por que con la arroba no falla ?


la orden esta bien

Código: [Seleccionar]
f_tareasFinales nostrip
si cambio los 1 por @  funciona bien.

Código: [Seleccionar]
# Variable que tratara parametros extra
   if [ ! -z $@ ]; then
   if [ $@ == "nostrip" ]; then
      :
   elif [ $@ == "otroparametro1" ]; then
      ...
   elif [ $@ == "otroparametro1" ]; then
     ...
   else
      stripdir $PKG 2>/dev/null
   fi
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 22:54 (Sábado)
Y si pruebas con comillas?

"$1"

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 22:58 (Sábado)
con comillas o sin comillas una variable SIN DEFINIR, seguira indefinida.


CUANDO LE PASAMOS


nostrip

inetnta buscar la funcion o variable ..Y NO EXISTE , por eso INDEFINIDA.

o se define, o se le mete la arroba.

creo es mas facil meter la arroba que crear mas variables...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:09 (Sábado)
Voy a hacer una cosa ...

os dejo el funciones.sh que me funciona con las arroba ...

y un updater que usa el nostrip , asi probais, por que ya me vuelvo loco.


_________________________________________________________________________________________________

funciones.sh que me va bien
Código: [Seleccionar]
#!/bin/bash

# Script by www.seguridadwireless.net

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]*-* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 3
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 3
   cd $PKG
# Variable que tratara parametros extra
   if [ ! -z $@ ]; then
   if [ $@ == "nostrip" ]; then
      :
   elif [ $@ == "otroparametro1" ]; then
      ...
   elif [ $@ == "otroparametro1" ]; then
     ...
   else
      stripdir $PKG 2>/dev/null
   fi
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
  /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}


____________________

adobe-reader_updater  este usa nostrip

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140913

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB=http://ardownload.adobe.com/pub/adobe/reader/unix/9.x/9.5.5/enu/AdbeRdr9.5.5-1_i486linux_enu.tar.bz2
PRGNAM=adobe-reader
VERSION=9.5.5
}

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


# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f AdbeRdr${VERSION}-1_${ARCH}linux_enu.tar.bz2 ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB
fi
}

# Descomprimimos el fichero descargado
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
tar xvf AdbeRdr${VERSION}-1_${ARCH}linux_enu.tar.bz2
mkdir -p $PKG/opt $PKG/usr/bin
VERSION=${VERSION}_enu
cd $PKG/opt
tar xf $TMP/AdobeReader/COMMON.TAR
tar xf $TMP/AdobeReader/ILINXR.TAR

cd $PKG/opt/Adobe

# Eliminamos cosas innecesarias
rm -rf Reader9/Reader/HowTo
rm -r Reader9/Browser/{HowTo,install_browser_plugin}

# Creamos enlaces del binario y las librerias
( cd $PKG/usr/bin ; ln -sf /opt/Adobe/Reader9/bin/acroread . )

mkdir -p $PKG/usr/lib/mozilla/plugins
cd $PKG/usr/lib/mozilla/plugins
  ln -sf ../../../../opt/Adobe/Reader9/Browser/intellinux/nppdf.so .
cd -

mkdir -p $PKG/usr/share/mime/packages
cd $PKG/usr/share/mime/packages
  ln -sf ../../../../opt/Adobe/Reader9/Resource/Support/AdobeReader.xml .
cd -

# Fix para el fichero desktop
mkdir -p $PKG/usr/share/{applications,pixmaps}
cd $PKG/usr/share/applications
  ln -sf ../../../opt/Adobe/Reader9/Resource/Support/AdobeReader.desktop .
cd -

# Linkeamos el icono a /usr/share/pixmaps
cd $PKG/usr/share/pixmaps
  ln -sf ../../../opt/Adobe/Reader9/Resource/Icons/48x48/AdobeReader9.png .
cd -

# Fix bug in bash completion script by redefining "_filedir" function
# to "_acroread_filedir" as suggested on the adobe forum:
# http://forums.adobe.com/thread/745833
sed -i 's/_filedir/_acroread_filedir/g' $PKG/opt/Adobe/Reader9/Resource/Shell/acroread_tab

# Link bash_completion script to /etc/bash_completion.d
mkdir -p $PKG/etc/bash_completion.d
cd $PKG/etc/bash_completion.d
  ln -sf ../../opt/Adobe/Reader9/Resource/Shell/acroread_tab acroread
cd -

# Fix ownership and permissions
cd $PKG
find . -type d -exec chmod 755 {} \;
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 {} \;
}

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

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

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 23:11 (Sábado)
filezilla_updater sin Testear

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140913

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
VERSION=3.8.1
PRGNAM=filezilla
PRGNAM2=FileZilla
DESCARGA=http://downloads.sourceforge.net/$PRGNAM/${PRGNAM2}_${VERSION}_src.tar.bz2
}

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


# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [[ ! -f ${PRGNAM2}_${VERSION}_src.tar.bz2 ]]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $DESCARGA
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf ${PRGNAM2}_${VERSION}_src.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 {} \;
}

#Compilamos el paquete
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 5

LDFLAGS="-ldl" \
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --disable-static \
  --disable-manualupdatecheck \
  --disable-autoupdatecheck \
  --enable-locales \
  --with-tinyxml=builtin \
  --build=$ARCH-slackware-linux

make -j$NUCLEOS || exit 1
make install DESTDIR=$PKG || exit 1

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 23:16 (Sábado)
Asi, un poco a modo resumen....

En que consiste stripear algo?

Y que hace el comando set -eu ?

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:21 (Sábado)
Asi, un poco a modo resumen....

En que consiste stripear algo?

Y que hace el comando set -eu ?

Salu2


set -e

set enviroment ... aplicar las variables para el entorno de compilacion ,como la arquitectura del sistema, que es vital...de ello dependera el uso de flags al compilar , usara unas u otras segun la arquitectura.


stripar , es eliminar de binarios y librerias toda parte de coodigo para "debug"  , .. osea esa parte de code que usa el desarrollador para identificar probelmas, y que al resto de mostales no nos dice nada.

se ahorra una cantidad de espacio que ni te imaginas , ... los paquetes oficiales vienen asi , al igual en todas las distros ...  el debug o paquetes sin stripar va enfocado a desarrolladores , a nosotros nos sobra.

_________________________________________

ya he buscado lo de la arroba , ... es para pasar un texto directamente como argumento usable, y no como "variable" ...

$@ list of arguments passed to script as string / delimited list


por eso con la arroba no peta , por que directamente pilla nostrip como si ya fuese una respuesta a una variable ...    ;D ;D ;D ;D ;D ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:26 (Sábado)
Normalmente el comando usado basico para estripar es este


Código: [Seleccionar]
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true

tenemos algo similar, en un script , por que añade alguna regla , para binarios que al ser estripados dejaban de funcionar ( 4 o 5 ) , ... como por ejemplo el binario de feedingbootle (o como se llame) ...que incluye una comprobacion crc del ejecutable ,si lo estripas el crc cambia, y no se ejecuta el muy cabron,.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:30 (Sábado)
el parametro de noarch , funciona bien , por que se define la ARCH , antes de nada... y si no existe parametro , se define desde sistema ...


f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi


jajaja a ver si va a ser que necesita $2  , por que el uno ya esta pillado .... os mato.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 23:31 (Sábado)
Algunos scripts requieren de la creación de directorios específicos según el caso. Aqui va el mod:

funciones.sh

Código: [Seleccionar]
...........
# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   DIR_EXTRA=$@
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT $DIR_EXTRA
   cd $TMP
}
............


Dentro de cualquier script

Código: [Seleccionar]
#Creamos directorio de trabajo
f_directorioTemporal $PKG/opt $PKG/usr/bin $PKG/usr/share/pixmaps


Voy a revisar filezilla por lo de set -eu


################################

Lo de set -eu

Solo cuando compilamos o se puede definir en cualquier script sin miedo?

####################

Edito de nuevo:

Código: [Seleccionar]
#Creamos directorio de trabajo
f_directorioTemporal $PKG/opt $PKG/usr/bin $PKG/usr/share/pixmaps

 ;D ;D ;D ;D

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:35 (Sábado)
lo de los directorios extras , ya lo tenia en cuenta, aunque aun no me cruze con ninguno , por que son tuyos ,los que meten hay ...


casi prefiero no liarla mas, ....  y lo que necesite de extra , lo lleve cada script dentro de si mismo .. ya que es particular para el solo.

es decir


creartmp ,bla bla bla ..

y si os falta algun directorio mas, ... en la siguiente funcion , se lo meteis dentro ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:37 (Sábado)
inyectar el entrono de trabajo no daña nada.

se puede usar indiscriminadamente aunque no se use y o necesite.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:39 (Sábado)
lo del directorio temporal ... como querais ...usando la arroba, se definen las rutas absolutas y ya esta...


solo seria necesario pasar esas rutas extras, las de serie ya no.


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 23:43 (Sábado)
lo de los directorios extras , ya lo tenia en cuenta, aunque aun no me cruze con ninguno , por que son tuyos ,los que meten hay ...


casi prefiero no liarla mas, ....  y lo que necesite de extra , lo lleve cada script dentro de si mismo .. ya que es particular para el solo.

es decir


creartmp ,bla bla bla ..

y si os falta algun directorio mas, ... en la siguiente funcion , se lo meteis dentro ...

Que no... que esto es muy util  ;D ;D ;D

En vez de haber mkdirs por todos los lados, te vas a la función y miras el entorno que se crea. Es muy util, de verdad.

Asi además se aprovecha para hacer limpieza en el código. Es muy inútil tener esto en el script por todos los lados:

Código: [Seleccionar]
mkdir -p $PKG/opt
mkdir -p $PKG/usr/bin
mkdir -p $PKG/usr/share/pixmaps

De la otra forma, todo mucho mas limpio.

Código: [Seleccionar]
#Creamos directorio de trabajo
f_directorioTemporal $PKG/opt $PKG/usr/bin $PKG/usr/share/pixmaps


inyectar el entrono de trabajo no daña nada.

se puede usar indiscriminadamente aunque no se use y o necesite.

Creo que estaría bien añadirlo al principio de alguna funcion de funciones.sh y olvidarnos de él....

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:45 (Sábado)
esta inyectado ya en la arquitectura , es justo hay se debe definir ...

si miras dentro de la funcion de arquitectura veras que lo ultimo es inyectar el entorno ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:47 (Sábado)
esta inyectado ya en la arquitectura , es justo hay se debe definir ...

si miras dentro de la funcion de arquitectura veras que lo ultimo es inyectar el entorno ...


si ARCH=noarch

no se implementa el set eu , por que no es necesario , como en caso de aplicaciones que son un .jar o un sh , un python ..etc.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-09-2014, 23:54 (Sábado)
frostwire_updater con el mod ese del entorno con los directorios y SIN testear (creo que están caídos los servers o algo así...):

REMARCO ESTO

para comprobar después que pasa con los servers

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140913

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
WEB=http://www.frostwire.com/download/
VERSION=`curl -s $WEB | grep pageTracker | cut -d '/' -f 9`
SOURCES=http://dl.frostwire.com/frostwire
PRGNAM=frostwire
}

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

#Comprobar dependencias
F_dependencias() {
if [ -f /usr/lib/java/bin/java ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"Jre/Jdk"$CIERRE: $EXIST"
if [ ! -f /usr/lib/java/bin/java ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 5
exit 0
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 5
fi
}

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $PRGNAM-$VERSION.$ARCH.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $SOURCES/$VERSION/$PRGNAM-$VERSION.$ARCH.tar.gz
fi
}

#Descomprime el fichero descargado
F_descomprime() {
tar xvf $TMP/$PRGNAM-$VERSION.$ARCH.tar.gz -C $PKG/opt
mv $PKG/opt/$PRGNAM-$VERSION.$ARCH $PKG/opt/$PRGNAM-$VERSION
}

#Configurando
F_configurar() {
# Creamos el paquete
cat << EOF > $PKG/usr/bin/$PRGNAM
#!/bin/sh
cd /opt/frostwire
./frostwire
EOF
chmod 0755 $PKG/usr/bin/$PRGNAM

ln -s $PRGNAM-$VERSION $PKG/opt/$PRGNAM

# Generamos el icono usando base64 gracias vk489 por enseñarme esto
echo "
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

" | base64 -d >/$PKG/usr/share/pixmaps/$PRGNAM.png

# Install desktop file
install -D -m 0644 $PKG/opt/$PRGNAM-$VERSION/$PRGNAM.desktop $PKG/usr/share/applications/$PRGNAM.desktop
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 {} \;
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Comprobar dependencias
F_dependencias
#Creamos directorio de trabajo
f_directorioTemporal $PKG/opt $PKG/usr/bin $PKG/usr/share/pixmaps
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_configurar
#Creamos xzm , instalamos y salimos
f_tareasFinales

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-09-2014, 23:58 (Sábado)
PUES acabo de probar las v ariables de forstwire en un script aparte y usando solo

WEB Y VERSION

me devuelve

5.7.6

asi que no estan caidos ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 00:03 (Domingo)
mkdir -p $PKG/opt
mkdir -p $PKG/usr/bin
mkdir -p $PKG/usr/share/pixmaps

que poco elegante  ....


mkdir -p $PKG/{opt,usr/bin,usr/share/pixmaps}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 00:09 (Domingo)
mkdir -p $PKG/opt
mkdir -p $PKG/usr/bin
mkdir -p $PKG/usr/share/pixmaps

que poco elegante  ....

Eso no me lo digas a mi... ^-^ ^-^ ^-^ ;D ;)

Citar
mkdir -p $PKG/{opt,usr/bin,usr/share/pixmaps}

O también puedes hacer el pequeño cambio a funciones.sh y tenerlo así:

Código: [Seleccionar]
f_directorioTemporal $PKG/{opt,usr/bin,usr/share/pixmaps}
Esto ultimo no estoy seguro (ni de lo tuyo tampoco). En principio, cualquier parámetro o conjunto de parámetros se pasa al comando mkdir, por lo que debería funcionar si a ti te funciona también.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 00:11 (Domingo)
Hexchat TESTEADO

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140913

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
WEB=http://dl.hexchat.net/hexchat
VERSION=$(curl -s $WEB/ | grep href | sed -e 's/\(<[^<][^<]*>\)//g' | awk '{print $1}' | sort -V | grep .tar.xz$ | tail -1 | cut -d "-" -f2 | sed -e 's/.tar.xz//')
PRGNAM=hexchat
}

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

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$PRGNAM-$VERSION.tar.xz
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.xz
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 {} \;
}

#Configurando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 5
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --disable-update-databases \
  --disable-xml-catalog-update \
  --build=$ARCH-slackware-linux

make -j$NUCLEOS
make install DESTDIR=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 00:17 (Domingo)
qbittorrent_updater SIN testear

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140913

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
WEB=http://sourceforge.net/projects/qbittorrent/files/
VERSION=`curl -s $WEB | grep /latest | cut -d '/' -f 8 | cut -d ":" -f 1 | cut -d '-' -f 2`
PRGNAM=qbittorrent
}

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

# Comprobar dependencias
F_dependencias() {
if [ -f /usr/lib/libtorrent-rasterbar.so ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"libtorrent-rasterbar"$CIERRE: $EXIST"
if [ ! -f /usr/lib/libtorrent-rasterbar.so ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 5
exit 0
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 5
fi
}

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$PRGNAM-$VERSION.tar.gz
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.gz
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 {} \;
}

#Configurando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 5
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --qtdir=/usr/lib${LIBDIRSUFFIX}/qt

make -j$NUCLEOS
make install INSTALL_ROOT=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
# Comprobar dependencias
F_dependencias
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 00:34 (Domingo)
@USUARIONUEVO

Necesito que le pegues otro cambio a funciones.sh

En este caso, una cosa específica para sigram (y ahora que me acuerdo, había un programa que hacía lo mismo). En concreto, cambiar esto:

Código: [Seleccionar]
leandir $PKG
dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /

por esto:

Código: [Seleccionar]
#Para sigram nos basamos en el log. Para el resto siempre es igual
   if [ $PRGNAM = sigram ]; then
log2xzm $TMP/sigram.log $HOME/Desktop/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm /
   else
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   fi

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 00:41 (Domingo)
Sigram TESTEADO y OK si le pegas el cambio a funciones.sh y el mod del entorno para crear carpetas  >:D

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140914

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
PRGNAM=sigram
WEB=$(curl -s http://labs.sialan.org/projects/sigram | grep linux-installer | cut -d "\"" -f2)
ARCHIVO=$(echo $WEB | rev  | cut -d/ -f1 | rev)
VERSION=$(echo $ARCHIVO | cut -d "-" -f2)
}

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

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $ARCHIVO ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
chmod +x $ARCHIVO
}

#Configurando
F_configurar() {
echo ""
echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
sleep 5
rm -Rf /tmp/bitrock*.log
$TMP/$ARCHIVO --debuglevel 4 --mode unattended

echo "PACKAGE NAME:     $PRGNAM-$VERSION-$ARCH-$BUILD$TAG
COMPRESSED PACKAGE SIZE:
UNCOMPRESSED PACKAGE SIZE: 27,9M
PACKAGE LOCATION: $PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
PACKAGE DESCRIPTION:
FILE LIST:
./">$TMP/sigram.log
cat /tmp/bitrock_installer*.log | grep -i directory | cut -d/ -f2- >>$TMP/sigram.log
cat /tmp/bitrock_installer*.log | grep Unpac* | cut -d " " -f 2-| cut -d "/" -f2- >>$TMP/sigram.log
mv /root/Desktop/Sigram.desktop /usr/share/applications/Sigram.desktop

echo -e "\nCategories=Application;Network;" >>/usr/share/applications/Sigram.desktop
echo "usr/
usr/share/
usr/share/applications/
usr/share/applications/Sigram.desktop" >>$TMP/sigram.log
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal $PKG/opt $PKG/usr/share/applications/
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_configurar
#Creamos xzm , instalamos y salimos
f_tareasFinales

EDITADO: Una tontería. Me faltó un if en el descargar()

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 00:51 (Domingo)
el de sigram , ya debi cambiarlo hace tiempo ...  cuando lo desinstalas te queda ELL DESKTOP del menu etc...


no tienes que buscar en el log de instalacion , ...si no mover

/opt/sigram $PKG/opt

fin del drama.


no necesitas saber los ficheros de instalacion , por que estaran todo alli ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 00:59 (Domingo)
El Sigram se crea su desktop el solito y, al menos a mi, lo elimina también....  :D

Y tal como está ahora mismo, se asegura de crear un xzm con todo (esto es importante, porque no es el unico programa que usa este instalador, y no siempre todo se encuentra en una única carpeta).

Mi opinión es dejarlo así, porque esta es la forma mas limpia y eficiente de hacer un módulo a partir de estos instaladores.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 01:02 (Domingo)
no , no lo elimian DEL MENU ,por que el lo instala en un sitio y tu lo mueves despues.  ;D

la rut ya no cuadra-.

el otro del mismo instalador es metasploit que es 1000 veces mas delicado , y lo que se hace es mover /opt/metasploit a $PKG/opt
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 01:05 (Domingo)
no , no lo elimian DEL MENU ,por que el lo instala en un sitio y tu lo mueves despues.  ;D

Te equivocas. Lo muevo, si, pero también me encargo de especificarlo en el log para que lo tenga en cuenta  8)

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 01:07 (Domingo)
teamviewer_updater SIN TESTEAR

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140914

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
PRGNAM=teamviewer
WEB=http://download.teamviewer.com/download/teamviewer_linux.deb
VERSION=$(curl -s http://www.teamviewer.com/es/download/linux.aspx | grep teamviewer_linux.deb -A 10 | grep -i version | cut -d "v" -f2 | cut -d "<" -f1)
}

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

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f ${PRGNAM}_linux.deb ]; then
# Si el paquete no existe se descargara de internet
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
chmod +x $ARCHIVO
}

#Configurando
F_configurar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 5
deb2dir $TMP/${PRGNAM}_linux.deb $PKG

find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
  
cleandir $PKG
# Make a .desktop file
cat $PKG/opt/teamviewer9/tv_bin/desktop/teamviewer-teamviewer9.desktop \
  | sed -e 's/EXEC/teamviewer/' -e 's/ICON/teamviewer/' \
  > $PKG/usr/share/applications/teamviewer.desktop

# Remove the dangling symlink first
rm $PKG/usr/bin/teamviewer

# Re-create the generic executable
( cd $PKG/usr/bin; ln -s /opt/teamviewer9/tv_bin/script/teamviewer teamviewer )

# Link icon to /usr/share/pixmaps
( ln -sf /opt/teamviewer9/tv_bin/desktop/teamviewer.png  $PKG/usr/share/pixmaps/teamviewer.png )
  
  
# Eliminamos simbolicos dañinos del paquete deb
rm -f $PKG/var/log/teamviewer $PKG/etc/teamviewer
rm -rf $PKG/opt/teamviewer9/logfiles/ $PKG/opt/teamviewer9/config/
ln -s /var/log/teamviewer $PKG/opt/teamviewer9/logfiles
ln -s /etc/teamviewer $PKG/opt/teamviewer9/config
# Generamos el servicio ...
cat > rc.teamviewerd << "EOF"
#!/bin/sh
#
# /etc/rc.d/rc.teamviewerd

teamviewerd_start() {
  if [ -x /opt/teamviewer9/tv_bin/teamviewerd ]; then
    echo "Starting TeamViewer Daemon"
    /opt/teamviewer9/tv_bin/teamviewerd --daemon start
  fi
}

teamviewerd_stop() {
    echo "Terminating TeamViewer Daemon"
  killall teamviewerd
}

teamviewerd_restart() {
  teamviewerd_stop
  sleep 2
  teamviewerd_start
}

case "$1" in
'start')
  teamviewerd_start
  ;;
'stop')
  teamviewerd_stop
  ;;
'restart')
  teamviewerd_restart
  ;;
*)
  echo "usage $0 start|stop|restart"
esac
EOF
mv rc.teamviewerd $PKG/etc/rc.d
chmod 777 $PKG/etc/rc.d/rc.teamviewerd
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal $PKG/usr/share/applications $PKG/usr/share/pixmaps $PKG/var/log/teamviewer $PKG/etc/teamviewer mkdir -p $PKG/etc/rc.d
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_configurar
#Creamos xzm , instalamos y salimos
f_tareasFinales

EDITADO: El mensaje de "Instalando... bla bla bla" estaba repetido. Arreglado

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 01:14 (Domingo)
no , no lo elimian DEL MENU ,por que el lo instala en un sitio y tu lo mueves despues.  ;D

Te equivocas. Lo muevo, si, pero también me encargo de especificarlo en el log para que lo tenga en cuenta  8)

Salu2

la ultima vez que lo probe me dejaba la entrada del menu ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 01:15 (Domingo)
Yo al principio tembién creía eso... Pero tarda un tiempo en "refrescar"  ^-^ >:(

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 01:19 (Domingo)
Transmission_updater TESTEADO

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140914

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
#Definicion de variables
F_variables() {
WEB=http://download-origin.transmissionbt.com/files/
VERSION=`curl -s $WEB | grep transmission- | tail -1 | cut -d "-" -f 3 | cut -d "t" -f-1 | sed 's/.$//g' `
PRGNAM=transmission
}

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

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
if [ ! -f $PRGNAM-$VERSION.tar.xz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $WEB/$PRGNAM-$VERSION.tar.xz
fi
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.xz
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 {} \;
}

#Compilando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 5

sed -i -e 's%-g -O3 -funroll-loops %%g' configure.ac
sed -i -e 's%-ggdb3 %%g' configure.ac

# Fix hard-coded path of man file of Qt client
sed -i "s|share/man/|man/|" qt/qtr.pro

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --disable-static \
  --with-gtk \
  --verbose \
  --build=$ARCH-slackware-linux \
  --host=$ARCH-slackware-linux

make -j$NUCLEOS
make install DESTDIR=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 01:30 (Domingo)
te doy la noche libre , que me tas llenado de scripts a probar...  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 01:33 (Domingo)
Yo ya he acabado con la categoria Internet.

Le he dado un toque a wifislax_updaters-updater para saber la cantidad de scripts que se van a actualizar....

Como no sé si has cambiado algo de ahí, dejo en negrita las partes a cambiar para que lo pruebes:

Citar
·····
echo
contador=0
for carpeta in $(curl -s $WEB/$DIRECTORIOHTML | grep "item dir" | sed 's/<[^>]\+>//g'); do
·····
   for archivo in $(curl -s $WEB/$DIRECTORIOHTML/$carpeta | grep "item file" | sed 's/<[^>]\+>//g' | sed 's/^[[:space:]]*//g' | grep -vE *~$); do
      let contador=$contador+1
      echo -n "${CYAN}Buscando $archivo... $CIERRE"
·····
if [ $CREAR_MODULO = SI ]; then

   echo -n ${CYAN}Creando logs e instalando....$CIERRE
   sleep 2
·····
if [ $CREAR_MODULO = SI ]; then
echo -ne "${CYAN}de $ROJO$contador${CYAN} scripts$CIERRE"
sleep 4

f_tareasFinales

Salu2 y buenas noches ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 01:41 (Domingo)
creo que no toque nada hya , al menos hoy no , seguro.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 03:32 (Domingo)
no puedo estar jugando a las adivinanzas o a las 4 diferencias ... pon el fichero ya editado , ...


por que por ejemplo . me pones al final   esto

if [ $CREAR_MODULO = SI ]; then
echo -ne "${CYAN}de $ROJO$contador${CYAN} scripts$CIERRE"
sleep 4
f_tareasFinales


pero no se que quieres decir, por que el fichero al final lleva todo esto ,hasta llegar al tareasfinales...


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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
# Directorios de trabajo y actualizar
F_actualizar
# Crear estructura
F_estructura
#Creamos xzm , instalamos y salimos
F_final


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 04:08 (Domingo)
version que estoy usando ahora mismo del funciones.sh

falta mirarle lo de la fecha para si mismo  , ... y lo de sigram , que de momento solo es uno , y tengo que mirar opciones.

lo de las carpetas extra si lo lleva.

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

# Script by www.seguridadwireless.net

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)
TMP=${TMP:-/tmp/build/$PRGNAM}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
   clear
   echo ""
   echo "$BLANCO                *****************************$CIERRE"
   echo "$VERDE                    Instalador/Actualizador   $CIERRE"
   echo "$VERDE                       para el programa       $CIERRE"
   echo "$CYAN                         $PRGNAM               $CIERRE"
   echo "$VERDE                                              $CIERRE"
   echo "$VERDE                  www.seguridadwireless.net   $CIERRE"
   echo "$BLANCO                *****************************$CIERRE"
   echo ""
   sleep 3
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   echo "$ROSA"Comprobando si hay acceso a internet"$CIERRE."
   if [ "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "$VERDE"Tengo internet"$CIERRE ... $BLANCO"la tarea continuara."$CIERRE"
      echo ""
      sleep 3
   else
      echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 3
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]*-* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"Su version actual es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 3
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas actual es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 3
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   DIR_EXTRA=$@
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT $DIR_EXTRA
   cd $TMP
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   sleep 3
   cd $PKG
   if [ ! -z $@ ]; then
   if [ $@ == "nostrip" ];then
      :
   elif [ $@ == "otroparametro1" ];then
     ...
   elif [ $@ == "otroparametro1" ];then
     ...
else
   stripdir $PKG 2>/dev/null
   fi
   fi
   cleandir $PKG
   dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   if [ -x /usr/bin/update-desktop-database ]; then
     /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
     /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
     if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
     fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
/usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 3
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 3
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 05:04 (Domingo)
juax , ya tardaba en tener que tocar el funciones.sh , le voy a coger mania ...


teamviewer lleva un servicio , si no se arranca el programa no es usable hasta el reinicio , y lo que yo quiero es que todo sea usable IN THE ACT


en la funcion de tareasfinales ..

justo detras de

xzm2dir

añdir esta variable ...

# Iniciar algun servicio si existe
   if [ -f $PKG/etc/rc.d/rc.teamviewerd ]; then
   /etc/rc.d/rc.teamviewerd start &>/dev/null
   fi



si , si , esta bien asi ... si el fichero existe en PKG , es que se a instalado ahora ...por eso si se ha instalado ahora, se inicia ya desde etc ...su sitio final al instalar.

¿por que no mirar directamente en /etc  ...?

pues por que si instalo temviewer , el fichero existira siempre alli ,. y el if tendra valor siempre ...

evitamos eso ,mirando si es en ese momento que se instala el fichero.   ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 05:10 (Domingo)
no veo el xampp    ;D ;D ;D
tampoco estan pidgin  ni skype  :P


__________________

ya he repasado todos me falta sigram , ...me da error y no arranca....


Código: [Seleccionar]
/opt/Sialan/sigram-0.7.0/sigram/run: línea 13: 21058 Violación de segmento  "$SIALAN_DATA_PATH/Sigram" "$@"

HE COGIDO EL MODULO DE SIGRAM ,he arrancado en modo livecd y funcionaba perfectamente ,osea habia algo mal en mi instalacion , ... no me extraña , con tanto tocar y experimentar  ;)

ya le añadi al funciones.sh lo del sigram ,. ..

a eso de las 8 de la mañana actualizare scripts en el ftp , recomiendo borrar literalmente lo que tengais y bajarlos del ftp , por que algunos han sido modificados pero no se puede poner una fecha mas que la del mismo dia , con lo que la fecha sera igual ,pero el script NO.

mirare de poneroslo facil y subir un pequeño xzm , solo con los scripts nuevos.


y ahora me dedicare a lanzar e instalar todos a ver si encuentro o me vuelve a pasar que sigram no arranque e identificar el conflicto ,si lo hay.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 07:55 (Domingo)
ftp al dia

para que os aseguréis de tener las ultimas versiones , por que en el mismo dia se ahn tocado 3 o 4 veces el mismo script y la fecha no varia , y parecerá el mismo en el ftp pero no lo es, asi que mejor os bajais directamente el modulo con los que hay ya hechos en sus ultimas versiones.


http://www.downloadwireless.net/modulos-fase-testing/wifislax-current/wifislax-4.10-alpha1/wifislax-updaters-nuevo-formato-1.0.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 14-09-2014, 09:52 (Domingo)
Acabo de mirar el actualizador de scripts y creo que con esto solucionamos el problema de la version de funciones.sh:

Código: [Seleccionar]
...
if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
if [ ${archivo} == "funciones.sh" ]
then
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
else
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
fi
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
echo -n "${VERDE}EXISTE$CIERRE"
...


Al script funciones.sh solo habría que añadirle su propia versión mediante la variable FUNCIONES_VERSION




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 13:11 (Domingo)
esta a medio camino ...

has hecho la variable para LOCAL_VERSION , pero no para WEB_VERSION  ;D


me lo dejaste ya hecho ...   ;)

solo incluir tambien el web version dentro de las variables y ya funciona todo perfectamente


if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
if [ ${archivo} == "funciones.sh" ]; then
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
         else
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
fi
echo -n "${VERDE}EXISTE$CIERRE"




FTP ACTUALIZADO
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 14-09-2014, 13:35 (Domingo)
Creo que todavía me dura la resaca del viernes...  :-X
Bueno, ahora mismo queda algo pendiente en cuanto a la estructura de los scripts, o "sólo" queda portar los que faltan?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 13:45 (Domingo)
Creo que todavía me dura la resaca del viernes...  :-X
Bueno, ahora mismo queda algo pendiente en cuanto a la estructura de los scripts, o "sólo" queda portar los que faltan?



Saludos

portar nada mas ...hasta que a algún script le de por tener algo "especial" ..todo resuelto de momento.

gracias. ;) :D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 20:54 (Domingo)
que bueno , en arquitectura , el libreoffice se define con x86 , ya estaba mosca , pero ....

igual que se usa el noarch ... se puede poner cualquier otro que no sea lo estandar   ;)

#Asignamos o detectamos arquitectura
f_arquitectura x86
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 21:30 (Domingo)
libreoffice_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140914

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB=https://es.libreoffice.org/descarga/libreoffice-nuevo/
VERSION=`curl -s $WEB | grep LibreOffice_ | head -1 | cut -d "/" -f 9 | cut -d "_" -f2`
DESCARGA1=http://download.documentfoundation.org/libreoffice/stable/${VERSION}/rpm/x86/LibreOffice_${VERSION}_Linux_x86_rpm.tar.gz
DESCARGA2=http://download.documentfoundation.org/libreoffice/stable/${VERSION}/rpm/x86/LibreOffice_${VERSION}_Linux_x86_rpm_langpack_es.tar.gz
DESCARGA3=http://download.documentfoundation.org/libreoffice/stable/${VERSION}/rpm/x86/LibreOffice_${VERSION}_Linux_x86_rpm_helppack_es.tar.gz
PRGNAM=LibreOffice
PRGNAM2=libreoffice-langpack_es
PRGNAM3=libreoffice-helppack_es
WJRE=${WJRE:-no}
DISABLE_JAVA=${DISABLE_JAVA:-NO}
SRCSHORT=$(echo $VERSION | cut -f1-2 -d.)
}

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

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f ${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
wget $DESCARGA1
fi
# Si el paquete no existe se descargara de internet
if [ ! -f ${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm_langpack_es.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM2-$VERSION"$CIERRE"
sleep 3
wget $DESCARGA2
fi
# Si el paquete no existe se descargara de internet
if [ ! -f ${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm_helppack_es.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM3-$VERSION"$CIERRE"
sleep 3
wget $DESCARGA3
fi
}

# Descomprimir
F_compilar(){
tar xvf ${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm.tar.gz -C $TMP
tar xvf ${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm_helppack_es.tar.gz -C $TMP
tar xvf ${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm_langpack_es.tar.gz -C $TMP

# Eliminamos partes que no queremos de java
rm -rf $TMP/${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm/{JavaSetup.jar,installdata,setup}
rm -rf $TMP/${PRGNAM}_${VERSION}_Linux_${ARCH}_rpm/RPMS/{userland,jre-*-linux-*.rpm}

# Convertimos los rpm
cd $TMP/${PRGNAM}_${VERSION}*_Linux_x86_rpm/RPMS/
rm -f *onlineupdate*.rpm
for FILE in *.rpm ; do rpm2cpio < $FILE | cpio -imdv ; done
rm -rf desktop-integration *.rpm
mv opt usr $PKG

cd $TMP/${PRGNAM}_${VERSION}*_rpm_helppack_es/RPMS/
for FILE in *.rpm ; do rpm2cpio < $FILE | cpio -imdv ; done
cp -Rf opt $PKG

cd $TMP/${PRGNAM}_${VERSION}*_rpm_langpack_es/RPMS/
for FILE in *.rpm ; do rpm2cpio < $FILE | cpio -imdv ; done
cp -Rf opt $PKG
cd $PKG

# Eliminar un simbolico muerto
rm -f $PKG/usr/share/applications/libreoffice3-startcenter.desktop

# Creamos los simbolicos de los ejecutables
cd $PKG/usr/bin
for FILE in \
sbase scalc sdraw simpress smath soffice spadmin swriter unopkg ; do
rm -f $FILE
ln -sf ../../opt/libreoffice$SRCSHORT/program/$FILE $FILE ;
done
cd -

# Eliminamos un par de fuentes innecesarias
rm -f opt/libreoffice$SRCSHORT/share/fonts/truetype/{DejaVu,Liberation}*.ttf

# Fijamos la orden exec de los ficheros desktop
cd $PKG/opt/libreoffice$SRCSHORT/share/xdg/
for APP in base calc draw impress math writer; do
sed -i "s%Exec=libreoffice -%Exec=/opt/libreoffice$SRCSHORT/program/s%" $APP.desktop ;
done
cd -

if [ "$DISABLE_JAVA" = "YES" ]; then
chmod -x $PKG/opt/libreoffice$SRCSHORT/ure/bin/javaldx
fi

# Fix ownership and permissions and make the package
chown -R root:root .
find . -type d -exec chmod 755 {} \;
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 {} \;

# Eliminamos de los desktop la categoria education
cd $PKG/opt/libreoffice*/share/xdg/
for DESKTOP in $(find -type f); do

cat $DESKTOP | sed 's/Cate.*/Categories=Office;/g' >${DESKTOP}2
rm $DESKTOP
mv ${DESKTOP}2 ${DESKTOP}

done
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura x86
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales nostrip
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 21:38 (Domingo)
RECUENTO

sistema -->> portado completo
aficina   --->> por tado completo
auditores -->> asignado a Fr3dY   faltan todos menos aircrack y armitage
internet -->> asignado vk496 , casi acabada ,faltan xampp , pidgin  y  skype


__________________

me cojo desarrollo y juegos  que tienen poca chicha.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 21:56 (Domingo)
pensando en cuando ya esten portados todos y volvamos a poder escribir nuevos ..

he pensado en este script que nos creara la base con lo necesario ..

en la funcion compilar , yo meto hay todo desde el momento de descomprimir ,configurar y compilar ...hasta que ya solo queda el paso finald e crear el xzm ,asi menos lios.


el script se podra ejecutar desde shell y crear en escritorio una base vacia.

____________________________________________________________________________________________________

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

echo "#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=$(date +%Y%m%d)

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {

}

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

# Si el paquete no existe se descargara de internet
F_download(){

}

# Descomprimimos el fichero descargado
F_compilar(){

}

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

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

chmod 777 /root/Desktop/*updater
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 22:14 (Domingo)
estos paquetes usaran nostrip en la funcion final ,por que el instalador ya lleva una funciona a tal fin , y podriamos romper la libreria/programa.


wifislax ~ # grep -r install-strip /opt/wifislax-updaters
/opt/wifislax-updaters/Auditores/yersinia_updater:make DESTDIR=$PKG install-strip || exit 1
/opt/wifislax-updaters/Sistema/gparted_updater: make install-strip DESTDIR=$PKG
/opt/wifislax-updaters/Desarrollo/gambas_updater:make -j1 install-strip DESTDIR=$PKG XDG_UTILS=""
/opt/wifislax-updaters/Multimedia/dvdauthor_updater:make install-strip DESTDIR=$PKG
/opt/wifislax-updaters/Librerias/libquicktime_updater:make install-strip DESTDIR=$PKG
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 22:29 (Domingo)
DESARROLLO ACABADA , me meto con juegos


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140914

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB=http://sourceforge.net/projects/gambas/files/
VERSION=`curl -s $WEB | grep latest/ | head -1 | cut -d "/" -f 8 | cut -d- -f 2 | cut -d "t" -f-1 | sed "s/.$//g" | sed "s/ //g"`
RAMA=`echo $VERSION | cut -d "." -f1`
PRGNAM=gambas$RAMA
DESCARGA=http://downloads.sourceforge.net/project/gambas/$PRGNAM/$PRGNAM-$VERSION.tar.bz2
SHORT_PRGNAM=${PRGNAM%$(cut -d . -f 1 <<< $VERSION)}
}

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

# 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 3
wget $DESCARGA
fi
}

# Descomprimimos el fichero descargado
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
chown -R root:root .
 
# Compilamos paquete
echo ""
echo "$VERDE"Compilando ..."$CIERRE"
sleep 5

./reconf-all

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --build=$ARCH-slackware-linux
 
make
make -j1 install-strip DESTDIR=$PKG XDG_UTILS=""

mkdir -p $PKG/usr/share/icons/hicolor/{scalable/apps,48x48/apps,64x64/mimetypes}
cp -a app/desktop/$PRGNAM.svg $PKG/usr/share/icons/hicolor/scalable/apps
cp -a app/desktop/$PRGNAM.png $PKG/usr/share/icons/hicolor/48x48/apps
cp -a app/mime/application-x-${SHORT_PRGNAM}{script,serverpage}.png \
  $PKG/usr/share/icons/hicolor/64x64/mimetypes
cp -a main/mime/application-x-$PRGNAM.png \
  $PKG/usr/share/icons/hicolor/64x64/mimetypes

mkdir -p $PKG/usr/share/{applications,mime/packages}
cp -a app/desktop/$PRGNAM.desktop $PKG/usr/share/applications
cp -a app/mime/application-x-${SHORT_PRGNAM}{script,serverpage}.xml \
  $PKG/usr/share/mime/packages
cp -a main/mime/application-x-$PRGNAM.xml $PKG/usr/share/mime/packages
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales nostrip
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 22:46 (Domingo)
pokerth_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140914

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
SRCNAM=PokerTH
WEB=http://sourceforge.net/projects/pokerth/files/pokerth/
VERSION=`curl -s $WEB | grep -i latest | grep $SRCNAM |cut -d "/" -f9 | cut -d- -f2 | cut -d "a" -f1 | sed 's/.$//g' | sed "s/ //g"`
PRGNAM=pokerth
DESCARGA=http://downloads.sourceforge.net/pokerth/$SRCNAM-$VERSION-src.tar.bz2
}

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

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $SRCNAM-$VERSION-src.tar.bz2 ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $DESCARGA
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 5
tar xvf $SRCNAM-$VERSION-src.tar.bz2
cd $SRCNAM-$VERSION-src
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 {} \;

sed -i "s|libircclient/||" src/net/common/ircthread.cpp

qmake pokerth.pro

make
make install DESTDIR=$PKG INSTALL_ROOT=$PKG

mkdir -p $PKG/usr/bin
install -s -D -m 0755 $TMP/PokerTH-$VERSION-src/bin/pokerth_server $PKG/usr/bin
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Comprobamos conexion a Internet
f_comprobarConexion
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 23:24 (Domingo)
No me he enterado que has hecho ahí con lo de base.... Un script mas? No me he enterado...

Respecto a la categoría Internet, sorry. Desde mi menú lo tenía en otro sitio, así que los pasé de largo. Mañana los acabo.

Eso me da dos ideas a la cabeza:

1: cambia el lugar del menú de los updaters ;D

2: Wifislax_updaters-updater debería "reconstruir" el menú desde 0 si hay updates. Si se mueve o borra algo, es incapaz de hacer nada, solo agregar. Me pido este cambio, y lo hago mañana si tengo tiempo.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 23:34 (Domingo)
el base_updater , lo que hace es crear un updater vacio , con todas las variables preparadas ..

abres el viejo y solo copiarle y pegarle lo que vale ..

asi no tienes que abrir uno ya hecho para pillar las funciones del final etc -.-

solo le metes las variables propias del script , y a volar , se pasan en 1 minuto con esa tecnica.  ;)


ademas de dejarte plantillas preparadas para cuando hagas nuevos , no tener que estar abriendo los viejos para mirar name de funciones, el orden etc.  

es como crear un documento nuevo , y que te viniera ya la plantill preparada para crear un updater  ;D


no es un updater , es un script que estara metido en

/opt/wifislax-scripts/base_updater  y un simbolico a /usr/bin

cuando vayas a escribir un upodater nuevo , ejecutas ese script y tendras en el escritorio ya una platilla hecha  ;D ;D ;D ;D ;D ;D ;D ;D
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-09-2014, 23:36 (Domingo)
Ah ok, entendido

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-09-2014, 23:40 (Domingo)
donde

F_compilar


dentro de esa funcion ya metes todo desde descargar descomprimir fiechro hasta acabar el proceso y faltar solo crear el xz,.

osea yo suelo meter hay..

descomprimir
configurar
compilar
y si hay alguna tarea extra , como crear un dsktop etc ...

digamos que meto dentro todo lo que seria preparar el PKG , hasta llegado el punto de crear el xzm ,que se llama a la funcion tareasfinales.  ;D ;D ;D ;D ;D ;D ;D ;D ;D

es suuuupercomodo asi.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 04:50 (Lunes)
pequeño cambio en el orden de llamada de las funciones ...

1 - variables F y f
2 - presentacion
3 - comprobar internet

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos conexion a Internet
f_comprobarConexion


tambien he hecho un leve cambio en funcioens.sh , le he modificado la presentacion , para evitar el nombre de programa quede desconfigurado del resto de letras cuando el nombre es corto , por que esteticamente quedaba fatal.


voy a resubir los updaters a fecha de hoy 15 , por la mañana con la funcion ordenada de esa forma , y el menu apañado.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 10:47 (Lunes)
FTP SINCRONIZADO

todos los scripts tienen fecha de hoy 15

subi 3 o 4 que pase

desarrollo portada y juegos me falta uno.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 15-09-2014, 10:48 (Lunes)
Yo creo que poner la comprobación de internet como primer paso sería mejor... ya me ha pasado alguna vez que la definición de las variables de versión se quedaban "pilladas" buscando una conexión que no funcionaba, justo al comenzar el script.



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:12 (Lunes)
Yo creo que poner la comprobación de internet como primer paso sería mejor... ya me ha pasado alguna vez que la definición de las variables de versión se quedaban "pilladas" buscando una conexión que no funcionaba, justo al comenzar el script.



Saludos

pero si el orden es el mismo que había ...solo he variado el de comprobar internet y presentación


entonces que sugieres

1 - f_variables
2 - f_presentacion
3 - f_comprobarconexion
4 - F_variables

esta combinación no funcionaria , el name del paquete se necesita antes ...

?¿

lo que ha cambiado únicamente de como lo dejaste es que sale antes la presentación y acto seguido comprueba internet , las variables de funciones y del propio script están en el mismo orden que las dejaste.

ahora mismo la config es

1 - f_variables
2 - F_variables
3 - f_presesntacion
4 - f_comprobarconexion


comprobar la conexión antes o depsues no afecta a las variables...solo es un ping a google ...
y solo entran a juego cuando son llamadas y entonces miraran online lo que necesiten y no antes , primero ya pasan el ping a google, si pasan es que hay internet..las variables solo fallan cuando hay algo mal en el script ,y se queda el script pillado pensando , pero no tiene que ver con el orden de las variables ...


por ejemplo

VERSION=

suele ser una consula a un sitio web ...¿en que puede afectarle el hacer antes un ping a google ? ... la web o responde o no , el ping a google es irrelevante.,


____________________________________________________

en realidad si que se cambio desde el principio el orden de

f_variables  y F_variables

por que si no , los scripts petaban todos ...  las funciones de funsiones.sh no pueden trabajar si ANTES NO LE PASA EL PRGNAM  , que es del propio script junto al resto de variables.

si un script se queda pillado al inicio (no me ha pasado nunca)  ... cierralo y vuelve a relanzarlo.

si google tarda en responder el ping, también puede dar esa sensación de que se ha pillado ... pero a los 3 o 4 segundos arranca.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 15-09-2014, 11:15 (Lunes)
Lo que digo es poner el orden así:

1 - f_comprobarconexion
2 - f_variables
3 - F_variables
4 - f_presentacion
...


Ya me ha pasado alguna vez que el script se ha quedado "bloqueado" por algún problema con la conexión a internet, cuando ha ido a resolver las variables de VERSION, REVISION, etc.
Por eso creo que el primer paso es ver si tenemos una conexión a internet habilitada, y si no la hay, salir del script.



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:21 (Lunes)
las variables no son validas hasta que son llamadas ... y son llamadas mucho después de comprobar internet.


lo único que me molesta de ese orden es el hecho de ver la comprobación de conexión incluso antes que su propia presentación.

es algo meramente estético ...

podría hacer algunos ajustes en comprobar conexión ..que solo salga mensaje SI NO HAY CONEXION , y quitarle los sleep si tiene alguno.

luego lo miro ...creo podemos ponerlo como dices (aunque creo no afecta pero da igual) ....simplificando al máximo la comprobación a internet y mostrando el mensaje solo SI NO HAY ACCESO A LA RED ...si hay acceso , se continua de forma silenciosa.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 15-09-2014, 11:26 (Lunes)
No, las variables se inicializan en el momento de su definición.

Por ejemplo, imagina esto:

VERSION=`curl xxxxxx|grep xxxxx`

Al llegar a esa línea, la variable VERSION ejecutará el curl, aunque no la usemos en el script... por eso creo que es mejor comprobar la conexión antes de nada.



Saludos

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:31 (Lunes)
me acabo de acordar de algo , .mira ..

el unico script que se me ha colgado como tu dices es el de aicrack-ng ...

¿ sabes por que ? ... se queda colgado , cuando el sitio svn no esta disponible ... llmas a la funcion VERSION , y no se puede definir, por que el sitio web no responde ... eso te pasara sompruebes antes internet o no ...


por eso a ese script concreto hace poco le meti una variable a posta para el solo ...

___________________________________________________________________________________

   TEST_SVN=`svn info http://svn.aircrack-ng.org | grep -i url | cut -d ":" -f1`
   if [ $TEST_SVN = URL ]; then
      echo ""
      echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
      sleep 5
      echo ""
      $SVN
   else
      echo "$ROJO"El sitio svn de aircrack-ng no responde"$CIERRE ... $BLANCO"el script se cerrara."$CIERRE"
      echo ""
      sleep 5
      exit 0
   fi



esa funcion hace que si el svn NO RESPONDE , al menos te muestre un mensaje y sepas por que te quedas pillado ,ademas cierra el script.


cualquier script que al llamar a VERSION , el sitio web no responda , se te quedara pillado...y no sabras por que...y es simplemente eso , ..la variable intenta mirar la version , pero si el sitio web no esta disponible no puede ejecutar su tarea...y se queda a la espera de UNA RESPUESTA.

El caso es que lo que decias me sonaba , solo pasa con el de aicrack , que a veces el sitio svn no acepta conexion y te quedas esperando como un tonto.  ;D


te prometo que no te va a pasar mas  ....  no es necesario cambiar el orden ... a fin de cuentas que tengas internet (ping a google)  ..no te asegura que el sitio web de la app ,te vaya a responder mas adelante.

tal vez una misma funcion ...o en la misma de comprobar conexion ,se compruebe respuesta de google ... o directamente del sistio web que necesitamos...que es el que al final nos vale.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 15-09-2014, 11:33 (Lunes)
Ah... es que precisamente yo empecé con el update de aircrack (ya es casualidad) :D
Bueno, si el tema del cuelgue solo pasa con el SVN y es específico del aircrack, podemos dejarlo así jejjeje.




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:34 (Lunes)
voy a cambiarlo a como pides , .... aunque nunca me dio problemas, mas alla de un sitio web que no responda.

pero simplificare la funcion de ping a google ...

ten en cuenta que si tienes respuesta de google, pero no del sitio web , la variable quedara vacia  igualmente  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 15-09-2014, 11:36 (Lunes)
Lo mismo el sitio web está levantado y es google el que está caído... XDDDD
Hasta podríamos hacer la comprobación de internet utilizando la variable del sitio web remoto propia de cada script, algo como esto:

f_compruebaInternet [parametro]

Si no le pasamos nada, hace ping a google. Si le pasamos $WEB, mirará directamente donde queremos (no estaría mal) ;)



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:38 (Lunes)
Ah... es que precisamente yo empecé con el update de aircrack (ya es casualidad) :D
Bueno, si el tema del cuelgue solo pasa con el SVN y es específico del aircrack, podemos dejarlo así jejjeje.




Saludos


claro , ....si es que me sonaba, y es justo ese EL UNICO CASO , ese script ya lleva un tiempo escrito


antes era a su royo , ... ese petaba si el svn no estaba accesible
despues (ahora en desarrollo)  ,  al pasarlo al primero formato de grupo se me paso varias veces esa ))))) y me dije , ... no me quedo mas veces como un tonto mirando ... al ir a descargar compruebo que el svn esta accesible ..y si no lo esta aviso y chapo script ... por que te quedas ESPERANDO ETERNAMENTE , por que la variable version , intentar resolverse y si el svn no esta..no puede resolverse nunca ...se queda pillada hasta obtener respuesta si no llega nunca, no sale del blucle ...


por eso ahora si no me responde svn , directamente chapo chiringuito , aviso ..y digo "prueba mas tarde"


nunca te pasara con el resto de scripts ...y el de aircrack , TODOS LOS AÑOS , en verano suele tener un tiempo caido el svn , para mantenimientos.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:42 (Lunes)
Lo mismo el sitio web está levantado y es google el que está caído... XDDDD
Hasta podríamos hacer la comprobación de internet utilizando la variable del sitio web remoto propia de cada script, algo como esto:

f_compruebaInternet [parametro]

Si no le pasamos nada, hace ping a google. Si le pasamos $WEB, mirará directamente donde queremos (no estaría mal) ;)



Saludos

en concreto al de aircrack , es al uncio que le cambiara en vez de un ping a google, ..al svn de aircrack ..sin svn , ni lanzamos el script ...pa que.

el resto de sitios no fallara , por que digamos esta accesibles siempre los 365 dias del año , al ser formato web ... un svn puedes tenerlo caido por mantenimiento ,my una web tambien , peor la web es lo que se ve, no tardas ni un dia en resolver , pero svn ,como es algo que no se ve y solo usan desarrolladores, pues a veces pasa eso ...de no ser un sitio importante como kernel.org que tampoco tienen svn caido mas de un dia.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 11:44 (Lunes)
pues si quieres , ajusta el de aircrack ... el resto no padecen de ese mal.  ;D

comprobar internet ...  if prgnam aircrack-ng , then ping al svn ,else ping a google ..

de todas formas , hasta el verano que viene ya no deberia falla  ;D ;D ;D ;D y si falla, ya lleva una funcion al respecto (ahora) , antes no la llevaba.  ;)

yo no le daria mas vueltas ... si un dia se te quedase pillado o sale el mensaje svn no disponible ...ejecuta el comando en consola , y veras que realmente el svn no esta accesible  ;)


ya avise , ...que ese es un script un poco "especial" , o "tiquismiquis" , por que habia , posibles resultados de fallo ...pero de momento creo estan bien resueltas al ajustar todo ese royo del svn.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 12:09 (Lunes)
con este he acabado la categoria juegos ...

anoche me pegue con el 3 horas sin poder acabarlo por que los parches no aplicaban si usaba  EOF  , ...asi que plan b ,pasarlos por base64 , y aplicar  ;D

este lleva añadidos en creartemporal ...  >:(  , al final va a resultar util , poder añadir parametros extras en las funciones.


brutalchess_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140915

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB=http://downloads.sourceforge.net/brutalchess/
VERSION=0.5.2
PRGNAM=brutalchess
}

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

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-alpha-$VERSION-src.tar.gz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
wget $WEB$PRGNAM-alpha-$VERSION-src.tar.gz
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-alpha-$VERSION-src.tar.gz
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 {} \;

echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3

# Si la version es 0.5.2 necesita parches
if [ $VERSION = 0.5.2 ]; then
echo "
LS0tIHNyYy9tZDN2aWV3LmNwcC5vcmlnCTIwMDgtMDctMTkgMDk6MDA6MjMuMDAwMDAwMDAwICsw
MjAwCisrKyBzcmMvbWQzdmlldy5jcHAJMjAwOC0wNy0xOSAwOTowMDozOS4wMDAwMDAwMDAgKzAy
MDAKQEAgLTcyLDcgKzcyLDcgQEAKIAlleGl0KCByZXR1cm5Db2RlICk7CiB9CiAKLWludCBpbml0
R0woIEdMdm9pZCApOworaW50IGluaXRHTCggdm9pZCApOwogLy8gZnVuY3Rpb24gdG8gcmVzZXQg
b3VyIHZpZXdwb3J0IGFmdGVyIGEgd2luZG93IHJlc2l6ZQogaW50IHJlc2l6ZVdpbmRvdyggaW50
IHdpZHRoLCBpbnQgaGVpZ2h0ICkKIHsKQEAgLTEwOCw3ICsxMDgsNyBAQAogCiAKIC8vIGdlbmVy
YWwgT3BlbkdMIGluaXRpYWxpemF0aW9uIGZ1bmN0aW9uCi1pbnQgaW5pdEdMKCBHTHZvaWQgKQor
aW50IGluaXRHTCggdm9pZCApCiB7CiAJY291dCA8PCAiSW5pdGlhbGl6aW5nIE9wZW5HTCIgPDwg
ZW5kbDsKIAkvLyBFbmFibGUgc21vb3RoIHNoYWRpbmcKLS0tIHNyYy9vYmp2aWV3LmNwcC5vcmln
CTIwMDgtMDctMTkgMDk6MDA6NTUuMDAwMDAwMDAwICswMjAwCisrKyBzcmMvb2Jqdmlldy5jcHAJ
MjAwOC0wNy0xOSAwOTowMTowNC4wMDAwMDAwMDAgKzAyMDAKQEAgLTczLDcgKzczLDcgQEAKIAll
eGl0KCByZXR1cm5Db2RlICk7CiB9CiAKLWludCBpbml0R0woIEdMdm9pZCApOworaW50IGluaXRH
TCggdm9pZCApOwogLy8gZnVuY3Rpb24gdG8gcmVzZXQgb3VyIHZpZXdwb3J0IGFmdGVyIGEgd2lu
ZG93IHJlc2l6ZQogaW50IHJlc2l6ZVdpbmRvdyggaW50IHdpZHRoLCBpbnQgaGVpZ2h0ICkKIHsK
QEAgLTEwOSw3ICsxMDksNyBAQAogCiAKIC8vIGdlbmVyYWwgT3BlbkdMIGluaXRpYWxpemF0aW9u
IGZ1bmN0aW9uCi1pbnQgaW5pdEdMKCBHTHZvaWQgKQoraW50IGluaXRHTCggdm9pZCApCiB7CiAJ
Y291dCA8PCAiSW5pdGlhbGl6aW5nIE9wZW5HTCIgPDwgZW5kbDsKIAkvLyBFbmFibGUgc21vb3Ro
IHNoYWRpbmcKQEAgLTE1OCw3ICsxNTgsNyBAQAogfQogCiAvLyBIZXJlIGdvZXMgb3VyIGRyYXdp
bmcgY29kZQotaW50IGRyYXdHTFNjZW5lKCBHTHZvaWQgKQoraW50IGRyYXdHTFNjZW5lKCB2b2lk
ICkKIHsKIAkvLyBUaGVzZSBhcmUgdG8gY2FsY3VsYXRlIG91ciBmcHMKIAlzdGF0aWMgR0xpbnQg
VDAgICAgID0gMDsK
" | base64 -d > $TMP/brutalchess-0.5.2-fix-FTBFS.patch

echo "
LS0tIHNyYy9icnV0YWxwbGF5ZXIuY3BwLm9yaWcJMjAwOC0wNy0xOSAwOTowNTo1Ny4wMDAwMDAw
MDAgKzAyMDAKKysrIHNyYy9icnV0YWxwbGF5ZXIuY3BwCTIwMDgtMDctMTkgMDk6MDY6MDguMDAw
MDAwMDAwICswMjAwCkBAIC0xMiw2ICsxMiw3IEBACiANCiAjaW5jbHVkZSA8dmVjdG9yPg0KICNp
bmNsdWRlIDx0aW1lLmg+DQorI2luY2x1ZGUgPGNsaW1pdHM+DQogDQogdXNpbmcgbmFtZXNwYWNl
IHN0ZDsNCiANCg==
" | base64 -d > $TMP/brutalchess-0.5.2-gcc4.3.patch

echo "
ZGlmZiAtTmF1ciBicnV0YWxjaGVzcy0wLjUuMi5vcmlnL3NyYy9mYWlsZXBsYXllci5jcHAgYnJ1
dGFsY2hlc3MtMC41LjIvc3JjL2ZhaWxlcGxheWVyLmNwcAotLS0gYnJ1dGFsY2hlc3MtMC41LjIu
b3JpZy9zcmMvZmFpbGVwbGF5ZXIuY3BwCTIwMDYtMTItMjAgMjE6MTk6NTAuMDAwMDAwMDAwICsw
MTAwCisrKyBicnV0YWxjaGVzcy0wLjUuMi9zcmMvZmFpbGVwbGF5ZXIuY3BwCTIwMTItMDQtMDIg
MjE6NDY6NDAuNzAyMDAwMDI1ICswMjAwCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSA8Y2Fz
c2VydD4KICNpbmNsdWRlIDxzc3RyZWFtPgogI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx1
bmlzdGQuaD4KIAogdXNpbmcgbmFtZXNwYWNlIHN0ZDsKIApkaWZmIC1OYXVyIGJydXRhbGNoZXNz
LTAuNS4yLm9yaWcvc3JjL3hib2FyZHBsYXllci5jcHAgYnJ1dGFsY2hlc3MtMC41LjIvc3JjL3hi
b2FyZHBsYXllci5jcHAKLS0tIGJydXRhbGNoZXNzLTAuNS4yLm9yaWcvc3JjL3hib2FyZHBsYXll
ci5jcHAJMjAwNi0xMi0xOSAwNTowMDowMS4wMDAwMDAwMDAgKzAxMDAKKysrIGJydXRhbGNoZXNz
LTAuNS4yL3NyYy94Ym9hcmRwbGF5ZXIuY3BwCTIwMTItMDQtMDIgMjE6NTA6MDkuNzc1MDAwMDI1
ICswMjAwCkBAIC0xNCw2ICsxNCw3IEBACiAjaW5jbHVkZSA8Y2Fzc2VydD4KICNpbmNsdWRlIDxz
c3RyZWFtPgogI2luY2x1ZGUgPHN0cmluZz4KKyNpbmNsdWRlIDx1bmlzdGQuaD4KIAogdXNpbmcg
bmFtZXNwYWNlIHN0ZDsKIAo=
" | base64 -d > $TMP/brutalchess-0.5.2-gcc4.7.patch

# Aplicamos parches
patch -p0 -i $TMP/brutalchess-0.5.2-fix-FTBFS.patch || exit 1
patch -p0 -i $TMP/brutalchess-0.5.2-gcc4.3.patch || exit 1
patch -p1 -i $TMP/brutalchess-0.5.2-gcc4.7.patch || exit 1
fi

# Pasamos a configurar y compilar

CXXFLAGS="$SLKCFLAGS" \
CFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --bindir=/usr/games \
  --libdir=/usr/lib$LIBDIRSUFFIX \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --build=$ARCH-slackware-linux \
  || exit 1

make -j$NUCLEOS
make install DESTDIR=$PKG

# Creamos icono y desktop
echo "
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
" | base64 -d > $PKG/usr/share/pixmaps/$PRGNAM.png

echo "[Desktop Entry]
Name=Brutal Chess
Exec=$PRGNAM
Icon=$PRGNAM
Type=Application
Categories=Game" > $PKG/usr/share/applications/$PRGNAM.desktop
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos conexion a Internet
f_comprobarConexion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal $PKG/usr/share/{applications,pixmaps}
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 12:18 (Lunes)
ya se ve la luz al final del tunel ...


me pido librerias.


quedan solo , navegadores y multimedia , ...

y acabar las dos categorias empezadas auditores e internet ..y ya podremos escribir nuevos.

el del driver ati , no lo voy a portar , por que al final tiene muchas tareas fuera de lo habitual y no vale la pena complicarse tanto la vida...al igual que el del kernel-compiler

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 13:23 (Lunes)
ya casi tengo acabada la categoria librerias ...

gstreamer , ese no lo voy a pasar por que es un all-in-one ,lleva dentro de si mismo para compilar 7 u 8 paquetes distintos ... y es un jaleo pasarlo.


mono -->> me esta dando error al compilar , no se si por la version , o por estar mal portado o por que ... si no lo resuelvo , lo eliminare, puesto que estaba en exclusiva para networkminer, pero despues este usar wine, en vez de mono , ...asi que mono ahora mismo es prescindible ...ademas se tarda muchisimo mas en crear el paquete para mono que para wine , ya que mono hay que compilarlo y es un paquete grodo , wine es mas liviano de hacer.


el resto estan portados y probados.  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 15-09-2014, 15:10 (Lunes)
mono al final se va a ir a la selva .. no me hace falta.

empiezo con multimedia...

quedaran

navegadores
y  el resto de internet y auditores


__________________________

ahora mismo no puedo acceder al ftp , ya he acabado librerías y multimedia.

queda solo , lo que ya había asignado , y NAVEGADORES , me pondré con navegadores y en caso de acabar
empezare por el ultimo de la categoría auditores, que tiene mas que los 2 o 3 que le faltan a vk496 ... a ver si para el viernes de cara al fin de semana  , esta acabado estoy y subo iso.    >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 16-09-2014, 01:06 (Martes)
navegadores , solo me falta el de chrome
internet -->> estoy rematando los 3 que faltan acabados

si me da tiempo me meto con auditores.


al funciones.sh , le he tenido que meter alguna cosilla mas, pero nada grave ..algun if.



______________________________

FTP SINCRONIZADO


RESUMEN: Faltan portar chrome y categoría auditores todos menos aircrack y armitage
se caen de la lista mono y q4wine
y quedan sin portar por ser complejos , kernel-compiler , gstreamer y driver ati.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 16-09-2014, 14:05 (Martes)
Ya veo que te has metido en mi territorio y te loas acabado tu solito... ;) >:(

Solo una cosa a comentar:

xampp_updater:

Código: [Seleccionar]
rm -rf /tmp/bitrock*.log &
$TMP/$ARCHIVO --debuglevel 4 --mode unattended
echo $AMARILLO
echo "Detenemos el servicio xampp y movemos ficheros ..."
/opt/lampp/lampp stop
echo $AMARILLO
echo "Moviendo /opt/lampp -->>  $PKG/opt/lampp..."
mv -f /opt/lampp $PKG/opt/lampp

Sigo creyendo que es mejor aprovechar el log de instalador (tal como se hace en sigram, ya que es e mismo) para crear el xzm.

Voy a ponerme con wifislax-updaters.... haber si le doy una pincelada en algo....

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 16-09-2014, 14:27 (Martes)
wifislas-updaters_updater. Comentado un poco el código para no liarse tanto y mostrar el numero total de scripts cuando acaba.

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

# Script for www.seguridadwireless.net by vk496

SCRIPT_VERSION=20140916

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB="http://downloadwireless.net"
ELDIRECTORIO="wifislax-updaters"
PRGNAM=$ELDIRECTORIO
DIRECTORIOHTML="?dir=$ELDIRECTORIO"
VERSION=`echo $(date +"%Y%m%d")`
CREAR_MODULO=NO
}

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

# Directorios de trabajo y actualizar
F_actualizar(){
#Creamos carpeta para los menus
mkdir -p $PKG $PKG/usr/share/applications/wifislax/Actualizadores

#Creamos la carpeta donde van a estar los scripts
if [ ! -d $PKG/opt/$ELDIRECTORIO ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO
fi

echo
#Contador de todos los scripts
contador=0
#Obtenemos la carpeta del server, y la usamos como carpeta local
for carpeta in $(curl -s $WEB/$DIRECTORIOHTML | grep "item dir" | sed 's/<[^>]\+>//g'); do
#Obtenemos el archivo del server, y lo usamos como archivo local
for archivo in $(curl -s $WEB/$DIRECTORIOHTML/$carpeta | grep "item file" | sed 's/<[^>]\+>//g' | sed 's/^[[:space:]]*//g' | grep -vE *~$); do
let contador=$contador+1
echo -n "${CYAN}Buscando $archivo... $CIERRE"

#Comprobamos si ya existe ese script
if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
#Si se trata de funciones.sh, usamos variables distintas al habitual, si no,
if [ ${archivo} == "funciones.sh" ]; then
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
else
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
fi
echo -n "${VERDE}EXISTE$CIERRE"
#Ademas de mirar si existe, comprobamos si existe version mas nueva a la que tenemos nosotros
if [[ $LOCAL_VERSION -lt $WEB_VERSION ]]; then
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo " + ${AMARILLO}ACTUALIZADO $ROSA(${WEB_VERSION:6}/${WEB_VERSION:4:2}/${WEB_VERSION:0:4})$CIERRE"
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
else
echo -e " $BLANCO(${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4})$CIERRE"
fi
#Si no existe ese escript en nuestro sistema, procedemos a descargarlo
else
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
LOCAL_VERSION=$(cat $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo "${ROJO}DESCARGADO$CIERRE $BLANCO($ROSA${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4}$BLANCO)$CIERRE"
PRGNAM_CORTO=$(echo $archivo | cut -d "_" -f1)
mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores/$carpeta
#Creamos el desktop del menu
echo "[Desktop Entry]
Categories=$carpeta;
Exec=sh -c \"/opt/wifislax-updaters/$carpeta/$archivo;${SHELL:-bash}\"
Icon=updaters
MimeType=
Name=$PRGNAM_CORTO
Path=/opt/wifislax-updaters/$carpeta/
Terminal=true
TerminalOptions=
Type=Application">$PKG/usr/share/applications/wifislax/Actualizadores/$carpeta/$PRGNAM_CORTO.desktop

fi

done

done

sleep 2
echo
}

# Crear estructura
F_estructura(){
if [ $CREAR_MODULO = SI ]; then

echo -n ${CYAN}Creando logs e instalando....$CIERRE
echo -ne "${CYAN} $ROJO$contador${CYAN} scripts$CIERRE"
sleep 5

mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores $PKG/opt/wifislax-updaters
cp -Ru /usr/share/applications/wifislax/Actualizadores/ $PKG/usr/share/applications/wifislax/
cp -Ru /opt/wifislax-updaters/ $PKG/opt/

if [ -d $PKG/usr/share/applications/wifislax/Actualizadores/Funciones ]; then
rm -rf $PKG/usr/share/applications/wifislax/Actualizadores/Funciones
fi
fi
}

F_final(){
if [ $CREAR_MODULO = SI ]; then
f_tareasFinales
else
echo $VERDE
echo No hay actualizaciones para los updaters
sleep 3
echo
echo Bye Bye
echo $CIERRE
fi
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos conexion a Internet
f_comprobarConexion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
# Directorios de trabajo y actualizar
F_actualizar
# Crear estructura
F_estructura
#Creamos xzm , instalamos y salimos
F_final

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 16-09-2014, 19:23 (Martes)
por fin he acabado el google chrome , cago en todo que locura para pillar el numero de version ...que asquito.

respecto a xampp , no lo voy a tocar te voy a explicar algo ... a ver si asi te acabo de convencer.

sigram , no es el caso , pero xampp y metasploit cuando acaban de instalarse ...arrancan servicios  y TACHAN , se generan ficheros nuevos que no puso el instalador ...

moviendo todo el /opt/  ,  me aseguro de listarlos todos ,y sean exterminados en caso de desintalar.

sigram ,creo que no arranca nada ...aunque no estoy seguro ..y tu metodo puede valer hay , pero para los otros no , por que despues de instalados generan ficheros nuevos...que no existen en el log de instalacion.


___________________________________________________________

chrome_updater

solo muestra la version estable en curso

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140916

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=google-chrome
WEB=http://googlechromereleases.blogspot.com.es/
VERSION=`curl -s $WEB | grep stable | grep Linux | cut -d " " -f8 | sed "s/ //g"`
DOWNLOAD=https://dl.google.com/linux/direct/google-chrome-stable_current_i386.deb
}

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

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f google-chrome-stable_current_i386.deb ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 5
wget $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo "$VERDE"
echo "Etrayendo contenido del fichero .deb"
echo "$CERRAR"
sleep 3
deb2dir $TMP/google-chrome-stable_current_i386.deb $PKG
rm -rf $PKG/{etc,usr/share/man/,usr/share/doc,/usr/share/menu,/usr/share/gnome-control-center}
find "$PKG/opt/google/chrome/locales" -iname "*.pak" \
-not -iname "es.pak" \
-not -iname "en-US.pak" -and \
-exec rm -rf {} \;

rm -rf $PKG/usr/share/applications/*.desktop

echo "[Desktop Entry]
Name=Google Chrome
GenericName=Web Browser
GenericName[es]=Navegador web
Exec=/opt/google/chrome/google-chrome --user-data-dir=
Terminal=false
Icon=/opt/google/chrome/product_logo_48.png
Type=Application
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;" > $PKG/usr/share/applications/$PRGNAM.desktop
}

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

#Inicializamos las variables del script
F_variables
#Inicializamos las variables globales
f_variables
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos conexion a Internet
f_comprobarConexion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura i386
#Comprobamos version instalada del script
f_versionInstalada
#Creamos directorio de trabajo
f_directorioTemporal
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 16-09-2014, 19:29 (Martes)
solo queda auditores

aircrack y armitage están portados.

falta el resto de esa categoría y por fin podremos ponernos a escribir nuevos.

mi plan es tenerlos finiquitados el jueves máximo.

viernes de mañana subir iso y ya seguir el curso normal de desarrollo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Spanky37 en 16-09-2014, 22:30 (Martes)
igual es una tonteria, de Nvidia ya teneis el updater?

Un saludo desde Asturias
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 16-09-2014, 23:04 (Martes)
igual es una tonteria, de Nvidia ya teneis el updater?

Un saludo desde Asturias

solo tengo el de ati , ...  el de nvidia ya vere , por que no conzco tanto el proceso y no se si podre automatizarlo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 03:11 (Miércoles)
solo faltan estos por portar

bully_updater
burpsuite_updater
crunch_updater
ettercap_updater
hashcat_updater
hydra_updater
metasploit_updater
networkminer_updater
nmap_updater
patrones-conocidos_updater
pentbox_updater
set_updater


el de bully esta en rojo , por que hay que re-escribirlo casi entero , ....abra que meterle para generar el desktop y el icono , .... actualmente solo compara y si son la mims ala de sistema y la de la web , se cierra el script diciendo ya tienes la ultima , ... eso hay que cambiarlo , a que si es la misma , muestre el dialogo de comparacion , por si alguien quiere reinstalarlo por lo que sea.


he empezado por los ultimos alfabeticamente  , ...  asi que para el final estaria bully, si nadie quiere hacerse cargo.  ;D

cuando acabe turno a las 6 de la mañana pondre por donde voy ... pero no creo que me los acabe todos.

si alguien pilla el de bully que avise.



______________________

al final no he hecho nada mas , .. la lista de arriba son los que faltan aun , ..el de bully me lo dejo para el ultimo por que casi abra que escribirlo entero , si no lo pilla antes nadie.  >:D >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 17-09-2014, 07:11 (Miércoles)
Yo mínimo hasta mañana no tendré tiempo para mirar nada, llevo unos días... al final te los has currao tú solo prácticamente, eres un máquina!  >:( >:( >:(
Por cierto... pyrit no tiene actualizados?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 12:14 (Miércoles)
Yo mínimo hasta mañana no tendré tiempo para mirar nada, llevo unos días... al final te los has currao tú solo prácticamente, eres un máquina!  >:( >:( >:(
Por cierto... pyrit no tiene actualizados?



Saludos

piryt , quiero ponerlo ... en realidad quiero sacar de la distro los plugins graficos , que al estar los dos a la vez y sin driver ati/nvidia , creo que causan mas daño que beneficio ,de forma que estaria de serie piryt a secas , y los plugins desde updaters , comprobando antes la existencia del driver oficial de cada uno  ... el de nvidia sera mas jodio , por que reuiquiere el driver nvidia + cuda
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 12:38 (Miércoles)
Voy a dividir la categoria auditores , .. en 2


auditores  y pentest
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 14:22 (Miércoles)
estoy con el de metasploit ...  he necesitado añadir un extra a funciones.sh


en la funcion de desinatlar , si el paquete es metasploit y existe rc.metasploit  ... se detendra el servicio ...para una desinstalacion totalmente limpia...si no , el servicio queda en marchc, y al instalar la version nueva, no funcionaria hasta el siguiente reinicio de sistema.



# Elimina una version anterior
f_eliminaVersion() {
   echo ""
   echo "$ROJO"Se detecto una version antigua en el sistema... limpiando."$CIERRE"
   sleep 3
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   if [ -f /etc/rc.d/rc.metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   fi
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 16:15 (Miércoles)
rizando el rizo   ;D

por ejemplo el script de hashcat , lleva metido con base64 la gui grafica que ocupaba 520 kas y unas 8000/9000 lineas de code  ..........


comprimido con 7z , se queda en 200 kas y solo 2500 lineas de code ...   ;D ;D

lo extrae del 7z y elimina el 7z dejando el gui descomprimido.    8)



_____________________________________________

solo queda bully ....  si a la noche no lo ha hecho nadie lo pillare yo.
ahora mismo ya no ,que llevo todo el dia, con scripts, y ya voy un poco atontao   >:D >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 17:45 (Miércoles)
YA ESTAN TODOS PORTADOS PERO NO PUEDO ACCEDER AL FTP


En cuanto pueda acceder , actualizare los scripts y subire iso.   ;) :D ;D

gracias a todos.
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 17-09-2014, 18:16 (Miércoles)
Gracias a todos dice....

Pero si has hecho casi todo! Jajajaja

Salu2 y buen currazo el que te has pegado
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-09-2014, 19:14 (Miércoles)
Gracias a todos dice....

Pero si has hecho casi todo! Jajajaja

Salu2 y buen currazo el que te has pegado

para mi es casi obligación , tiene mas merito lo vuestro , que ha sido voluntario.

me estoy pensando lo de mover el menú updaters ...  tengo cambios en mente , pero antes quiero subir iso , eso será mañana a primera hora, que ahora mismo el ftp no me deja entrar.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Manuel_cdz85 en 17-09-2014, 19:19 (Miércoles)
Compañeros, os felicito, a todos, sois unos maquinas >:(

Ya se ve cada día mas cerca la 4.10  ;D

De hecho tal este lista la meto en el disco duro del portátil que me vendrá genial para los estudios y para el trabajo  (ahora uso la 4.9 como es lógico, fiel 100% linux, 100% wifislax)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 18-09-2014, 00:43 (Jueves)
llevo un rato revisando , instalando todo lo que hay en los menus ...

y de momento , me ha petado brasero y  vlc, sale sin estripar, ...ocupando 20 megas cuando en realidad ocuparia solo 5.


voy revisarlos todos.  ;)


lo de brasero es un error en el script ,

pero no funciona lo de strip  o nostrip

yo pensaba que si , por que probaba nostrip y claro , lo que ocurre es que no estripa nunca.   :P :P :P :P
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 18-09-2014, 09:47 (Jueves)
ftp actualizado , ya he conseguido que me haga caso con lo de strip o  nostrip , pero tal y como esta creo que lo único que hace es que si no hay ninguna orden ejecutar stripdir y si ve alguna orden "lo que sea" , entonces no lo ejecuta pero podría poner nostrip como si pudiera poner "dame un euro".


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 18-09-2014, 09:54 (Jueves)
Jajajajj! No te preocupes, esta noche a ver si le doy un repaso general a los scripts y arreglamos estas cosillas.




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 18-09-2014, 10:13 (Jueves)
Jajajajj! No te preocupes, esta noche a ver si le doy un repaso general a los scripts y arreglamos estas cosillas.




Saludos

ok , por que ya me estoy pensando incluso en las variables globales de cada script definir

STRIP=SI
STRIP=NO

y en funciones si estrip = SI , entonces zas.

seria una forma segura de hacerlo , y casi nos daría igual escribir STRIP=NO que nostrip   .... pero na ,yo estoy subiendo iso , y los scripts están todo probados y compilan y todo ok.

solo alguna función a mejorar.

los scripts ya están en el ftp , en la misma versión que van en el iso , por si no quereis bajar el iso entero.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 18-09-2014, 10:15 (Jueves)
¿Puedes generar un módulo con todos los scripts actualizados? Así nos ahorramos ir descargando uno a uno del repositorio ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 18-09-2014, 10:19 (Jueves)
hay van

http://www.mediafire.com/download/o4z48keeov2bdnk/wifislax_updaters-1.12-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 18-09-2014, 10:20 (Jueves)
Muchas gracias! Esta noche les echo un ojo y a ver si los pongo "finos"  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 18-09-2014, 10:31 (Jueves)
 ;)

Para pruebas rapidas recomiendo usar el updater de bully o crunch

para saber si el paquet fue estripado o  no  , extraer xzm , click derecho en carpeta stripdir ...si baja de peso la carpeta es que NO ESTABA ESTRIPADO.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 20-09-2014, 20:20 (Sábado)
He sacado la función de strip de las tareas finales, y ahora se llama a esa función en los casos en los que se quiere hacer strip (el método anterior era un poco "guarro"...)
Tienes los scripts actualizados en http://www33.zippyshare.com/v/99436230/file.html (http://www33.zippyshare.com/v/99436230/file.html) , aunque no los he probado ;D



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-09-2014, 22:23 (Sábado)
jo , pues menos mal que me acaba de dar por mirarlo  ....   ^-^


voy a cambiar el orden de llamada de funciones a como dijiste, la primera de todas comprobar conexion ...

me da la sensacion de que algunos scripts se quedan pensando ... no se si eso lo resolvera.

he minimizado al maximo esa funcion , ... solo sale un aviso si no hay internet y fuera ..sin colores ni nada por que es la primera funcion de todas , y tampoco es encesraio.


Código: [Seleccionar]
# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "No tengo internet ... el script se cerrara."
      echo ""
      sleep 5
      exit 0
   fi
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 20-09-2014, 22:28 (Sábado)
OK, y otra cosa... ¿por qué no quitamos toda esa cantidad de "sleep 3" y "sleep 5" que hay repartidos por los updaters? Yo los eliminaría, o como mucho dejaría un "sleep 1"... al final estamos más tiempo esperando sin hacer nada que actualizando :D



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-09-2014, 22:33 (Sábado)
OK, y otra cosa... ¿por qué no quitamos toda esa cantidad de "sleep 3" y "sleep 5" que hay repartidos por los updaters? Yo los eliminaría, o como mucho dejaría un "sleep 1"... al final estamos más tiempo esperando sin hacer nada que actualizando :D



Saludos

si revisas ,veras que los sleep 5 casi han pasado a la historia , ..los cambie todos por sleep 3 , ..solo si vamos a cerrar o acabamos son un sleep5.

sleep 3 , por que me gusta que la gente pueda leer lo que va haciendo el script ... si pones sleep 1 , no te da tiempo ni de ver el mensaje.  ;D


igual , lo de cambiar el orden de comprobar conexion no afecta , pero d emoemnto nos libramos de un sleep 3 si hay conexion ,que mas da... palante y pùnto ... ;D

puede que deje en sleep 1 el mensaje de salida, a fin de cuentas te vas a quedar en la shell y podras leer el mensjae  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 20-09-2014, 22:36 (Sábado)
Bueno, mientras no se haga un borrado de la pantalla, el usuario podrá leer lo que salga sin que sean necesarios esos sleeps... la verdad es que no le veo mucho sentido, a ver si te convenzo de quitarlos  ;)



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-09-2014, 23:08 (Sábado)
fijte que suelen ser cuando vamos a realizar una tarea que enseguida rellena la pantalla , y sino se para un momento no se da tiempo a leer, ... por ejemplo al ir a compilar o descomprimir un fichero.


ya he acabado de poner en primera linea de playa, la variable comprobar conexion ...

mañana actualizare en el ft.


por cierto veo que aun tienes por hay cosas que ya no son necesraias  ;)

mono_updater  -->> descartado ya no esta
q4wine_updater -->> descartado ya no esta
y luego en /opt/wifislax-updaters/Juegos  ,   ..la carpeta de brutalchess ya no es necesraia, esta todo incrustado en el updater.




gracias y buen curro.  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-09-2014, 23:23 (Sábado)
fijate que cosas , me vi obligado a alterar tu primer planteamiento de orden en las fucniones por que no se podia pillar el PRGNAM , sin ejecutar antes las variables propias del script -.-

y ahora fijate que sencillo es ....   me veo abligado , para que rule todo.


se mueven las variables que necesitan el PRGNAM a una funcion posterior y ya esta..

solo se necesitan para las rutas de trabajo temporales ... mira que facil era ... se movian a un sitio que ademas parece mejor opcion  ....  no se como no lo vi antes, estaba a huevo.


Código: [Seleccionar]
# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   TMP=${TMP:-/tmp/build/$PRGNAM}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}
   DIR_EXTRA=$@
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT $DIR_EXTRA
   cd $TMP
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 21-09-2014, 11:02 (Domingo)
por cierto veo que aun tienes por hay cosas que ya no son necesraias  ;)

mono_updater  -->> descartado ya no esta
q4wine_updater -->> descartado ya no esta
y luego en /opt/wifislax-updaters/Juegos  ,   ..la carpeta de brutalchess ya no es necesraia, esta todo incrustado en el updater.


Ah ok, yo añadí el módulo que pusiste y claro, lo antiguo de la ISO del día 10 se quedó ahí también, por eso aparece en el comprimido.
También he visto que el actualizador de gstreamer no está portado, ¿es porque tiene algo especial, como los de ATI o Kernel?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 18:54 (Domingo)
el de gstreamer es un todo en uno , baja como 6 o 7 paquetes distintos ... y no se ni por donde cogerlo , y eso que lo escribi yo.

lo mas sencillo seria dividirlo ...

gstreamer1
gstreamer1-plugins-good
gstreamer1-plugins-bad

etc
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 21-09-2014, 19:50 (Domingo)
Si ves que es muy difícil, no vale la pena complicarse la vida....

En el futuro, si es muy demandado, pos se podría hacer.... XD

Nota: me he fijado, que a veces es muy lento descargar. Wget no tiene opción de conexiones múltiples.

Para libreoffice iba a tardar 1h en principio....

Probé con aria2 y 5 conexiones simultaneas.... 49seg.

Creo que habría que planteárselo......

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 20:03 (Domingo)
aria es un sustituto de wget ??
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 21-09-2014, 20:06 (Domingo)
Yo aria no lo conozco, pero axel si que es un buen sustituto, yo lo utilizo desde siempre.

Subiría el módulo pero lo tengo desde hace bastante y estará muy desactualizado, así que es mejor buscar una versión actual.

Lo bueno que tiene axel es que le puedes decir el número de conexiones simultaneas que quieras, yo siempre le pongo 3, y descarga como un tiro siempre que tengas buena conexión a internet.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 20:08 (Domingo)
Yo aria no lo conozco, pero axel si que es un buen sustituto, yo lo utilizo desde siempre.

Subiría el módulo pero lo tengo desde hace bastante y estará muy desactualizado, así que es mejor buscar una versión actual.

Lo bueno que tiene axel es que le puedes decir el número de conexiones simultaneas que quieras, yo siempre le pongo 3, y descarga como un tiro siempre que tengas buena conexión a internet.

aria , parece que hace tambin ,ultiples conexiones...

bien , ...  me gusta la idea de mejorar ese tema, ahora cual ...

aria2 , no necesita nada por que la dependencia c-ares ya viene en la iso ..
axel ... voy a mirarlo a ver.


axel parece que no necesita nada , sin dependencias , y lo venden muy bien ..

la sintaxis seria ???

en vez de wget  ,...  voy a estudiarlos.


como es algo muy claro creo que sera sencillo  sustituir la orden con sed


sed "s/wget/NUEVAOREDEN/g"      ¿ verdad ?
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 21-09-2014, 20:14 (Domingo)
aria2 -x 5 http://......

Yo uso aria2 porque también está en mi router con interfaz gráfica.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 20:25 (Domingo)
axel ocupa 20 kas , y aria casi un mega ...aparentemente pueden hacer lo mismo...



creo que me quedare con axel , por que ocupa 30 veces menos , consume menos y la unica diferencia es que aria ,puede bajar torrents y demas cosas que en principio ni fu ni fa.

me choca una opcion de axel , que puede buscar en distintas url y balancear la carga ...sumarlas etc para conseguir el maximo rendimiento ...aunque en principio me conformo con poder abrir la descarga con mas de un hilo.   ;D


contra mas leo , peor ..   ;D

resulta que axel , no soporta peticiones a https , ... convierte las peticiones en http normales, y si el sitio lo rechaza , no descargas.   :(

aria2 si soporta el https , ...de hecho hay que pasarle un parametro en la compilacion para que use openssl.

Código: [Seleccionar]
HTTPS="openssl"
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 21-09-2014, 20:43 (Domingo)
sed "s/wget/NUEVAOREDEN/g"      ¿ verdad ?

Sería así:

Código: [Seleccionar]
cd /opt/wifislax-updaters && find . -type f -iname "*_updater" | xargs -i sed -i "s/wget/NUEVAORDEN/g" "{}"
Aunque después tendrás que revisarlos y modificar algunos a mano porque hay algunos scripts que lanzan wget con parámetros que no funcionarán ni con axel ni con aria..
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 20:47 (Domingo)
ufff , primera prueba y axel a cagarla..

Código: [Seleccionar]
wifislax ~ # axel -a -n 3 https://1.eu.dl.wireshark.org/src/wireshark-1.12.1.tar.bz2
Initializing download: https://1.eu.dl.wireshark.org/src/wireshark-1.12.1.tar.bz2
Too many redirects.

y no ha descargado claro ...


aria2c , no se ha quejado ...

Código: [Seleccionar]
aria2c -x 5 https://1.eu.dl.wireshark.org/src/wireshark-1.12.1.tar.bz2
y se ha puesto a descargar.

creo sere un poco conservador y metere un x 3 , en vez de un x 5


me llamaba mas axel , pero ..las pruebas estan hay , no veo opcion de maximos redireccionamientos admitidos para axel .... 
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 21:06 (Domingo)
bueno ya les he metido para que usen aria en vez de wget ... ahora tocara probarlos todos , o al menos hasta la parte donde descargan el fichero.   ;) ;)


gracias a todos.  >:(
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 21-09-2014, 21:17 (Domingo)
Me suena a mi que creé un script que dependía expresamente de la salida de wget (para pillar la versión o algo así)

Creo que es el único problema que te vas a encontrar....

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 21:25 (Domingo)
Me suena a mi que creé un script que dependía expresamente de la salida de wget (para pillar la versión o algo así)

Creo que es el único problema que te vas a encontrar....

Salu2

lo que ocurre , es que en algunos scripts para pillar el numero de version en vez de curl se usaba wget -c pagina ...

yo tenia el de aircrack , o el de wireshak y firefox, pero los porte y ahora usan todos curl ...asi que , mirare a ver si encuentro ese que dice vk.


por cierto , ya me estoy otra vez matando a cambiar el orden de las fucking funciones ... ;D

Código: [Seleccionar]
#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 $PKG/usr/{bin,share/crunch}
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
#F_dependencias
#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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-09-2014, 23:06 (Domingo)
voy a hacer un miniresumen de los cambios que estoy haciendo y que os obligaran a bajar una nueva iso de desarrollo  ... ya avisare cual.


categoria actualizadores , sale de sistema y se situa bajo "wifislax"
categoria Auditores , se renombra a Auditoria
categoria Auditoria se divide en dos y se sacan de hay los relacionados con pentest
categoria Pentest , alvergara dichos updaters tales como metasploit ,set ,websploit etc.

esto en kde ya lo tengo hecho , ... ahora me meto en xfce   :'(
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 22-09-2014, 07:45 (Lunes)

por cierto , ya me estoy otra vez matando a cambiar el orden de las fucking funciones ... ;D


Pues imaginate si no tuviéramos el código reorganizado mediante funciones... cambiar la lógica de todos los scripts a mano sería inviable :D



Saludos
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 07:59 (Lunes)

por cierto , ya me estoy otra vez matando a cambiar el orden de las fucking funciones ... ;D


Pues imaginate si no tuviéramos el código reorganizado mediante funciones... cambiar la lógica de todos los scripts a mano sería inviable :D



Saludos

jajaj , ya ya, pero lo que he cambiado ha sido en todos , uno a uno ..

el orden de las fucking funciones del final .. el orden al que se las va llamando ..


por cierto acabo de actualizar el ftp ...

pero si no vais a bajar la iso de hoy 22092014  , deberesi borrar toda la carpeta de wifislax-updaters , menos el wifislax-updaters_updater  ...  para eliminar cosas viejas que tengáis , y bajar los script bien ,ya que como digo he dividio los de auditoria y los de pentest en dos.

lo mejor es que bajéis el iso de hoy , pero si no os es posible ... pues bajad los scripts nada mas.

pero os aparecerán cosas en objetos poerdidos , por que os faltaran categorías nuevas en los menus , además que ya saque los actualizadores al menú central ...  ;D



PD: podeis usar desde consola el comando

base_updater

que os creara una script de un updater vacio ,con las funciones..solo para rellenar  ;D

aunque me acabo de recordar que no he añadido la función striptease ...   >:D >:D >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 22-09-2014, 08:00 (Lunes)
Jejejej, veo que todavía estás subiendo la ISO al repositorio, luego la bajaré.
¿Qué quedaría para ir preparando las release candidate de la 4.10?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 08:06 (Lunes)
Jejejej, veo que todavía estás subiendo la ISO al repositorio, luego la bajaré.
¿Qué quedaría para ir preparando las release candidate de la 4.10?



Saludos

si te soy sincero faltar no falta nada ... conforme pasa el tiempo voy actualizándome y cuando ya ha pasado un tiempo , pues pongo una iso como rc o dos ...para ver si hay bugs , se reparan y se libera una como oficial.

solo me gustaría añadir mas updaters ... por que aun hay cosas que teníamos antes en xzm , y aun no están en los updaters ...  subterfuge , websploit ...y cosas asi ... por lo menos para poder tener lo mismo a lo que ya tenían acceso antes.


las qt5 , las tengo listas en un updater pero es algo inhumano ...en mi x4 , tarda hora y media en compilar, en un monocore o un x2 es una locura ...  seguramente ponga 2 uno para compilar dedse sources m y otro para bajar un xzm ...  o txz  e instalarlo ...

tambien hable por encima con geminis_demon , para ver lo que comento del repositorio de paquetes ya hechos ... como los de slackware pero uno nuestro , con paquetes como por ejemplo el de qt5 que para cualquier usuario seria un infierno compilarlo...de hehco en modo live ni se puede por que requiere mucho espacio.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 08:08 (Lunes)
la iso estará subida a las 8:35   ;)

http://www.downloadwireless.net/isos-fase-testing/wifislax-current/wifislax-4.9-22092014.iso

MD5:  cd0df75bb18367b6d2bd1d5551b7e716
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 22-09-2014, 11:26 (Lunes)
la iso estará subida a las 8:35   ;)

http://www.downloadwireless.net/isos-fase-testing/wifislax-current/wifislax-4.9-22092014.iso

MD5:  cd0df75bb18367b6d2bd1d5551b7e716

Estoy probandola en este momento (escribo desde ella) y es estupenda.

Me ha dado por probar el actualizador de los Kde-Games y hecho en falta el KMines, ¿ ya no forma parte de los Kde-Games ?.

Sigo con las pruebas y si veo algo mas que comentar os aviso.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 14:24 (Lunes)
a ver si se pasa vk496 que es el que controla bien ese script ..

para salir del paso me ha funcionado esta chapucilla ... pero no creo que sea la mejor opcion  ...

voy a actualizar el script en el ftp , de forma que si lo vuelves a ejecutar , se autoactualizara el script a la version corregida ...

pero repito es un apaño temporal ,por que simplemente añadiendole otro greo con kmines no me ha funcionado..


Código: [Seleccionar]
LOSEXTRAS=$(echo "$ELGRANARCHIVO" | grep NAME | grep -E "(libkmahjongg|kmines)" | awk '{print $3}')
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 22-09-2014, 15:24 (Lunes)
a ver si se pasa vk496 que es el que controla bien ese script ..

para salir del paso me ha funcionado esta chapucilla ... pero no creo que sea la mejor opcion  ...

voy a actualizar el script en el ftp , de forma que si lo vuelves a ejecutar , se autoactualizara el script a la version corregida ...

pero repito es un apaño temporal ,por que simplemente añadiendole otro greo con kmines no me ha funcionado..


Código: [Seleccionar]
LOSEXTRAS=$(echo "$ELGRANARCHIVO" | grep NAME | grep -E "(libkmahjongg|kmines)" | awk '{print $3}')

O.K., estoy probando ahora mismo, pero creo que el scripts no se ha actualizado porque está descargando 33 paquetes (lo mismo que esta mañana).

No obstante en cuanto termine de descargar, compilar e instalar posteo los resultados.

Editado:

No se ha actualizado el scripts del KdeGames y ha descargado e instalado los mismos.

Ademas he visto un fallo en el wifislax-updaters, esto es lo que pone:

Código: [Seleccionar]
******************************
           Actualizador/Instalador    
           Paquete: wifislax-updaters
                                    
           www.seguridadwireless.net  
        ******************************

Version Script: 16/09/2014
/opt/wifislax-updaters/Sistema/wifislax-updaters_updater: línea 30: PKG: variable sin asignar
wifislax Sistema #

Editado 2:

He modificado el script a mano cambiando la linea que has comentado y lo he vuelto a ejecutar y ahora si me ha detectado 34 paquetes.

En cuanto termine comento resultados.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 15:52 (Lunes)
no se autoactualiza por que no he podido acceder al ftp a meter la nueva version del script,..por eso detecta la misma version y no se autoactualiza.


pero el parche funca ..  ;D



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

# Script for www.seguridadwireless.net by vk496

SCRIPT_VERSION=20140922

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB="http://downloadwireless.net"
ELDIRECTORIO="wifislax-updaters"
PRGNAM=$ELDIRECTORIO
DIRECTORIOHTML="?dir=$ELDIRECTORIO"
VERSION=`echo $(date +"%Y%m%d")`
CREAR_MODULO=NO
}

#Creamos directorios extra
F_extradirs(){
mkdir -p $PKG $PKG/usr/share/applications/wifislax/Actualizadores
}

# Directorios de trabajo y actualizar
F_actualizar(){

#Creamos la carpeta donde van a estar los scripts
if [ ! -d $PKG/opt/$ELDIRECTORIO ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO
fi

echo
#Contador de todos los scripts
contador=0
#Obtenemos la carpeta del server, y la usamos como carpeta local
for carpeta in $(curl -s $WEB/$DIRECTORIOHTML | grep "item dir" | sed 's/<[^>]\+>//g'); do
#Obtenemos el archivo del server, y lo usamos como archivo local
for archivo in $(curl -s $WEB/$DIRECTORIOHTML/$carpeta | grep "item file" | sed 's/<[^>]\+>//g' | sed 's/^[[:space:]]*//g' | grep -vE *~$); do
let contador=$contador+1
echo -n "${CYAN}Buscando $archivo... $CIERRE"

#Comprobamos si ya existe ese script
if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
#Si se trata de funciones.sh, usamos variables distintas al habitual, si no,
if [ ${archivo} == "funciones.sh" ]; then
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
else
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
fi
echo -n "${VERDE}EXISTE$CIERRE"
#Ademas de mirar si existe, comprobamos si existe version mas nueva a la que tenemos nosotros
if [[ $LOCAL_VERSION -lt $WEB_VERSION ]]; then
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo " + ${AMARILLO}ACTUALIZADO $ROSA(${WEB_VERSION:6}/${WEB_VERSION:4:2}/${WEB_VERSION:0:4})$CIERRE"
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
else
echo -e " $BLANCO(${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4})$CIERRE"
fi
#Si no existe ese escript en nuestro sistema, procedemos a descargarlo
else
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
LOCAL_VERSION=$(cat $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo "${ROJO}DESCARGADO$CIERRE $BLANCO($ROSA${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4}$BLANCO)$CIERRE"
PRGNAM_CORTO=$(echo $archivo | cut -d "_" -f1)
mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores/$carpeta
#Creamos el desktop del menu
echo "[Desktop Entry]
Categories=$carpeta;
Exec=sh -c \"/opt/wifislax-updaters/$carpeta/$archivo;${SHELL:-bash}\"
Icon=updaters
MimeType=
Name=$PRGNAM_CORTO
Path=/opt/wifislax-updaters/$carpeta/
Terminal=true
TerminalOptions=
Type=Application">$PKG/usr/share/applications/wifislax/Actualizadores/$carpeta/$PRGNAM_CORTO.desktop

fi

done

done

sleep 2
echo
}

# Crear estructura
F_estructura(){
if [ $CREAR_MODULO = SI ]; then

echo -n ${CYAN}Creando logs e instalando....$CIERRE
echo -ne "${CYAN} $ROJO$contador${CYAN} scripts$CIERRE"
sleep 5

mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores $PKG/opt/wifislax-updaters
cp -Ru /usr/share/applications/wifislax/Actualizadores/ $PKG/usr/share/applications/wifislax/
cp -Ru /opt/wifislax-updaters/ $PKG/opt/

if [ -d $PKG/usr/share/applications/wifislax/Actualizadores/Funciones ]; then
rm -rf $PKG/usr/share/applications/wifislax/Actualizadores/Funciones
fi
fi
}

F_final(){
if [ $CREAR_MODULO = SI ]; then
f_tareasFinales
else
echo $VERDE
echo No hay actualizaciones para los updaters
sleep 3
echo
echo Bye Bye
echo $CIERRE
fi
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
# Directorios de trabajo y actualizar
F_actualizar
# Crear estructura
F_estructura
#Creamos xzm , instalamos y salimos
F_final
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 22-09-2014, 15:59 (Lunes)
no se autoactualiza por que no he podido acceder al ftp a meter la nueva version del script,..por eso detecta la misma version y no se autoactualiza.


pero el parche funca ..  ;D

Correcto, funciona perfectamente cambiando la linea que has dicho.

Ya me he dado cuenta de la fecha y hora del script en el Ftp, por lo que he supuesto que no lo habías podido actualizar.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 16:08 (Lunes)
como el ftp sigue sin dejarme entrar os dejo el xzm , ... con todos los scripts que son los mismo del iso, pero los de kde y updater reparados los dos.

http://www.mediafire.com/download/c0cykf6au2fhmh9/wifislax_updaters-2.1-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 22-09-2014, 16:14 (Lunes)
como el ftp sigue sin dejarme entrar os dejo el xzm , ... con todos los scripts que son los mismo del iso, pero los de kde y updater reparados los dos.

http://www.mediafire.com/download/c0cykf6au2fhmh9/wifislax_updaters-2.1-noarch-1sw.xzm


He modificado yo mismo el script del updater con tu nuevo código y está funcionando de maravilla.

Despues probaré el xzm que has puesto.

Editado:

Comprobado módulo wifislax_updaters-2.1-noarch-1sw.xzm y todo O.K.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 22:20 (Lunes)
he tendido una buena idea (creo)  ... cuando en el sistema hay ya una version de algo , lo eliminamos para instalar lo nuevo ... pero ¿que ocurre si falla algo ?  ...nos quedamos sin ninguna.


¿ por que antes de desinstalar un paquete no cremos un backup del mismo ?  , es muy facil ...


ademas creo que voy a meterme  dividir el script de gstreamer y dejar solo los que realmente son necesarios, y en vez de compilar 8 paquetes se compilaran 3 0 4  ;)
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 22-09-2014, 22:39 (Lunes)
Lo de KDE games no lo puedo mirar, estoy bastante liado esta semana....

Lo del backup es una idea relativamente buena....

Digo relativamente porque no me haría gracia que desde modo Live (500Mb libres) tenga que hacer un backup de OpenOffice antes de instalarlo (ya de por si no puedo hacer el módulo de OpenOffice porque peta la memoria....)

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 22:44 (Lunes)
Lo de KDE games no lo puedo mirar, estoy bastante liado esta semana....

Lo del backup es una idea relativamente buena....

Digo relativamente porque no me haría gracia que desde modo Live (500Mb libres) tenga que hacer un backup de OpenOffice antes de instalarlo (ya de por si no puedo hacer el módulo de OpenOffice porque peta la memoria....)

Salu2

¿ y un dialogo preguntando un si o no ? ...

tengo la funcion hecha y funcional ... faltaria meter el dialogo y segun respuesta ... 

ahora , los modulos de backup , se generan con extension backup ...a los cuales les puedo asignar un icono como el verde de los xzm , pero de color azul ...   ;D ;D , solo renombrar  .backup ..por .xzm   et voila. 


Código: [Seleccionar]
# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   if [ -f /etc/rc.d/rc.metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   fi
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/Desktop/$PACKAGE.backup
   sleep 2
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 22:45 (Lunes)
o bien ...

crear los backup , solo si esta en hdd , ..ya que en live, si algo peta..reinicias y a correr. 
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 22-09-2014, 22:46 (Lunes)
Un dialogo que si no se responde en X tiempo, continuará con el proceso...

No queremos estar pendientes de darle a una letra... Solo abrir e irnos a hacer otra cosa ;)

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 22-09-2014, 22:47 (Lunes)
En live no tiene sentido el backup...

En hdd es mas interesante....

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 22:52 (Lunes)
En live no tiene sentido el backup...

En hdd es mas interesante....

Salu2


exacto , ... y asi queda reflejado , backup automatico si estas en hdd, si estas en live , nada


# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   if [ -f /etc/rc.d/rc.metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   fi
   if [ ! -d /mnt/live/memory/changes ]; then
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/Desktop/$PACKAGE.backup
   sleep 2
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-09-2014, 23:00 (Lunes)
Tambien queria hacer otra cosa,pero ya lo mirare , y es que al crear los xzm en escritorio se guardasen dentro de una carpeta tal cual su categoria ..

por ejemplo

si es un xzm de una libreria

/root/Desktop/LIbrerias/modulo.xzm


no se si sabreis que en modules podeis crear carpetas y organizaros los xzm ...son cargados de igual manera...aunque esten en carpetas.

asi en modules podriais ordenarlos


Librerias
Pentest
Auditoria

y dentro los xzm de cada categoria ...  mas que nada por que si tiras agenerar muchos acabas loco.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 23-09-2014, 01:51 (Martes)
vale , ya esta ..  si estamos en HDD  , .. y ya hay una version del paquete en sistema , se hara un backup antes de eliminarlo por si acaso ,en la ruta

/root/xzm_backups

 ;D


Código: [Seleccionar]
# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   if [ -f /etc/rc.d/rc.metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   fi
   if [ ! -d /mnt/live/memory/changes ]; then
   if [ ! -d $HOME/xzm_backups ]; then
   mkdir -p $HOME/xzm_backups
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/xzm_backups/$PACKAGE.backup
   echo ""
   echo "$AMARILLO"El paquete del sistema fue salvado en $HOME/xzm_backups/$PACKAGE.backup"$CIERRE"
   sleep 4
   fi
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 1
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 23-09-2014, 01:52 (Martes)
los .backup  , seran como los modulos normales, pero en vez d everdes, seran azules ...  >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 23-09-2014, 08:15 (Martes)
Buena idea lo del backup... esta vez sí has podido aprovecharte del funciones.sh para no tener que tocar todos los scripts!  >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 23-09-2014, 09:57 (Martes)
        ******************************
           Actualizador/Instalador   
           Paquete: qbittorrent
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 21/09/2014
Comprobando dependencias ...
Dependencias de este paquete:

libtorrent-rasterbar: No Instalada

No se cumplen los requisitos no se puede continuar

wifislax Internet #

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 23-09-2014, 22:03 (Martes)
        ******************************
           Actualizador/Instalador   
           Paquete: qbittorrent
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 21/09/2014
Comprobando dependencias ...
Dependencias de este paquete:

libtorrent-rasterbar: No Instalada

No se cumplen los requisitos no se puede continuar

wifislax Internet #

Salu2


garcad ...eso esta bien ...

te esta avisando que necesitas libtorrent-rasterbar ..si bajas a "librerias" ...  tienes hay el de libtorrent ..

le das, te lo instalara y creara un paquete xzm ...  y ya despues qbittorrent.


si los programas tienen dependencias te avisa antes para que no pierdas el tiempo ... instalale lo que te pida  , esta todo en los updaters.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 23-09-2014, 23:51 (Martes)

garcad ...eso esta bien ...

te esta avisando que necesitas libtorrent-rasterbar ..si bajas a "librerias" ...  tienes hay el de libtorrent ..

le das, te lo instalara y creara un paquete xzm ...  y ya despues qbittorrent.


si los programas tienen dependencias te avisa antes para que no pierdas el tiempo ... instalale lo que te pida  , esta todo en los updaters.

Ya lo vi gracias.

Podría ser automatizado sin lal librería no va la aplicación principal.

Respecto hacer un backup antes de desinstalar y compilar, por si diera algun fallo seria mejor no desinstalar hasta que tenga compilado el paquete a actualizar o instalar.

 >:( >:( >:( >:( >:( >:(

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 00:13 (Miércoles)
garcad no se puede hacer eso ...

por que se compila sobre si mismo , y despues quitas esa base de sis mismo donde se compilo ...


por ejemplo wireshark , ... no funciona asi ..debe ser en limpio.

si por ejemplo tienes wireshark instalado y tiene libreria   libwireshark.25   ,  la nueva version contara con eso ...y si despues eliminas la version vieja, bye bye libreria y dejara de funcionar la version nueva ... siempre en limpio.


mmmmmm  , lo de automatizar las dependencias no estaria mal ....


si la dependencia no esta ... cd a la ruta del updater necesario , ejecutarlo ...pero despues como vuelvo al programa inicial ??


no se si serviria ejecutarlo en una nueva shell ...   con un &&  , para que continue solo al acabar la tarea lanzada... 
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 00:18 (Miércoles)
You will need to remove any already-installed wireshark package before
building this one or else the new one will not work (the new build will
link libraries present in the old package, which will then be removed
when upgrading).



es mejor en limpio ... si sale mal ..en root/xzm_backups , puedes volver a reinstalar el que tenias funcionando-.


tengo ya hechos servicemenus a posta ...  install xzm backup  -..  y renombrar backup a xzm ... seguira manteniendo en el name ..lo de backup , para tener claro que era el de sistema ...   ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 03:29 (Miércoles)
El tema de que cuando hay dependencias y no las tenemos se "AUTORESUELVAN" ...parece posible.


tengo el de qbittorrent trabajando perfecto ... analizemos la parte de comprobar dependencia...


# Comprobar dependencias
F_dependencias() {
if [ -f /usr/lib/libtorrent-rasterbar.so ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"libtorrent-rasterbar"$CIERRE: $EXIST"
if [ ! -f /usr/lib/libtorrent-rasterbar.so ]; then
echo ""
echo "$ROJO"Falta la dependencia "$AMARILLO"libtorrent-rasterbar ... "$ROJO"intentanto resolver"$CIERRE"
echo ""
sleep 3
echo ""
echo "$VERDE"Espere por favor ..."$CIERRE"
# Aqui resolvemos la dependencia
cd /opt/wifislax-updaters/Librerias/ && xterm /opt/wifislax-updaters/Librerias/libtorrent-rasterbar_updater && cd $TMP
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 5
fi
}



Bien , he reslatado ne verde la linea clave ..

como la dependencia no esta , hace cd hacia la ruta del updater necesario ... lo ejecuta en una xterm y por ultimo retornamos a nuestro $TMP

el ultimo paso es MUY IMPORTANTE ,por que si no , los ficheros que descargue etc quedaran en donde hiciemos el primer cd ... y queremos que todo este en los TMP , para al acabar limpiar sistema.


cd /opt/wifislax-updaters/Librerias/ && xterm /opt/wifislax-updaters/Librerias/libtorrent-rasterbar_updater && cd $TMP


con los && , la siguiente tarea no empieza hasta acaba la anterior ...al acabar de compilar en la xterm , ella sola se cierra  ;D

muy importante que esten todas seguidas en la mims alinea de orden ...y no asi

cd /opt/wifislax-updaters/Librerias/ &&
xterm /opt/wifislax-updaters/Librerias/libtorrent-rasterbar_updater &&
cd $TMP


es mejor todo de una

cd /opt/wifislax-updaters/Librerias/ && xterm /opt/wifislax-updaters/Librerias/libtorrent-rasterbar_updater && cd $TMP


ya veremos que divertido sera esto cuando sea mas de una dependencia ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 08:05 (Miércoles)
por fin he podido actualizar el ftp   ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 24-09-2014, 08:15 (Miércoles)
Otra vez esos "sleep 5"!!!  ;D
Por cierto, aunque ya puse un mensaje similar... ahora que hay tantos updaters, incluyendo el del propio kernel y, con el tiempo, el de casi todas las herramientas de auditoría más usadas... el tiempo que pase entre versiones de Wifislax se alargará mucho, no? Con la 4.10 podremos estar actualizados sin necesidad de una 4.11 hasta que sea necesario por "causa mayor"



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 19:05 (Miércoles)
cierto , hay un sleep 5 ..hay que aniquilarlo ...  ;D

básicamente con los updaters todos podréis hacer lo mismo que yo ...  ir actualizando el sistema.


la parte peliaguda tal vez sea la de los paquetes slackware , ...o actualizar un kde o algo mas heavy.

en principio es lo que dices ... casi seguro podreas desde la 4.10 tener algo similar a lo que saldría como 4.11


el kernel compiler SOLO COMILA KERNELES DE LA MISMA RAMA  ... aunque ahora mismo es como debe ser ya que de la 3.12 hacia arriba hay un problemilla con wash y los drivers atheros.  (lo que sucede en kali-linux de ver el power en 00)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 20:01 (Miércoles)
el espacio de tiempo entre unas y otras depende de los bugs que se detecten o de si salen cosas nuevas interesantes.

____________

Estoy editando los updaters para aniquilar todos los sleep 5 , por sleep 3
La funcion de que el script se actualice a si mismo paraece que no esta funcionando
Esta noche intentare dividir el gstreamer y quedarme solo con los 3 o 4 paquetes requeridos
El tema de que los updaters se resuelvan a si mismos las dependncias, al final no lo voy a hacer , por que puede que el usuario al ver las dependencias pase de instalar nada ...

por ejemplo ami me dan grima ,las que necesitan wine , no me gusta instalar wine.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 24-09-2014, 20:27 (Miércoles)
El update del kernel me tira error.

Creamos y aplicamos el parche aufs ...
Cloning into 'aufs3-standalone.git'...
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.
wifislax Sistema #

git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git aufs3-standalone.git || exit 1


git clone git://git.code.sf.net/p/aufs/aufs3-standalone aufs3-standalone.git || exit 1

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 22:02 (Miércoles)
pues deben de haber cambiado la ruta del git ........   ^-^


pues va a ser que no ... el git sirve el mismo , solo que a veces le cuesta responder ...


Código: [Seleccionar]
git clone git://aufs.git.sourceforge.net/gitroot/aufs/aufs3-standalone.git aufs3-standalone.git
Cloning into 'aufs3-standalone.git'...
remote: Counting objects: 18520, done.
remote: Compressing objects: 100% (7141/7141), done.
remote: Total 18520 (delta 7900), reused 18361 (delta 7741)
Receiving objects: 100% (18520/18520), 2.60 MiB | 584.00 KiB/s, done.
Resolving deltas: 100% (7900/7900), done.
Checking connectivity... done
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-09-2014, 22:43 (Miércoles)
uff , que fallo he cometido en el funciones.sh para el tema de crear un backup ...

habia una doble condicionante , el segundo es que si la carpeta

root/xzm_backups no existe se genra y tal ,..pero

esa condicion la mantengo abierta hast el final .. con lo que el resto de acciones de dentro NO SE TOMAN EN CUENTA SI LA RUYA YA EXISTE


LO HE REPARADO , esto me ha enseñado a que cualquier condicionante se debe cerrar inmediatamente detras de la condicion que esperamos ...

el tema de los "if"  ...


Código: [Seleccionar]
# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   
   if [ ! -d /mnt/live/memory/changes ]; then
   if [ ! -d $HOME/xzm_backups ]; then
   mkdir -p $HOME/xzm_backups
   fi
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   sleep 2
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   sleep 2
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/xzm_backups/$PACKAGE.backup
   echo ""
   echo "$AMARILLO"El paquete del sistema fue salvado en $HOME/xzm_backups/$PACKAGE.backup"$CIERRE"
   sleep 3
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 26-09-2014, 11:21 (Viernes)
Actualizando desde live usb  ^-^ ^-^ ^-^

        ******************************
           Actualizador/Instalador   
           Paquete: wifislax-updaters
                                   
           www.seguridadwireless.net 
        ******************************

Buscando base_updater... DESCARGADO ( +%Y%m%d)/te/$(da)

Despues de actualizar  ^-^ ^-^ ^-^

        ******************************
           Actualizador/Instalador   
           Paquete: wifislax-updaters
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 22/09/2014

Buscando base_updater... EXISTE/opt/wifislax-updaters/Sistema/wifislax-updaters_updater: línea 62: [[: $(date +%Y%m%d): error sintáctico: se esperaba un operando (el elemento de error es "$(date +%Y%m%d)")
 ( +%Y%m%d)/te/$(da)

Salu2


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-09-2014, 18:22 (Viernes)
ok , culpa mia por mover ese script a donde los updaters.   ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 26-09-2014, 20:27 (Viernes)
para el dvdstyler hay algo?creo que cada version nueva necesita de un ffmpeg nuevo,no se si sera un incoveniente.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-09-2014, 20:48 (Viernes)
para el dvdstyler hay algo?creo que cada version nueva necesita de un ffmpeg nuevo,no se si sera un incoveniente.

esta el de los dos , ffmpeg y dvdstyler.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 26-09-2014, 20:58 (Viernes)
ok usuarionuevo,dvdstyler es uno de los que mas uso para hacer montajes de video
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-09-2014, 21:54 (Viernes)
ok usuarionuevo,dvdstyler es uno de los que mas uso para hacer montajes de video

esta todo crontrolado ... tiene que haber como minimo , lo suficiente ,para que podais tener lo que ya teniais.


mi objetivo ahora es ese, ... legar a tener los uficientes updaters para igualar los xzm que ponia en modulos.
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 26-09-2014, 22:00 (Viernes)
No podré revisar wifislax-updater ni los demás scripts porque no dispongo de la ultima ISO, pero si que intentaré hacer hoy algún que otro....

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-09-2014, 22:04 (Viernes)
No podré revisar wifislax-updater ni los demás scripts porque no dispongo de la ultima ISO, pero si que intentaré hacer hoy algún que otro....

Salu2

no no , tranqui , esta todo en sus sitio , .. lo que comenta garcad es "mea en la culpa"   ;D

por meter el base_updater , donde no debia.

seguira dando guerra hasta que acceda al ftp y lo saque de la carpeta wifislax-updaters.


_______________________________

antesdeayer , fue lo ultimo que toque de scripts .. y meti el de la libreria django , y subterfuge.

hoy voy con web-sorrow


 ;)


_____________

mira a ver si puedes con beef , que creo no lleva dependencias.
o con maltego que tampoco lleva , creo.

tambien faltan

nitko  y w3af

con esos 4 acabaria los pentesters ..al menos los que ya teniamos.


nitko es un caramelito ...  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-09-2014, 23:41 (Viernes)
web-sorrow_updater


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140926

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
VERSION=1.5
PRGNAM=web-sorrow
DOWNLOAD=https://web-sorrow.googlecode.com/files/Web-Sorrow_v1.5.0FINAL%28patched_version%29.zip
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/opt/$PRGNAM $PKG/usr/share/{pixmaps,applications/wifislax/Testing}
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f 'Web-Sorrow_v1.5.0FINAL(patched_version).zip' ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
aria2c -x 3 $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
unzip $TMP/'Web-Sorrow_v1.5.0FINAL(patched_version).zip' -d $PKG/opt/$PRGNAM

# Creamos el icono
echo "iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz
AAAk6QAAJOkBUCTn+AAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAjLSURB
VGiB7VldjF1VFf72vjPt/HRapFOdDGCDCEWn2FQaC4VURSMxGFHAxB8SQmKCUuODgsQXqdGK4UF9
gASIUQI8OAFCwQiCUlMeCmopNVQZLKXMT++0tzOduXfuveecvfday4fzc/ede+/Mnc7IU3ey7zln
n7PP+b61vr3WuucA59q5tqymVvJmIqKAfDcKHWtnZ2a6Tx05sro0Pi6FiYnQhGH59Guvle54/XW7
ks9cFgER6UQYbjRBZYerVnaWC4WhYv7k4NzJkz3l6enOqFLJ2WogJoocGWOcMVUiOs5EhxzRyzoM
/3nb3r3T7zsBEely0dwNErlv27m5q2bGxtcVT+RVUJyFDUPYIIy3YQgbRnAmgjMWZA3IOZAjMBEc
uxPi+HlH9JvvPvfcf/7vBESk00VzNyrLPzaVypbZsTFdOnlKuSiCMwYuihoJBEE8bkxMwtmYgHMg
ZjARmNkJ0dPO2t3ff+mlkaVgyrUPvjLoguhXEtmflAuFi6beOaaDUlEJE4QlBQImhlDNyuwIRHHn
tHN8rTDHc5i1iGxmkW998ZJLStsvvPDw/tFRXjECIuHHqWp/K8bcWJyYWDU7MaHIOoAZzAJmysAI
EZhcBpydAzkHJkosTyDiGmGR2lyRbha5fpVI/9UbN/5t/+ioWwybXhi4KGuD61w5/KOrBp+Zeued
XHFyEkwEkeThIhABJJ4AUYAoBVGxOiX5keTaFHAGuuaFxIPUISK7upmf33PttRuWRQCwVyIMH2Bj
Lp4ZHVXVmRkIS30XjoGLQGLSMWDUjgXikY2J+5Zv0pWIfFaYH7t706a+syIgIhdQJfilWHd5KZ9X
lekzDZaTTELJfmZlzsDWrC4JOKkBlUbwUr9/fd/atb/AAsGm6RoQkR6uzv2ajPlydWpanxkdzcDE
wMV7CIFTTad6tzYJm/HW2XifkvM0bzG3IsDMikWu/PTAQHH/5OTf2/KAiCgy5S+5MLyZgjB35r33
kuiRLFDm+MFZVGFvnyB1EYdr59N5GcjkfGsZpdfmmPlndw0NXdKehMrlD0pg7gRzz8z4OExQzcAR
MTiJJD5oTuM6UewBF0ei2NqukWwSbhexvic16etQ6uf3NsHbMECgz5ExnzLliirm8yCbyMLr5Heb
Jqd431kHZw2cddnclEiaD4gWlc78yARm/mr58su3LkhA5HQfheFXQNw9O3ECJghigNYk3cJ5YP3u
jIUzBmQMKNl3yZyUBDvPG/XgWsnH98JqMN+xsAeivkGx9iohwszYGCiK4KIILjIxIA8cmdqYjZJ6
JzJwJi0bDJy1WSfrL94YOC1g/Sb5AcR8w67BwfU+5A7/wJRKW9nxQDA1BTc9Da00lFYQpaEUgDQ5
JckLIhAocK4DojS4YxWkqxu0Jl3wlEUsYc6SWZb0ULtn1pTKxlV6LhlTWg8I8+cf3L17uIGAiOgw
P/ZJMHfOFQqIjIHSOn6Arjkqxs0eMPLKBqpbH9wQNr18kRJCLUsDACfbOqLpdYAOKpVrATQSANAJ
S5eCBcVCAdUgiAloDShAoAARMJIMSlyrdVKpeLJy3jqIF7StK+rIJ9TGgk6JE9FQCwmNa3Z8sTDB
FUtYlUgEzDU3p0SUhuQUWGmIzoE7OiCrV3th0qtMk4wblx5cZ3HxvIrU8ulxcp0v20ROn3jokUea
EbiIRY72k7Uw1SrI2kSHcXGmoLwHSg0ESx1AMAMCKEGsYa2hRUGUAFrXAIrEBV8KLL23XwT64zF4
MPP5sSnjIV9CDOI1Qozi7CyqcyUgAy3grKKcF5+TMpnm54dM++mWm0tHZHHp1IdTdSvQ8wRQaSSg
wBBBV2cndFc3RCW68d2aWI9FsgWWeSAj6HmorlLlpFKtv5fvlSwKzZeYt18YGdE4cGC+hHYL5Btz
UOoDOpeL5dBkcnbsRQ6IVy4qDa1r57wIAuWDbQIOaJSQ8gkpBShFPzpwoHxPcj4joNRPee6tr0/q
jtyHK1GE6UKhVh6zXxb7LvUKsmTxUt1x80zbRBZLiUaT3/R41yUyiLylld5+/oYNoFLJ+0NSc2md
Zev+xNTH9Gby8KPLfHlk923iGX/fhOGxx4azNDCPAHBQRG5bNzCgTr/7LiASR5I0nCXH892bAlJI
/415D15INkpBRGohBTUJpdepdCyR0JrzzjvoA64joIBXBYj6Bge7Tk5ONkSLVhVj3TjRUiXRdjQi
Zhbmv/qY64q53mr1TSj19toNG9C3fn3yhsHTcjt9kQrzbLr3N3aCqtVXWxJQ27ZZJTKslMLGLVvq
rNJWybvAWFueazGXattnnwSKLQkAgCZ6QkSmLt66FZ1dXSsGvl1SreYSc8URPdKAd/5AzxVXjGut
H+5Zt04u3b49s85ClmnaPRmdlUca+x+esfbfixIAgEDr+xUwOrRzJ/r6+9t+4FKs3O7cxPpnQmPu
RWPea06g/7LLShDZtbq3N9hxyy1pEbV8nS82d97iT8Bbdu6uPwEnmmFt+WJrzdDQ82C+54JNm+jq
m24CgKXr92yikbeYiVlAdP8zzL9vhXPBV4tvh+FDSqmHN+/cKR+75pqzs+pSPVKfD57SRHsWwrjo
9wE5fryrHIYP2DC8/ZXhYf2vffvaBi+NgNojJSLC/EzVudv/DJSWRQCI39ZVR0a+x8B9h158sXf/
8DCiIFiyVdv0XCQi9007t2c/sOjr9ba/0IiIKh458oVcLvfgscOHP/KXRx9VU/l8e1ZtQWDesTBz
HkQ/eJr5KQBtfeBY8jey0shIf07kh5W5uTsP7N279h8vvICwUllMEotZPxDm3wXW3tcq2qwYgYzI
wYP9urf3O8WpqZvf2Ldv85uvvNIxefw4nHPNwTaWJSzMI8z8LKLowSeXCHzZBNImY2Pd5Urlo5XZ
2esmjh7ddvTQocvyx4596NToaEdxelpbY0BEIiKOmU8z0VFmfoOsfRnWvv0kUF4uhhVvIqLlxIme
/z7++Nq7d+zouxXo/doSPiiea+fa+9j+Bx7lVP5XoIlbAAAAAElFTkSuQmCC" | base64 -d > $PKG/usr/share/pixmaps/$PRGNAM.png

# Creamos el dektop
echo "[Desktop Entry]
Categories=testing;
Exec=sh -c "'"perl /opt/web-sorrow/Wsorrow.pl;${SHELL:-bash}"'"
Icon=$PRGNAM
MimeType=
Name=Web-sorrow
Path=/opt/$PRGNAM
StartupNotify=true
Terminal=true
TerminalOptions=
Type=Application" > $PKG/usr/share/applications/wifislax/Testing/$PRGNAM.desktop
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-09-2014, 05:43 (Sábado)
llevo un rato pegandome con el de w3af ,Y lo voy a dejar de lado , por que ahora pide un porron de librerias en python , que el mismo puede instalar y tal , pero no ves los mensajes si no lo ejecutas desde shell ...asi que ... :-\
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 27-09-2014, 11:41 (Sábado)
Ya se que este post es solo para los scripts, pero aprovecho para decirle a USUARIONUEVO que debe actualizar el plugin anonymox para la proxima ISO, captura (picar en la imagen para ampliar):

(http://es.zimagez.com/miniature/instantnea19.png) (http://es.zimagez.com/zimage/instantnea19.php)

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-09-2014, 18:42 (Sábado)
Ya se que este post es solo para los scripts, pero aprovecho para decirle a USUARIONUEVO que debe actualizar el plugin anonymox para la proxima ISO, captura (picar en la imagen para ampliar):

(http://es.zimagez.com/miniature/instantnea19.png) (http://es.zimagez.com/zimage/instantnea19.php)

Un saludo.

ok ,gracias.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 29-09-2014, 22:19 (Lunes)
esta mañana actualice la iso de desarrollo y el directorio de updaters.   ;) ;) ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 30-09-2014, 09:09 (Martes)
esta mañana actualice la iso de desarrollo y el directorio de updaters.   ;) ;) ;)

La ISO tiene fecha del 29 de septiembre, pero el listado de cambios solo llega hasta el 28, ¿falta algo?




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-09-2014, 09:16 (Martes)
esta mañana actualice la iso de desarrollo y el directorio de updaters.   ;) ;) ;)

La ISO tiene fecha del 29 de septiembre, pero el listado de cambios solo llega hasta el 28, ¿falta algo?




Saludos

el 29 es el dia que se sube ...el 28 no pude.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 30-09-2014, 09:33 (Martes)
OK, pues creo que la nomenclatura de la ISO debería ser similar a la de los cambios que lleva (la fecha de subida se puede ver directamente en la página web), así evitamos confusiones ;)



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 30-09-2014, 14:32 (Martes)


        ******************************
           Actualizador/Instalador   
           Paquete: dvdstyler
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 21/09/2014
Comprobando dependencias ...

Dependencias de este paquete:
svgview :  No instalada
dvdauthor :  No instalada
libquicktime_config :  No instalada

No se cumplen los requisitos no se puede continuar
wifislax Multimedia #

No encuentro el lanzador a las dependencias que he resaltado en rojo.

wifislax Librerias # ls
django_updater            gst1-plugins-base_updater  libpcap_updater               lighttpd_updater           
ffmpeg_updater            gstreamer_updater          libquicktime_updater          wxPython_updater           
gst1-plugins-bad_updater  iw_updater                 libtorrent-rasterbar_updater  wxsvg_updater               
wifislax Librerias # 

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 08-10-2014, 22:08 (Miércoles)
Creo que añadire al funciones.sh , en tareas finales, liberar memoria ...    >:( >:( >:( >:(


Código: [Seleccionar]
sync && echo 3 > /proc/sys/vm/drop_caches
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 08-10-2014, 23:07 (Miércoles)
funciones.sh

ademas de dropear las caches al acabar, ahora si estas en hdd , pregunta si quieres o no crear un backup de la version de paquete del sistema , esto, es muy bueno , por que paquetes como hashcat o metasploit que son muy muy grandes, igual no quieres crear un backup que se llevaria hay un buen rato.


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

# Script by www.seguridadwireless.net

FUNCIONES_VERSION=20141008

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)


# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
clear
sleep 0.1 | echo ""
sleep 0.1 | echo ""
sleep 0.1 | echo "$BLANCO"  "       ******************************"   
sleep 0.1 | echo "$VERDE"   "          Actualizador/Instalador    "   
sleep 0.1 | echo "$VERDE"   "          Paquete: "$AMARILLO"$PRGNAM"                                                 
sleep 0.1 | echo "$VERDE"   "                                   "
sleep 0.1 | echo "$VERDE"   "          www.seguridadwireless.net  "
sleep 0.1 | echo "$BLANCO"  "       ******************************"
sleep 0.1 | echo "$CERRAR"
sleep 1
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "No tengo internet ... el script se cerrara."
      echo ""
      sleep 1
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 1
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]*-* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"La version del sistema es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 1
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas nueva en su pagina web es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

f_backup(){
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   sleep 2
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   sleep 2
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/xzm_backups/$PACKAGE.backup
   echo ""
   echo "$AMARILLO"El paquete del sistema fue salvado en $HOME/xzm_backups/$PACKAGE.backup"$CIERRE"
   sleep 3
}

# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   
   if [ ! -d /mnt/live/memory/changes ]; then
   if [ ! -d $HOME/xzm_backups ]; then
   mkdir -p $HOME/xzm_backups
   fi
   echo "1 - "$VERDE"Crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo "2 - "$ROJO"No crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo ""
   read -p " #> " CHOISE
   echo ""
    case $CHOISE in
      1 ) f_backup; break;;
      2 ) echo ""$CYAN"Continuamos sin hacer backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""; break;;
      * ) echo ""$ROJO"Opción incorrecta"$CIERRE""; sleep 1; clear;;
    esac
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   TMP=${TMP:-/tmp/build/$PRGNAM}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Hace strip al paquete
f_strip() {
   cd $PKG
   stripdir $PKG 2>/dev/null
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() { 
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
#Para sigram nos basamos en el log. Para el resto siempre es igual
  if [ $PRGNAM = sigram ]; then
cleandir $PKG
log2xzm $TMP/sigram.log $HOME/Desktop/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm /
else
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   fi
# Iniciar algun servicio si existe
   if [ -f $PKG/etc/rc.d/rc.teamviewerd ]; then
   /etc/rc.d/rc.teamviewerd start &>/dev/null
   fi
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   if [ $PRGNAM = firefox ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/008-Firefox-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   
   if [ $PRGNAM = metasploit ]; then
       /etc/rc.d/rc.metasploit start &> /dev/null
   fi
   if [ -x /usr/bin/update-desktop-database ]; then
       /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
       /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
   if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
   fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
       /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 1
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 1
# Liberamos memoria
   sync && echo 3 > /proc/sys/vm/drop_caches
# Salimos del script
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 10-10-2014, 01:22 (Viernes)
He compilado varios kenels y me a pisado el vmlinuz

¿Se puede hacer algo al respecto? Para no perder el vmlinuz si compilo algún kernel que otro,

¿Se puede guardar el .config con el kenel y modulo?

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-10-2014, 08:07 (Viernes)
He compilado varios kenels y me a pisado el vmlinuz

¿Se puede hacer algo al respecto? Para no perder el vmlinuz si compilo algún kernel que otro,

¿Se puede guardar el .config con el kenel y modulo?

Salu2

el  .config siempre va dentro del modulo ...

lo de los vmlinuz no lo pillo muy bien , ... cada vez que compiles un kernel ,si vas a compilar otra vez (tipico de ir probando configuraciones) , lo que deberias hacer es compilar uno ...  y cuando acabas, antes de lanzar otra vez el script , reas una carpeta y metes el recien compilado.


si te refieres a que , se instala y ya arranca desde el nuevo ...  puedes arrancar con el viejo ..o con cualquiera de los que tengas en sistema, usando en el menu grub , la entrada que pones opciones avanzadas de arranque ,alli veras todos tus kerneles ... y podras elegir cual arrancar en cada vez...por defecto siempre usara el mas alto.


por cierto , le di algunos retoques al script, no se si te actualizaste, ayer subi uno retocado al ftp ...
el kernel 3.12.30 da error (falla al compilar) , es cosa de aufs  , a ver si corrigen y se puede compilar.  ;) :D ;D
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 10-10-2014, 19:16 (Viernes)
Ostia, se me olvidó recordarlo en su momento....

Cuando quería probar a montar un sistema de archivos aufs desde Wifislax, me daba problemas. No se si era problema de los drivers (creovque estaban activados) o culpa mía por inepto (lo mas seguro jajaja).

A todo esto... Con los últimos retoques, le metiste aria2 a Wifislax? Lo digo porque esto se ha parado, y al menos en mi caso, no podré ponerme con este tema hasta dentro de mucho tiempo. 

Lo que quiero decir: Sacarle brillo y resplandor a lo que ya tenemos y lanzar WS 4.10

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-10-2014, 22:44 (Viernes)
si , puse aria2 , en vez de wget.

axel , prometia, pero cuando habia urls https , tenia problemillas.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-10-2014, 22:06 (Sábado)
UFFFF   ,ya se por que a veces los scripts se quedan como atontados ... y no pasan del menu presentacion ..


eso pasa cuando intentan obtener la version de scripts de nuestro ftp , si no responde o esta lento , pues hay se queda ..


se que geminis me ayudo a hacer algo al respecto , con lo de patrones conocidos ...es decir, esperar un poco y si no hay respuesta en 3 segundos, que la tarea continue, por que si no responde el ftp ,el script se queda hay estancado.

Ya lo encontre , linea 58 , ahora si en tres segundos no hay respuesta el script continua ... creo que se "acabaron los atascos"  ;D


SERVIDOR_VERSION=$(timeout -s SIGTERM 3 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-10-2014, 22:19 (Sábado)
dejo en funciones.sh modificado a fecha de hoy


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

# Script by www.seguridadwireless.net

FUNCIONES_VERSION=20141011

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)


# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
clear
sleep 0.1 | echo ""
sleep 0.1 | echo ""
sleep 0.1 | echo "$BLANCO"  "       ******************************"   
sleep 0.1 | echo "$VERDE"   "          Actualizador/Instalador    "   
sleep 0.1 | echo "$VERDE"   "          Paquete: "$AMARILLO"$PRGNAM"                                                 
sleep 0.1 | echo "$VERDE"   "                                   "
sleep 0.1 | echo "$VERDE"   "          www.seguridadwireless.net  "
sleep 0.1 | echo "$BLANCO"  "       ******************************"
sleep 0.1 | echo "$CERRAR"
sleep 1
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "No tengo internet ... el script se cerrara."
      echo ""
      sleep 1
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(pwd)
   SERVIDOR_VERSION=$(timeout -s SIGTERM 3 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 1
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]*-* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"La version del sistema es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 1
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas nueva en su pagina web es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

f_backup(){
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   sleep 2
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   sleep 2
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/xzm_backups/$PACKAGE.backup
   echo ""
   echo "$AMARILLO"El paquete del sistema fue salvado en $HOME/xzm_backups/$PACKAGE.backup"$CIERRE"
   sleep 3
}

# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   
   if [ ! -d /mnt/live/memory/changes ]; then
   if [ ! -d $HOME/xzm_backups ]; then
   mkdir -p $HOME/xzm_backups
   fi
   echo "1 - "$VERDE"Crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo "2 - "$ROJO"No crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo ""
   read -p " #> " CHOISE
   echo ""
    case $CHOISE in
      1 ) f_backup; break;;
      2 ) echo ""$CYAN"Continuamos sin hacer backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""; break;;
    esac
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   TMP=${TMP:-/tmp/build/$PRGNAM}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Hace strip al paquete
f_strip() {
   cd $PKG
   stripdir $PKG 2>/dev/null
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() { 
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
#Para sigram nos basamos en el log. Para el resto siempre es igual
  if [ $PRGNAM = sigram ]; then
cleandir $PKG
log2xzm $TMP/sigram.log $HOME/Desktop/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm /
else
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   fi
# Iniciar algun servicio si existe
   if [ -f $PKG/etc/rc.d/rc.teamviewerd ]; then
   /etc/rc.d/rc.teamviewerd start &>/dev/null
   fi
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   if [ $PRGNAM = firefox ]; then
   mv $HOME/Desktop/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/008-Firefox-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   
   if [ $PRGNAM = metasploit ]; then
       /etc/rc.d/rc.metasploit start &> /dev/null
   fi
   if [ -x /usr/bin/update-desktop-database ]; then
       /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
       /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
   if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
   fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
       /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 1
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 1
# Liberamos memoria
   sync && echo 3 > /proc/sys/vm/drop_caches
# Salimos del script
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 16-10-2014, 23:12 (Jueves)
NO me actualizo Java

Descargando sources de jre-8u25
[#8c7d94 1.2MiB/61MiB(1%) CN:2 DL:1.4MiB ETA:40s]                             
10/16 23:06:38 [ERROR] CUID#8 - Download aborted. URI=http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jre-8u25-linux-x64.tar.gz
Exception: [AbstractCommand.cc:350] errorCode=8 URI=http://download.oracle.com/otn-pub/java/jdk/8u25-b17/jre-8u25-linux-x64.tar.gz?AuthParam=1413493675_f5567fb1ca034f60be1ee920f368a77e
  -> [HttpResponse.cc:90] errorCode=8 Invalid range header. Request: 33554432-64545311/64545312, Response: 33554432-62763874/62763875
[#8c7d94 61MiB/61MiB(99%) CN:1 DL:1.7MiB]                                     
10/16 23:07:12 [NOTICE] Descarga completa: /tmp/build/jre/jre-8u25-linux-i586.tar.gz

Resultados de la descarga:
gid   |stat|avg speed  |path/URI
======+====+===========+=======================================================
8c7d94|OK  |   1.7MiB/s|/tmp/build/jre/jre-8u25-linux-i586.tar.gz

Leyenda:
(OK):descarga completada.

Descomprimiendo ...
tar: jre-8u25-linux-x64.tar.gz: Cannot open: No existe el fichero o el directorio
tar: Error is not recoverable: exiting now


Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-10-2014, 00:35 (Viernes)
garcad , actualiza los updaters que esolo corregi hace dos dias.


aunque los he actualizado esta mañana-.

el script deberia actualizarse el solito.

si no lo hace usa el wifislax-updaters_updater
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-10-2014, 00:39 (Viernes)
psss , se me olvido cambiarle la fecha , por eso no se actualiza.


te lo dejo aqui.


jre_updater
Código: [Seleccionar]

#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141017

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=jre
WEB=$(curl -s http://www.oracle.com/technetwork/java/javase/downloads/jre8-downloads-2133155.html | grep -E i586.tar.gz | grep linux | cut -d ":" -f4- | cut -d "\"" -f2)
ARCHIVO=${WEB##*/}
VERSION=$(echo $ARCHIVO | cut -d "-" -f 2)
}

# Si el paquete no existe se descargara de internet
F_download(){
echo ".oracle.com TRUE / FALSE 1906724535 oraclelicense accept-securebackup-cookie">cookie
if [ ! -f $ARCHIVO ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
aria2c -x 3 --load-cookies=cookie $WEB
fi
}

# Empezamos a crear el paquete
F_crearpaquete(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3

mkdir -p $PKG/usr/java/ $PKG/etc/profile.d $PKG/usr/lib/mozilla/plugins/ $PKG/usr/lib/java $PKG/usr/share/applications
tar -xvf $ARCHIVO -C $PKG/usr/java/
cleandir $PKG

cd $PKG
echo "#!/bin/csh
setenv JAVA_HOME /usr/lib/java
setenv MANPATH \${MANPATH}:\${JAVA_HOME}/man
setenv PATH \${PATH}:\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin" >$PKG/etc/profile.d/jre.csh

echo "#!/bin/sh
export JAVA_HOME=/usr/lib/java
export MANPATH=\"\${MANPATH}:\${JAVA_HOME}/man\"
export PATH=\"\${PATH}:\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin\"" >$PKG/etc/profile.d/jre.sh
chmod +x $PKG/etc/profile.d/jre.sh
chmod +x $PKG/etc/profile.d/jre.csh

mv $PKG/usr/java/jre*/* $PKG/usr/lib/java/
ln -s $PKG/usr/lib/java/ $PKG/usr/lib/$(ls $PKG/usr/java/ | cut -d "/" -f1)
rm -Rf $PKG/usr/java


ln -s /usr/lib/java/lib/i386/libnpjp2.so $PKG/usr/lib/mozilla/plugins/libnpjp2.so
ln -s /usr/lib/java/lib/i386/server/libjvm.so $PKG/usr/lib/libjvm.so
sleep 3

# Entrada a escritorio
echo "[Desktop Entry]
Exec=/usr/lib/java/bin/jcontrol
Icon=sun-jcontrol.png
Name[es]=Java Control Panel
Name=Java Control Panel
Categories=Settings
StartupNotify=false
Terminal=false
Type=Application" >$PKG/usr/share/applications/sun_java.desktop
}

###################################
## 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 script
f_versionInstalada
#Si no existe el fichero se descargara
F_download
# Empezamos a crear el paquete
F_crearpaquete
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 17-10-2014, 00:43 (Viernes)
Gracias  >:( >:( >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-10-2014, 19:25 (Viernes)
arregle 6 o 7 updaters , ...el de bully hay que arreglarlo , los demas los solvente , aunque no se si los llegue a subir al ftp.

creo que mañana puedo subir iso, 8)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 24-10-2014, 19:12 (Viernes)
Al arrancar la live con el módulo creado por el updater de google chrome el sistema se queda loco y no funcionan bien la mitad de las cosas, esto es debido a que crea el módulo con el directorio raiz sin permisos de lectura/escritura.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 24-10-2014, 20:31 (Viernes)
Al arrancar la live con el módulo creado por el updater de google chrome el sistema se queda loco y no funcionan bien la mitad de las cosas, esto es debido a que crea el módulo con el directorio raiz sin permisos de lectura/escritura.

por no hablar de que , obtener el numero de versión , es un infierno , tu lo tenias hecho con un grep al pkg.org y a los paquetes debían...o algo asi..y yo no soy capaz de hacerlo.


¿ podrias mirar ese updater ?

seria lo que dices de los permisos , y obtener la versión vigente ESTABLE.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 26-10-2014, 21:36 (Domingo)
No se cuando voy a tener tiempo, pero me lo apunto.

Por cierto al usar el updater de tor browser me suelta este error:

Código: [Seleccionar]

        ******************************
           Actualizador/Instalador   
           Paquete: tor-browser
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 22/09/2014

Descomprimiendo ...
tar: /tmp/build/tor-browser/: Cannot read: Es un directorio
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-10-2014, 22:27 (Domingo)
No se cuando voy a tener tiempo, pero me lo apunto.

Por cierto al usar el updater de tor browser me suelta este error:

Código: [Seleccionar]

        ******************************
           Actualizador/Instalador   
           Paquete: tor-browser
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 22/09/2014

Descomprimiendo ...
tar: /tmp/build/tor-browser/: Cannot read: Es un directorio
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now


ya sabes que no hay prisa , ..me gustaria liberar iso en navidad , ...creo te dara tiempo.   ;D ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-10-2014, 05:22 (Lunes)
No se cuando voy a tener tiempo, pero me lo apunto.

Por cierto al usar el updater de tor browser me suelta este error:

Código: [Seleccionar]

        ******************************
           Actualizador/Instalador   
           Paquete: tor-browser
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 22/09/2014

Descomprimiendo ...
tar: /tmp/build/tor-browser/: Cannot read: Es un directorio
tar: At beginning of tape, quitting now
tar: Error is not recoverable: exiting now



acabo de ver la FECHA , ...ese script ya fue reparado ... y se le actualizo la fecha , deberia haberse auto-actualizado al usarlo , ...  ya comente que me parecia que la funcion autoactualizar script, estaba fallando ...


usa el updaters ... para actualizartelos todos.

dejo la version en curso del updater de tor ...aunque es la mima del ftp...y la iso de desarrollo 

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141020

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=tor-browser
WEB=https://dist.torproject.org/torbrowser/
VERSION=$(curl -s $WEB | sed -e 's/\(<[^<][^<]*>\)//g' | grep "\." | grep - | awk '{print $1}' | tail -1 | cut -d "/" -f1)
ARCHIVO=$(curl -s $WEB/$VERSION/ | sed -e 's/\(<[^<][^<]*>\)//g' | awk '{print $1}' | grep tar.xz$ | grep -i es | grep 32)
}

# Creamos directorios extra
F_extradirs(){
mkdir -p  $PKG/{opt,usr/share/applications/}
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
tar xvf $TMP/$ARCHIVO -C $PKG/opt/
mv $PKG/opt/* $PKG/opt/Tor
#Permitimos usuarios root para ejecutar Tor
find $PKG/opt/Tor -type f -name start-tor-browser -exec sed -i -e 's/`" -eq 0/`" -eq 1/g' {} \;
#Cambiamos de propietario
chown -R root:root $PKG/*
# Creamos entrada de menu desktop
echo "[Desktop Entry]
Exec=/opt/Tor/start-tor-browser
Icon=/opt/Tor/Browser/browser/icons/mozicon128.png
MimeType=
Name[es]=Tor Browser
Name=Tor Browser
Categories=Network;
StartupNotify=false
Terminal=false
TerminalOptions=
Type=Application
">$PKG/usr/share/applications/Tor.desktop
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 27-10-2014, 14:46 (Lunes)
Ok, pues no se porque no se auto-actualiza. Usaré el updaters_updater, gracias.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-10-2014, 07:17 (Jueves)
Tenemos que determinar , por que narices los scripts han dejado de "autoactualizarse" , ... es un bug que considero importante.

Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-10-2014, 07:35 (Jueves)
Les pasa a todos?

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-10-2014, 08:57 (Jueves)
Les pasa a todos?

Salu2

si , debe ser algo en la función de updatear en el propio script.

el updater va bien, pero la función individual no va.


para probar simplemente edita la fecha y bajala en cualquier script , y veras que no se actualiza a la del serve.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 30-10-2014, 17:36 (Jueves)
Reparado el chrome_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20140930

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
PRGNAM=google-chrome
WEB=http://www.ubuntuupdates.org/package/google_chrome/stable/main/base/google-chrome-stable
VERSION="$(curl -s $WEB|grep -m1 "google-chrome-stable_"|awk -F'_' '{print $2}')"
DOWNLOAD=http://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_i386.deb
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo "$VERDE"
echo "Etrayendo contenido del fichero .deb"
echo "$CIERRE"
sleep 3
mkdir -p "$TMP/deb"
deb2dir $TMP/google-chrome-stable_${VERSION}_i386.deb "$TMP/deb"
rm -rf "$TMP/deb"/{etc,usr/share/man/,usr/share/doc,/usr/share/menu,/usr/share/gnome-control-center}
find ""$TMP/deb"/opt/google/chrome/locales" -iname "*.pak" \
-not -iname "es.pak" \
-not -iname "en-US.pak" -and \
-exec rm -rf {} \;

rm -rf "$TMP/deb"/usr/share/applications/*.desktop

echo "[Desktop Entry]
Name=Google Chrome
GenericName=Web Browser
GenericName[es]=Navegador web
Exec=/opt/google/chrome/google-chrome --user-data-dir=
Terminal=false
Icon=/opt/google/chrome/product_logo_48.png
Type=Application
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml_xml;x-scheme-handler/http;x-scheme-handler/https;x-scheme-handler/ftp;" > "$TMP/deb"/usr/share/applications/$PRGNAM.desktop

cp -rfp "$TMP"/deb/* "$PKG"
}

###################################
## 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 i386
#Comprobamos version instalada del script
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

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-10-2014, 17:53 (Jueves)
Creo que he encontrado el error de los updaters.... Pero tengo la ligera paranoia de que eso va mas lejos de lo que parece...

Os mando un MP para que lo verifiqueis.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-10-2014, 18:26 (Jueves)
Arreglado, pero mirar vuestros MP. Me gustaría saber vuestra opinión al respecto.

Cambiar

DIRECTORIO=$(pwd)

por...

DIRECTORIO=$(ps xf | grep /opt/wifislax-updaters | tail -2 | head -1 |awk '{print $8}' | cut -d";" -f1 | rev | cut -d / -f2- | rev)

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 05:22 (Viernes)
Arreglado, pero mirar vuestros MP. Me gustaría saber vuestra opinión al respecto.

Cambiar

DIRECTORIO=$(pwd)

por...

DIRECTORIO=$(ps xf | grep /opt/wifislax-updaters | tail -2 | head -1 |awk '{print $8}' | cut -d";" -f1 | rev | cut -d / -f2- | rev)

Salu2

pues no , ... no se arregla con eso.

te repito ..

coge un updater , y rebajale la fecha , ... y lo lanzas , veras que ni se inmuta.
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-10-2014, 10:42 (Viernes)
Te digo que si, se arregla con eso. El problema esta en esa variable de funciones.sh xD

Nota: Acabo de darme cuenta de que habría problemas para mas de un updater a la vez.... Voy mirarlo fe nuevo


Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 31-10-2014, 10:53 (Viernes)
Ayer al final no pude mirarlo, a ver si esta noche... es que no tengo tiempo pa ná  :(
Por cierto, o vk496 acaba de escribir en el futuro, o el servidor aún no ha hecho el cambio de hora jajajajaj
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 12:20 (Viernes)
Te digo que si, se arregla con eso. El problema esta en esa variable de funciones.sh xD

Nota: Acabo de darme cuenta de que habría problemas para mas de un updater a la vez.... Voy mirarlo fe nuevo


Salu2

men , y yo te digo que después d ehacer eso , ..le bajo la fecha al primero que pillo , y lo lanzo , y no se da cuenta que el ftp tiene una mas nueva.


suelo modificar el de aicrack-ng , ... lo lanzo , y ni cuenta de que el ftp tiene una mas nueva.

de no ser que ese script no lleve la *llamada , a la función ...
Título: Re: Re: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-10-2014, 12:27 (Viernes)


Te digo que si, se arregla con eso. El problema esta en esa variable de funciones.sh xD

Nota: Acabo de darme cuenta de que habría problemas para mas de un updater a la vez.... Voy mirarlo fe nuevo


Salu2
de no ser que ese script no lleve la *llamada , a la función ...

Puede que sea eso xD

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 13:10 (Viernes)
pues si que lleva la funcion de buscar sus updates, pero no va.


este es el funciones.sh que yo tengo .del dia 25 de este mes ...


al que le he cambiado la linea directorio , tal como tu pedias, pero no va.


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

# Script by www.seguridadwireless.net

FUNCIONES_VERSION=20141025

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)

# variable que restara un nucleo para reservarlo al sistema si hay mas de 2
if [ $NUCLEOS -gt 2 ]; then
let NUCLEOS=$NUCLEOS-1
fi

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
clear
sleep 0.1 | echo ""
sleep 0.1 | echo ""
sleep 0.1 | echo "$BLANCO"  "       ******************************"   
sleep 0.1 | echo "$VERDE"   "          Actualizador/Instalador    "   
sleep 0.1 | echo "$VERDE"   "          Paquete: "$AMARILLO"$PRGNAM"                                                 
sleep 0.1 | echo "$VERDE"   "                                   "
sleep 0.1 | echo "$VERDE"   "          www.seguridadwireless.net  "
sleep 0.1 | echo "$BLANCO"  "       ******************************"
sleep 0.1 | echo "$CERRAR"
sleep 1
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "No tengo internet ... el script se cerrara."
      echo ""
      sleep 1
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(ps xf | grep /opt/wifislax-updaters | tail -2 | head -1 |awk '{print $8}' | cut -d";" -f1 | rev | cut -d / -f2- | rev)
   SERVIDOR_VERSION=$(timeout -s SIGTERM 3 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 1
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]*-* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"La version del sistema es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 1
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas nueva en su pagina web es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

f_backup(){
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   sleep 2
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   sleep 2
   PACKAGE=`grep -l -r $PRGNAM-[0-9]* /var/log/packages | cut -d "/" -f5`
   log2xzm /var/log/packages/$PACKAGE $HOME/xzm_backups/$PACKAGE.backup
   echo ""
   echo "$AMARILLO"El paquete del sistema fue salvado en $HOME/xzm_backups/$PACKAGE.backup"$CIERRE"
   sleep 3
}

# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   
   if [ ! -d /mnt/live/memory/changes ]; then
   if [ ! -d $HOME/xzm_backups ]; then
   mkdir -p $HOME/xzm_backups
   fi
   echo "1 - "$VERDE"Crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo "2 - "$ROJO"No crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo ""
   read -p " #> " CHOISE
   echo ""
    case $CHOISE in
      1 ) f_backup; break;;
      2 ) echo ""$CYAN"Continuamos sin hacer backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""; break;;
    esac
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   TMP=${TMP:-/tmp/build/$PRGNAM}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Hace strip al paquete
f_strip() {
   cd $PKG
   stripdir $PKG 2>/dev/null
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() { 
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   
# Guardamos los modulos en carpetas por categoria
   cd ..
   CATEGORIA=`echo $CWD | cut -d "/" -f4`
   if [ ! -d $HOME/Desktop/$CATEGORIA ]; then
   mkdir -p $HOME/Desktop/$CATEGORIA
   fi

#Para sigram nos basamos en el log. Para el resto siempre es igual
if [ $PRGNAM = sigram ]; then
cleandir $PKG
log2xzm $TMP/sigram.log $HOME/Desktop/$CATEGORIA/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$CATEGORIA/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm /
else
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   fi
# Iniciar algun servicio si existe
   if [ -f $PKG/etc/rc.d/rc.teamviewerd ]; then
   /etc/rc.d/rc.teamviewerd start &>/dev/null
   fi
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   if [ $PRGNAM = firefox ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/008-Firefox-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   
   if [ $PRGNAM = metasploit ]; then
       /etc/rc.d/rc.metasploit start &> /dev/null
   fi
   if [ -x /usr/bin/update-desktop-database ]; then
       /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
       /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
   if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
   fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
       /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 1
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 1
# Liberamos memoria
   sync && echo 3 > /proc/sys/vm/drop_caches
# Salimos del script
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 13:17 (Viernes)
para no hacerte bajar toda la iso ..te dejo el xzm ,con lo que tengo.

http://www.mediafire.com/download/pe462e32cdale9z/wifislax_updaters-2.4-noarch-1sw.xzm


he probado modificandole le fecha al de aicrack y al de armitage , ninguno se entera de estar obsoleto con respecto al ftp.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-10-2014, 23:03 (Viernes)
El FTP va de pu** pena... Me resulta imposible hacer pruebas sin que me tire de los pelos. No sé si es buena idea tener los scripts en ese lugar si va a haber tantas caidas....

Para lo que he podido probar, el problema se encuentra en la variable $DIRECTORIO, eso seguro.

   DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)

Haciendo esto será menos arriesgado que con procesos de memoria, y me ha funcionado con crunch

@USUARIONUEVO, cuidad con los nombres! He visto que en el server, tienes puesto tor_updater, pero como nombre es tor-browser_updater. Este tipo de cosas nos van a dar infinitos problemas!!!

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 23:13 (Viernes)
El FTP va de pu** pena... Me resulta imposible hacer pruebas sin que me tire de los pelos. No sé si es buena idea tener los scripts en ese lugar si va a haber tantas caidas....

Para lo que he podido probar, el problema se encuentra en la variable $DIRECTORIO, eso seguro.

   DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)

Haciendo esto será menos arriesgado que con procesos de memoria, y me ha funcionado con crunch

@USUARIONUEVO, cuidad con los nombres! He visto que en el server, tienes puesto tor_updater, pero como nombre es tor-browser_updater. Este tipo de cosas nos van a dar infinitos problemas!!!

Salu2

habria algun sitio mas estable ??

el ftp ya sabemos que va de pena.

mirare a ver , eso del tor-browser
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 23:34 (Viernes)
Bueno , con la nueva modificacion ya van , ...

el de aircrack-ng creo que falla, por lo que comentas del PRGNAM , y el name del fichero , que no coinciden.


asi pues el name del fichero deber ser

PRGNAM_updater

::::::::::::::::

ademas , he visto que si en la ruta de trabajo , al querer actualizar hay un fichero viejo de modificaciones, se raya un poco la tarea de updatear ...

el funciones.sh ,  deberia hacer lo primero de todo un 
Código: [Seleccionar]
rm -rf *_updater~
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-10-2014, 23:36 (Viernes)
Voy a ver como va Google Drive...

Ahí seguro que no se cae xD

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-10-2014, 23:49 (Viernes)
al funciones.sh , le voy a incluir una fulminacion de ficheros backup ...


Código: [Seleccionar]
# Eliminamos posibles ficheros viejos de modificaciones de scripts
rm -rf /opt/wifislax-updaters/*/*~ &>/dev/null


asi el version updater no se volvera loco...  ;D


como el ftp es un put0 carac0l , le voy a modificar el tiempo de espera ..

   SERVIDOR_VERSION=$(timeout -s SIGTERM 3 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)



   SERVIDOR_VERSION=$(timeout -s SIGTERM 10 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-10-2014, 23:55 (Viernes)
Google chrome me da problemas....

Se descarga bien, pero no se inicia.... Creo que tiene dependencias rotas...

No se podrías mirarlo tu, que con Chrome no trabajé en los updaters, y me parece que tu lo dominas mas (o geminis, ni idea)

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-10-2014, 23:57 (Viernes)
Nota: Dejo esta tontería de script para que te resulte mas facil saber que archivos no coinciden en su nombre con el de PRGNAM

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

for file in $(find /opt/wifislax-updaters -type f); do


 if [ ! "${file##*/}" = "$(cat $file | grep -m1 "PRGNAM=" | awk '{print $1}' | cut -d= -f2)_updater" ]; then

    echo $file

 fi
done

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-11-2014, 00:00 (Sábado)
Rectifico.

He reiniciado el PC, y ya me funciona el Chrome.

Fallará algo si se hace al momento

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-11-2014, 00:11 (Sábado)
Rectifico.

He reiniciado el PC, y ya me funciona el Chrome.

Fallará algo si se hace al momento

Salu2

creo que cambia algun permiso de alguna carpeta , .. y al reiniciar el sistema vuelve a ponerlo bien.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-11-2014, 00:13 (Sábado)
Nota: Dejo esta tontería de script para que te resulte mas facil saber que archivos no coinciden en su nombre con el de PRGNAM

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

for file in $(find /opt/wifislax-updaters -type f); do


 if [ ! "${file##*/}" = "$(cat $file | grep -m1 "PRGNAM=" | awk '{print $1}' | cut -d= -f2)_updater" ]; then

    echo $file

 fi
done

Salu2


gracias , ....

ya habia modificado alguno , pero ... parece que hay  bastantes ..cagu en to


/opt/wifislax-updaters/Navegadores/firefox-multi_updater
/opt/wifislax-updaters/Librerias/gstreamer_updater
/opt/wifislax-updaters/Multimedia/clementine_updater
/opt/wifislax-updaters/Drivers/ati_updater
/opt/wifislax-updaters/Pentest/websploit_updater
/opt/wifislax-updaters/Pentest/fbht_updater
/opt/wifislax-updaters/Auditoria/networkminer_updater
/opt/wifislax-updaters/Oficina/libreoffice_updater
/opt/wifislax-updaters/Funciones/funciones.sh
/opt/wifislax-updaters/Sistema/firmwares_updater
/opt/wifislax-updaters/Sistema/wifislax-updaters_updater
/opt/wifislax-updaters/Sistema/kernel_updater
/opt/wifislax-updaters/Desarrollo/free_pascal_compiler_updater
/opt/wifislax-updaters/Desarrollo/gambas_updater
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-11-2014, 00:39 (Sábado)
Creo que si que es posible montar el sistema a través de Google Drive. Estoy preparando la forma de obtención de archivos y consulta. En cuanto lo tenga, lo posteo aquí

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-11-2014, 01:48 (Sábado)
Ya lo tengo listo.  ^-^ >:D

URL no oficial: http://googledrive.com/host/0By6cQK29ZX4tNkh5TVVsRVRydUU (http://googledrive.com/host/0By6cQK29ZX4tNkh5TVVsRVRydUU)

Este script obtiene la lista de archivos de la carpeta de prueba de Google Drive:

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

KEY=0By6cQK29ZX4tNkh5TVVsRVRydUU

readarray -t raiz < <(wget -q -O - https://googledrive.com/host/$KEY | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | grep $KEY | rev | cut -d/ -f1 | rev)
 
 
for carpeta in "${raiz[@]}"; do

readarray -t subraiz < <(wget -q -O - https://googledrive.com/host/$KEY/$carpeta | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | grep $KEY | rev | cut -d/ -f1 | rev| sed -n '1!p')


for archivo in "${subraiz[@]}"; do

echo https://googledrive.com/host/$KEY/$carpeta/$archivo

done

done


Por otro lado, wifislax-updaters_updater NO OFICIAL (solo modifiqué para hacerlo funcionar en Google Dive, nada mas):

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

# Script for www.seguridadwireless.net by vk496

SCRIPT_VERSION=20140922

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
WEB="http://downloadwireless.net"
ELDIRECTORIO="wifislax-updaters"
PRGNAM=$ELDIRECTORIO
DIRECTORIOHTML="?dir=$ELDIRECTORIO"
VERSION=`echo $(date +"%Y%m%d")`
CREAR_MODULO=NO
}

#Creamos directorios extra
F_extradirs(){
mkdir -p $PKG $PKG/usr/share/applications/wifislax/Actualizadores
}

# Directorios de trabajo y actualizar
F_actualizar(){

#Creamos la carpeta donde van a estar los scripts
if [ ! -d $PKG/opt/$ELDIRECTORIO ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO
fi

echo
#Contador de todos los scripts
contador=0
#Obtenemos la carpeta del server, y la usamos como carpeta local
KEY=0By6cQK29ZX4tNkh5TVVsRVRydUU

readarray -t raiz < <(wget -q -O - https://googledrive.com/host/$KEY | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | grep $KEY | rev | cut -d/ -f1 | rev)

for carpeta in "${raiz[@]}"; do
readarray -t subraiz < <(wget -q -O - https://googledrive.com/host/$KEY/$carpeta | grep -o '<a href=['"'"'"][^"'"'"']*['"'"'"]' | sed -e 's/^<a href=["'"'"']//' -e 's/["'"'"']$//' | grep $KEY | rev | cut -d/ -f1 | rev| sed -n '1!p')
#Obtenemos el archivo del server, y lo usamos como archivo local
for archivo in "${subraiz[@]}"; do
let contador=$contador+1
echo -n "${CYAN}Buscando $archivo... $CIERRE"

#Comprobamos si ya existe ese script
if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
#Si se trata de funciones.sh, usamos variables distintas al habitual, si no,
if [ ${archivo} == "funciones.sh" ]; then
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -Ls https://googledrive.com/host/$KEY/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
else
LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
WEB_VERSION=$(curl -Ls $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
fi
echo -n "${VERDE}EXISTE$CIERRE"
#Ademas de mirar si existe, comprobamos si existe version mas nueva a la que tenemos nosotros
if [[ $LOCAL_VERSION -lt $WEB_VERSION ]]; then
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -Ls https://googledrive.com/host/$KEY/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo " + ${AMARILLO}ACTUALIZADO $ROSA(${WEB_VERSION:6}/${WEB_VERSION:4:2}/${WEB_VERSION:0:4})$CIERRE"
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
else
echo -e " $BLANCO(${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4})$CIERRE"
fi
#Si no existe ese escript en nuestro sistema, procedemos a descargarlo
else
CREAR_MODULO=SI
if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
fi
curl -Ls https://googledrive.com/host/$KEY/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
LOCAL_VERSION=$(cat $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
echo "${ROJO}DESCARGADO$CIERRE $BLANCO($ROSA${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4}$BLANCO)$CIERRE"
PRGNAM_CORTO=$(echo $archivo | cut -d "_" -f1)
mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores/$carpeta
#Creamos el desktop del menu
echo "[Desktop Entry]
Categories=$carpeta;
Exec=sh -c \"/opt/wifislax-updaters/$carpeta/$archivo;${SHELL:-bash}\"
Icon=updaters
MimeType=
Name=$PRGNAM_CORTO
Path=/opt/wifislax-updaters/$carpeta/
Terminal=true
TerminalOptions=
Type=Application">$PKG/usr/share/applications/wifislax/Actualizadores/$carpeta/$PRGNAM_CORTO.desktop

fi

done

done

sleep 2
echo
}

# Crear estructura
F_estructura(){
if [ $CREAR_MODULO = SI ]; then

echo -n ${CYAN}Creando logs e instalando....$CIERRE
echo -ne "${CYAN} $ROJO$contador${CYAN} scripts$CIERRE"
sleep 3

mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores $PKG/opt/wifislax-updaters
cp -Ru /usr/share/applications/wifislax/Actualizadores/ $PKG/usr/share/applications/wifislax/
cp -Ru /opt/wifislax-updaters/ $PKG/opt/

if [ -d $PKG/usr/share/applications/wifislax/Actualizadores/Funciones ]; then
rm -rf $PKG/usr/share/applications/wifislax/Actualizadores/Funciones
fi
fi
}

F_final(){
if [ $CREAR_MODULO = SI ]; then
f_tareasFinales
else
echo $VERDE
echo No hay actualizaciones para los updaters
sleep 3
echo
echo Bye Bye
echo $CIERRE
fi
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
# Directorios de trabajo y actualizar
F_actualizar
# Crear estructura
F_estructura
#Creamos xzm , instalamos y salimos
F_final


Esto es solo una prueba de concepto. Lo dejo a tu juicio USUARIONUEVO. En mi opinión, rinde mejor y permite gestión mediante usuarios con privilegios (util para mas de 1 colaborador)

Ale, me voy a dormir, que mañana tengo que estudiar  >:(

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 01-11-2014, 08:22 (Sábado)
Para lo que he podido probar, el problema se encuentra en la variable $DIRECTORIO, eso seguro.

   DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)

Haciendo esto será menos arriesgado que con procesos de memoria, y me ha funcionado con crunch

Una forma algo mas practica de obtener la ruta:

DIRECTORIO="$(dirname /opt/wifislax-updaters/*/${PRGNAM}_updater)"
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-11-2014, 13:50 (Sábado)
acabo de subir todos los updaters modificados de ayer, todos con fecha de hoy

funciones.sh , ahora se llama funciones_updater

he modificado todos los scripts , creo que si no se llama asi , la autoactualizacion no funciona, para el mismo , por eso le meti asi el name ... igual que el prgnam.


he modificado también el base_updater  , ... para crear updaters base a rellenar con lo básico ya escrito ,

os recomiendo , o que directamente bajéis el iso de hoy , o que bajéis los dos paquetes siguientes y los instaléis , ..o useis ..aunque algún updater puede no funcionar por que os faltara algo como alguna pequeña librería y demás ...

el listado de cambios no esta mal .. hay versión nueva de ettercap , aircrack , y algunas cosillas mas, pero entiendo que no queráis estar bajando iso cada dos días.  ;D


http://www.mediafire.com/download/9ppdbkaauics4g9/wifislax_scripts-1.7-noarch-1sw.xzm
http://www.mediafire.com/download/2urcam35bm688n1/wifislax_updaters-2.6-noarch-1sw.xzm
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-11-2014, 15:31 (Sábado)
Sigo esperando esas opiniones sobre Google Drive! Que me tiré una hora investigando xDDD

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 01-11-2014, 17:22 (Sábado)
Hola USUARIONUEVO, dado la velocidad de salida de las nuevas ISO'S he pensado no abrir un post para reportar este fallo y ponerlo aquí mismo.

Me ha dado por probar la nueva ISO "wifislax-4.9-01112014.iso" y al ejecutar algún script no me detecta bien la Wifistation Panel.

De principio la detecta pero cuando quiere empezar el escaneo dicen que no hay ninguna tarjeta en el equipo.

He probado el GeminisAuditor, el Linset y el airoscript.

Lo mas curioso es que despues de usar el Geminis por ejemplo la tarjeta aparece como (picar en la imagen para ampliar):

(http://es.zimagez.com/miniature/instantanea.jpg) (http://es.zimagez.com/zimage/instantanea.php)

He probado muchas de las anteriores ISO'S de desarrollo y es la primera que me lo hace.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-11-2014, 20:51 (Sábado)
Has debido usar antes alguna tool de visualizacion de datops wps , como wpsig , wpspy o aluna de esas, no recuerdo cual de todas cambiaba la tarjeta de esa forma.


pueba rcien arrancada la iso y veras que no te pasa , es al usar una tool de las de wps, pero no recuerdo cual era.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-11-2014, 20:52 (Sábado)
Has debido usar antes alguna tool de visualizacion de datops wps , como wpsig , wpspy o aluna de esas, no recuerdo cual de todas cambiaba la tarjeta de esa forma.


pueba rcien arrancada la iso y veras que no te pasa , es al usar una tool de las de wps, pero no recuerdo cual era.


la tool es wpsig  ;)

no se si quitarla  , ... creo hay otras tools que sacan info wps ,sin necesidad de crear esas interfaces wlan0mon etc

pues NO VIENE DE HAYYYY  , ES LA SUITE AIRCRACK  .............    :-\ :-\ :-\ :-\

me va a tocar buscar una anterior , .... ;) , o mirar bien , como la compilo , .. esta usando caracteristicas de airmon-zc   ( airmon Zero Caos ) , que era una variante del airmon-ng y hasta ahora aparecian separadas, pero parece que estan unificando.... me parece una cagada , ... despues de tanto tiempo usando monX  ...   ^-^


aqui dejo el parche , de momento desaconsejo actualizar aircrack , ...este es el rc1 , liberado ayer 31 de oct.

http://www.mediafire.com/download/hxf49mt7e20v7yl/aircrack-ng-1.2-rc1-i486-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 01-11-2014, 21:53 (Sábado)
Has debido usar antes alguna tool de visualizacion de datops wps , como wpsig , wpspy o aluna de esas, no recuerdo cual de todas cambiaba la tarjeta de esa forma.


pueba rcien arrancada la iso y veras que no te pasa , es al usar una tool de las de wps, pero no recuerdo cual era.


la tool es wpsig  ;)

no se si quitarla  , ... creo hay otras tools que sacan info wps ,sin necesidad de crear esas interfaces wlan0mon etc

pues NO VIENE DE HAYYYY  , ES LA SUITE AIRCRACK  .............    :-\ :-\ :-\ :-\

me va a tocar buscar una anterior , .... ;) , o mirar bien , como la compilo , .. esta usando caracteristicas de airmon-zc   ( airmon Zero Caos ) , que era una variante del airmon-ng y hasta ahora aparecian separadas, pero parece que estan unificando.... me parece una cagada , ... despues de tanto tiempo usando monX  ...   ^-^


aqui dejo el parche , de momento desaconsejo actualizar aircrack , ...este es el rc1 , liberado ayer 31 de oct.

http://www.mediafire.com/download/hxf49mt7e20v7yl/aircrack-ng-1.2-rc1-i486-1sw.xzm

Parche probado y de momento todo O.K.

Ya me estrañaba a mí ya que nunca me había pasado eso.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 01-11-2014, 22:55 (Sábado)
        ******************************
           Actualizador/Instalador   
           Paquete: wifislax-updaters
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 01/11/2014

Buscando funciones_updater... EXISTE/opt/wifislax-updaters/Sistema/wifislax-updaters_updater: línea 65: [[: $(timeout -s SIGTERM 10 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION: error sintáctico: se esperaba un operando (el elemento de error es "$(timeout -s SIGTERM 10 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION")
 (out -s SIGTERM 10 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION/me/$(ti)
Buscando dropbox_updater... EXISTE (01/11/2014)

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-11-2014, 23:49 (Sábado)
@garcad , culpa mia.


linea 56 , cambia

"funciones.sh"

por

"funciones_updater"
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 02-11-2014, 00:04 (Domingo)
Voy a rayar lo cansino para ver si alguien me hace caso y comenta algo al respecto de la propuesta de GoogleDrive :P  ;D

Una de las posibilidades que "podría" pasar el alojar todos los scripts en GoogleDrive es que se borre por copyright o cualquier otro motivo absurdo.

Si se coge un servidor de fiar, y se guarda en él un simple documento con la KEY de la carpeta publica de GoogleDrive, nos aseguramos que en cualquier momento podamos migrar todo la estructura de archivos a otra carpeta, hacerla publica, y únicamente cambiar la KEY para dejar todo en marcha.

Es decir, obtener de forma dinámica la KEY sobre la que trabajará todo el conjunto de updaters para autoactualizarse.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 02-11-2014, 16:33 (Domingo)
@vk496 probado el concepto de Drive y funciono bien.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 02-11-2014, 16:37 (Domingo)
@garcad , culpa mia.


linea 56 , cambia

"funciones.sh"

por

"funciones_updater"

Mas bien gracias a ti, y a todos los que están colaborando para poder disfrutar de estas funciones.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 02-11-2014, 16:39 (Domingo)
He actualizado kde 4.14.2 de alien y los archivos comprimidos abiertos con ark si se visualiza el contenido, lo que no se consigue con la versión que tiene wifislax, habrá algo que no va bien.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-11-2014, 21:20 (Domingo)
He actualizado kde 4.14.2 de alien y los archivos comprimidos abiertos con ark si se visualiza el contenido, lo que no se consigue con la versión que tiene wifislax, habrá algo que no va bien.

Salu2

ya , ahora copia

/usr/include

al escritorio , y al acabar de copiarse, borrala ...   ;D

si miras veras como la ruleta esa de abajo en el area de notificacion se relentiza de la ostia , y elimina los ficheros de 1 en 1 ..cosa que cuando son muchos, se pega la vida borrando.  ;D ;D ;D  ...  por eso no lo he actualizado. , estoy esperando a uno oficial de slackware.

https://foro.seguridadwireless.net/colaboracion-y-desarrollo-de-nuestras-lives/demostrando-bug-en-rama-de-kde-4-11-x/
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 02-11-2014, 22:00 (Domingo)
OK no me di cuenta del detalle cuando borro el contenido de un directorio lo hago con comandos.

# rsync -avh /usr/include /root/Desktop/
sent 238.95M bytes  received 637.79K bytes  7.86M bytes/sec
total size is 236.78M  speedup is 0.99

# rm -dR /root/Desktop/include

Tarda menos en borrar que en copiar.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-11-2014, 23:20 (Lunes)
el updater de teamviewer , lleva fallando una semana porlo menos    ;D ;D ;D ;D


lo dejo arreglado ,


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141111

############################################################
## 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=teamviewer
WEB=http://download.teamviewer.com/download/teamviewer_linux.deb
VERSION=$(curl -s http://www.teamviewer.com/es/download/linux.aspx | grep _ctl2_Version | head -1 | cut -d "v" -f2 | cut -d '<' -f-1)
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/usr/share/{applications,pixmaps} $PKG/var/log/teamviewer $PKG/etc/{teamviewer,rc.d}
}

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

#Configurando
F_configurar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
deb2dir $TMP/${PRGNAM}_linux.deb $PKG


# Make a .desktop file
cat $PKG/opt/teamviewer9/tv_bin/desktop/teamviewer-teamviewer9.desktop \
  | sed -e 's/EXEC/teamviewer/' -e 's/ICON/teamviewer/' \
  > $PKG/usr/share/applications/teamviewer.desktop

# Remove the dangling symlink first
rm $PKG/usr/bin/teamviewer

# Re-create the generic executable
( cd $PKG/usr/bin; ln -s /opt/teamviewer9/tv_bin/script/teamviewer teamviewer )

# Link icon to /usr/share/pixmaps
( ln -sf /opt/teamviewer9/tv_bin/desktop/teamviewer.png  $PKG/usr/share/pixmaps/teamviewer.png )
 
 
# Eliminamos simbolicos dañinos del paquete deb
rm -f $PKG/var/log/teamviewer $PKG/etc/teamviewer
rm -rf $PKG/opt/teamviewer9/logfiles/ $PKG/opt/teamviewer9/config/
ln -s /var/log/teamviewer $PKG/opt/teamviewer9/logfiles
ln -s /etc/teamviewer $PKG/opt/teamviewer9/config
# Generamos el servicio ...
cat > rc.teamviewerd << "EOF"
#!/bin/sh
#
# /etc/rc.d/rc.teamviewerd

teamviewerd_start() {
  if [ -x /opt/teamviewer9/tv_bin/teamviewerd ]; then
    echo "Starting TeamViewer Daemon"
    /opt/teamviewer9/tv_bin/teamviewerd --daemon start
  fi
}

teamviewerd_stop() {
    echo "Terminating TeamViewer Daemon"
  killall teamviewerd
}

teamviewerd_restart() {
  teamviewerd_stop
  sleep 2
  teamviewerd_start
}

case "$1" in
'start')
  teamviewerd_start
  ;;
'stop')
  teamviewerd_stop
  ;;
'restart')
  teamviewerd_restart
  ;;
*)
  echo "usage $0 start|stop|restart"
esac
EOF
mv rc.teamviewerd $PKG/etc/rc.d
chmod 777 $PKG/etc/rc.d/rc.teamviewerd
}

###################################
## 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
# Creamos directorios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
#Comprobamos version instalada del script
f_versionInstalada
#Descargamos el paquete si no existe
F_descargaPaquete
#Compilamos el paquete
F_configurar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
# Iniciamos el servicio para que sea usable en el acto
F_servicio
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: teik en 11-11-2014, 00:19 (Martes)
el gparted no funciona, lo instala pero cuando dices de lanzarlo no inicia.  ???
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-11-2014, 00:32 (Martes)
el updater de teamviewer , lleva fallando una semana porlo menos    ;D ;D ;D ;D

lo dejo arreglado ,

No veo la función F_servicio en ese código... ¿dónde se define, en funciones.sh? En ese caso no debería ser "f_servicio" ?



Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-11-2014, 04:47 (Martes)
no hay F_servicio ...  esta todo dentro del

F_configurar


Código: [Seleccionar]
#Configurando
F_configurar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
deb2dir $TMP/${PRGNAM}_linux.deb $PKG


# Make a .desktop file
cat $PKG/opt/teamviewer9/tv_bin/desktop/teamviewer-teamviewer9.desktop \
  | sed -e 's/EXEC/teamviewer/' -e 's/ICON/teamviewer/' \
  > $PKG/usr/share/applications/teamviewer.desktop

# Remove the dangling symlink first
rm $PKG/usr/bin/teamviewer

# Re-create the generic executable
( cd $PKG/usr/bin; ln -s /opt/teamviewer9/tv_bin/script/teamviewer teamviewer )

# Link icon to /usr/share/pixmaps
( ln -sf /opt/teamviewer9/tv_bin/desktop/teamviewer.png  $PKG/usr/share/pixmaps/teamviewer.png )
 
 
# Eliminamos simbolicos dañinos del paquete deb
rm -f $PKG/var/log/teamviewer $PKG/etc/teamviewer
rm -rf $PKG/opt/teamviewer9/logfiles/ $PKG/opt/teamviewer9/config/
ln -s /var/log/teamviewer $PKG/opt/teamviewer9/logfiles
ln -s /etc/teamviewer $PKG/opt/teamviewer9/config
# Generamos el servicio ...
cat > rc.teamviewerd << "EOF"
#!/bin/sh
#
# /etc/rc.d/rc.teamviewerd

teamviewerd_start() {
  if [ -x /opt/teamviewer9/tv_bin/teamviewerd ]; then
    echo "Starting TeamViewer Daemon"
    /opt/teamviewer9/tv_bin/teamviewerd --daemon start
  fi
}

teamviewerd_stop() {
    echo "Terminating TeamViewer Daemon"
  killall teamviewerd
}

teamviewerd_restart() {
  teamviewerd_stop
  sleep 2
  teamviewerd_start
}

case "$1" in
'start')
  teamviewerd_start
  ;;
'stop')
  teamviewerd_stop
  ;;
'restart')
  teamviewerd_restart
  ;;
*)
  echo "usage $0 start|stop|restart"
esac
EOF
mv rc.teamviewerd $PKG/etc/rc.d
chmod 777 $PKG/etc/rc.d/rc.teamviewerd
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Fr3dY en 11-11-2014, 08:11 (Martes)
no hay F_servicio ...  esta todo dentro del

F_configurar

En el bloque de código del post anterior, el último paso es este  ???:

Código: [Seleccionar]
# Iniciamos el servicio para que sea usable en el acto
F_servicio




Saludos
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 11-11-2014, 20:48 (Martes)
el gparted no funciona, lo instala pero cuando dices de lanzarlo no inicia.  ???

Desde una shell si inicia, falla el lanzador.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-11-2014, 22:05 (Martes)
el gparted no funciona, lo instala pero cuando dices de lanzarlo no inicia.  ???

Desde una shell si inicia, falla el lanzador.

Salu2

como puede ser ..si yo lo hago y me funciona el lanzador ??

lo usais desdee que iso ?
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-11-2014, 22:08 (Martes)
no hay F_servicio ...  esta todo dentro del

F_configurar

En el bloque de código del post anterior, el último paso es este  ???:

Código: [Seleccionar]
# Iniciamos el servicio para que sea usable en el acto
F_servicio




Saludos


bueno , pues aun lo mire mucho , pero el funciones.sh en tareas finales , tiene lo de arrancar ese servicio , o el de metasploit, que solo existen si generas el modulo...

creo entonces esta parte de llamar a esa funcion que ya no existe , hay que eliminarla.

gracias, Fr3dY
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-11-2014, 22:47 (Martes)
me vais a matar a disgustos , ... acabo de rehacer gparted, desde su updater , y se me ejecuta perfectamente desde elmenu --->>   8)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 12-11-2014, 16:58 (Miércoles)
No tengo la ultima de desarrollo instalada, en anteriores desde live e instalado en hhd me dio ese problema puntual.

Reinstale gparted en hdd y se soluciono.

No cai en la cuenta de comunicarlo, suelo lanzar las aplicaciones desde shell.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 14-11-2014, 18:34 (Viernes)
USUARIONUEVO, en la nueva ISO "wifislax-4.9-13112014.iso" parece que hay un problema con la codificación de caracteres.

Al abrir un simple txt el Kwrite se queja de la codificación UTF-8 si mal no recuerdo y salen caracteres extraños, además de abrir el archivo en modo solo lectura para no dañarlo.

Y si uso por ejemplo el GeminisAuditor con ataque reaver a uno de mis router de la colección, en donde debe salir el pin que está probando en ese momento salen también caracteres raros.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-11-2014, 18:38 (Viernes)
No puede ser.


ese mensaje sale cuando abres ficheros de texto con formato Windows.

por ejemplo si abres alguno de los ficheros de menus te aparecerá ese mensaje.

lo de los pines, se ha actualizado la base de datos, y no se si se ha hecho desde Windows y por eso los caracteres raros.

luego lo miro.


____________________

ya lo he mirado y no veo nada raro.

¿has editado los patrones conocidos desde Windows ? ...

el mensaje que comentas es totalmente normal , avisa de que el tipo de codificación no es igual a la de wifislax, y solo te deja verlo.... aunque hay formas de abrirlo y editarlo , como reconfigurar kwrite , pero no es aconsejable.


si intentas abrir un fichero de texto con la codificación de Windows y tiene caracteres que no sabe interpretar, sale este mensaje...ES NORMAL.

Tan fácil como crear tu mismo un fichero de texto en wifislax ... escribir lo que quieras y veras que lo abres sin problemas después , ..

(http://fotos.subefotos.com/98ab1eba77069fb9ca51f530b850435co.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 14-11-2014, 19:13 (Viernes)
Tienes razón, he localizado el fallo y parece ser que es culpa de ficheros coruptos en el PEN USB, un txt y otro wpc de una sesion que tenía guardad de la ISO anterior cuando hize las probaturas.

No obstante haré mas pruebas por si acaso.

Gracias por mirarlo y un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 14-11-2014, 19:55 (Viernes)
Tienes razón, he localizado el fallo y parece ser que es culpa de ficheros coruptos en el PEN USB, un txt y otro wpc de una sesion que tenía guardad de la ISO anterior cuando hize las probaturas.

No obstante haré mas pruebas por si acaso.

Gracias por mirarlo y un saludo.

en cualquier caso , eso que ves es un sistema de protección de kwrite ,para no estropearte el documento ..puedes ir a editar y desbloquear la escritura..pero el ya te aviso que puedes estropearlo.  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 14-11-2014, 20:15 (Viernes)
Tienes razón, he localizado el fallo y parece ser que es culpa de ficheros coruptos en el PEN USB, un txt y otro wpc de una sesion que tenía guardad de la ISO anterior cuando hize las probaturas.

No obstante haré mas pruebas por si acaso.

Gracias por mirarlo y un saludo.

en cualquier caso , eso que ves es un sistema de protección de kwrite ,para no estropearte el documento ..puedes ir a editar y desbloquear la escritura..pero el ya te aviso que puedes estropearlo.  ;D

Mas de lo que estaban, imposible.

También la casualidad de probar justamente los dos fichero corruptos, no podían a ver sido otros.

Y lo mas curioso es que el txt lo creé en Wifisalx con el Kwrite y el wpc lo copié directamente de la sesión del Geminis Auditor.

Si lo que no me pase a mí, jejeje.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 16-11-2014, 21:41 (Domingo)
lives_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141116

############################################################
## 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() {
WEB=http://salsaman.home.xs4all.nl/lives/current/
VERSION=`curl -s $WEB | grep .bz2 | tail -1 | cut -d ">" -f3 | cut -d "-" -f2 | cut -d "t" -f-1 | sed "s/.$//g"`
PRGNAM=lives
DESCARGA=${WEB}LiVES-$VERSION.tar.bz2
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 2
rm -rf $PRGNAM-$VERSION
tar xvjf LiVES-${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 {} \;

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 2

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --build=$ARCH-slackware-linux \

make
make install DESTDIR=$PKG

cd $PKG/usr/bin && rm -f lives && ln -s lives-exe lives
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 19-11-2014, 01:38 (Miércoles)
escritos updaters

python3
linux_stable

El primero no necesita explicacion ,simplemente instala python3

el segundo es para dar la opcion a quien lo quiera de subirse al kernel MAS NUEVO ESTABLE.

 ;D

mañana iso nueva  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 20-11-2014, 08:41 (Jueves)
USUARIONUEVO, creo que la última iso "wifislax-4.9-19112014.iso" ha subido mal al FTP, el tamaño no me cuadra (718MB contra 780MB de la anterior) y al intentar usarla da errores de módulos corruptos.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-11-2014, 10:22 (Jueves)
USUARIONUEVO, creo que la última iso "wifislax-4.9-19112014.iso" ha subido mal al FTP, el tamaño no me cuadra (718MB contra 780MB de la anterior) y al intentar usarla da errores de módulos corruptos.

Un saludo.

el ftp murió casi acabando ..y no me dejo entrar en el resto del dia para eliminar la iso incompleta.

se esta acabando de subir una ahora mismo.


PD: COMPLETADA LA SUBIDA

Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 21-11-2014, 22:28 (Viernes)
Tengo una propuesta.

Esto de los módulos está genial cuando se usa mucho el modo Live. Lo creas, lo copias y ale. El problema... Es que no todos tienen 999999Gb de RAM.

Mi idea, es detectar el espacio disponible en modo LiveUSB, y si no se supera ciertos MB, que el .xzm no se genere en el Escritorio sino en carpeta Modules y un enlace a esa Carpeta (scripts como metasploit, LibreOffice, Kernel, ...)

NOTA: O algo similar, pero pudiendo crear el módulo sin que pete la memoria

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-11-2014, 02:44 (Sábado)
Tengo una propuesta.

Esto de los módulos está genial cuando se usa mucho el modo Live. Lo creas, lo copias y ale. El problema... Es que no todos tienen 999999Gb de RAM.

Mi idea, es detectar el espacio disponible en modo LiveUSB, y si no se supera ciertos MB, que el .xzm no se genere en el Escritorio sino en carpeta Modules y un enlace a esa Carpeta (scripts como metasploit, LibreOffice, Kernel, ...)

NOTA: O algo similar, pero pudiendo crear el módulo sin que pete la memoria

Salu2

Lo instalas al hdd y fin del problema.

Lo del modo live y lo ponga en la carpeta modules esta bien , pero ... no todos los usan desde pendrive.

Ademas , eso solo te libra de la creacion del xzm , ... y tampoco ... los sistemas de archivos FAT /NTFS ,  no soportan enlaces simbolicos ... solo generaras basura  ;D


cuando el install haga  DESTDIR ... vas a perder todos los simbolicos.

asi que o arrncas en PAE , o instalas a disco duro.


La ides de los scripts es que el instalarlo tenga algo mas de sentido , al poder ampliarlo y mantener tu mismo el sistema.

Si luego aprovechas los xzm , en un pendrive pues mejor aun ..o los compartes , o lo que sea.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-11-2014, 02:46 (Sábado)
El de kernel , en modo live no se deja ejecutar ... por ejemplo.

el libreoffice creo que ocupa 300/400 megas  
metasploit lo mismo
xampp



si no puedes generarlos a la vez, pues simplemente genera de uno en uno ... y ves sacando los xzm a otra ruta para recuperar espacio.


la mayoria de modulos ocupan entre 1 y50 megas  ... mas 250 de sistema ...  eso nos deja que cualquier sistema con 512 de ram , puede generar casi todos los modulos , lo que no puedes es ir con un ordenador de juguete y ejecutar los updaters de kernel , metasploit y libreoffice a la vez.
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 22-11-2014, 09:45 (Sábado)
Es que yo no puedo ni con metasploit, ni con LibreOffice. Y hacer esos 2 a la vez... NI LOCO jajajaja (al menos desde mi netbook)

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 22-11-2014, 18:08 (Sábado)
Es que yo no puedo ni con metasploit, ni con LibreOffice. Y hacer esos 2 a la vez... NI LOCO jajajaja (al menos desde mi netbook)

Salu2

Entonces tendrás que esperar que alguien los publique.

LibreOffice-4.3.4-x86-1sw.xzm 161.5 MB
https://mega.co.nz/#!MldXAQjT!FhATwK1uEtsVZ7JCU4HWahH7OivD3pVhWjHCkkevQ7I (https://mega.co.nz/#!MldXAQjT!FhATwK1uEtsVZ7JCU4HWahH7OivD3pVhWjHCkkevQ7I)

LibreOffice-4.3.1-x86-1sw.xzm 159.9 MB
https://mega.co.nz/#!MldEVIST!jqa3zOjFCgRmSwbnBpb-LLIGoDzmoUvKPcHeVVScyJ0 (https://mega.co.nz/#!MldEVIST!jqa3zOjFCgRmSwbnBpb-LLIGoDzmoUvKPcHeVVScyJ0)

metasploit (https://mega.co.nz/#F!J5skxDhY!4wgl2JB3JmwHiVHrxcMnIQ)
https://mega.co.nz/#F!J5skxDhY!4wgl2JB3JmwHiVHrxcMnIQ

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 22-11-2014, 22:31 (Sábado)
angry ip scanner  .... que por cierto , hay version nueva, si quereis actualizarlo este sirve para wifislax-4.9 o 4.10

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141122

############################################################
## 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() {
WEB=http://sourceforge.net/projects/ipscan/files/
VERSION=`curl -s $WEB | grep binary | head -1 | cut -d "/" -f8 | sed "s/ //g"`
PRGNAM=Angry_ip_scanner
RAMA=`echo $VERSION | cut -d "." -f1`
DESCARGA=${WEB}ipscan$RAMA-binary/$VERSION/ipscan-linux-$VERSION.jar
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/usr/share/{applications/wifislax/Redes,pixmaps} $PKG/usr/{bin,lib/ipscan/}
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
mv -f ipscan-linux-$VERSION.jar $PKG/usr/lib/ipscan/

echo "#!/bin/sh
java -jar /usr/lib/ipscan/ipscan-linux-$VERSION.jar" > $PKG/usr/bin/ipscan
chmod 777 $PKG/usr/bin/ipscan

# Creamos icono
echo "
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
" | base64 -d > $PKG/usr/share/pixmaps/ipscan.png

# Creamos entrada a menu
echo "[Desktop Entry]
Encoding=UTF-8
Name=Angry IP Scanner
Comment=Fast and friendly network scanner
GenericName=Fast and friendly network scanner
Exec=ipscan
Terminal=false
Type=Application
Icon=ipscan
Categories=Redes;
StartupWMClass=Angry IP Scanner
StartupNotify=true" > $PKG/usr/share/applications/wifislax/Redes/ipscan.desktop
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 24-11-2014, 22:53 (Lunes)
Error teamviewer con la iso del dia 20:

(http://i.imgur.com/jPXn8OF.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-11-2014, 05:33 (Martes)
Error teamviewer con la iso del dia 20:

(http://i.imgur.com/jPXn8OF.png)

si , el caso es que me salio ya una vez , y ahora en toda la noche no me ha funcionado ni una...

voy a reescribir el updater y usare el .tar.gz , que lo he probado y no me dio problemas de nada, ademas funciona sin daemon ni nada extra ... solo hay que reescribir ,pero creo es poco ...  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-11-2014, 23:59 (Martes)
Casi me vuelvo loco jodder con el error de las narices ....


Lo he reescrito , ahora usamos el .tar.gz
Código: [Seleccionar]
#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141125

############################################################
## 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=teamviewer
WEB=http://download.teamviewer.com/download/teamviewer_linux.tar.gz
VERSION=$(curl -s http://www.teamviewer.com/es/download/linux.aspx | grep _ctl2_Version | head -1 | cut -d "v" -f2 | cut -d '<' -f-1)
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/opt $PKG/usr/share/{applications,pixmaps}
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 1
tar xvf teamviewer_linux.tar.gz -C $PKG/opt

# Copiamos desktop & icono
cp -rf $PKG/opt/teamviewer9/tv_bin/desktop/teamviewer.png $PKG/usr/share/pixmaps/teamviewer.png
cp -rf $PKG/opt/teamviewer9/tv_bin/desktop/*.desktop $PKG/usr/share/applications/teamviewer.desktop

if [ -f /etc/rc.d/rc.teamviewerd ]; then
/etc/rc.d/rc.teamviewerd stop &>/dev/null
fi

# Creamos un profile
echo "
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
PvLy759///z7598///6Bn/8PkUuttQBcBgA=
" | base64 -d > $PKG/opt/teamviewer9/tv_bin/profile.tar.gz

tar xvf $PKG/opt/teamviewer9/tv_bin/profile.tar.gz -C $PKG/opt/teamviewer9
rm -rf $PKG/opt/teamviewer9/tv_bin/profile.tar.gz

# Generamos el servicio ...
mkdir -p $PKG/etc/rc.d
cat > rc.teamviewerd << "EOF"
#!/bin/sh
#
# /etc/rc.d/rc.teamviewerd

teamviewerd_start() {
  if [ -x /opt/teamviewer9/tv_bin/teamviewerd ]; then
    echo "Starting TeamViewer Daemon"
    /opt/teamviewer9/tv_bin/teamviewerd --daemon start
  fi
}

teamviewerd_stop() {
    echo "Terminating TeamViewer Daemon"
  killall teamviewerd
}

teamviewerd_restart() {
  teamviewerd_stop
  sleep 2
  teamviewerd_start
}

case "$1" in
'start')
  teamviewerd_start
  ;;
'stop')
  teamviewerd_stop
  ;;
'restart')
  teamviewerd_restart
  ;;
*)
  echo "usage $0 start|stop|restart"
esac
EOF
mv rc.teamviewerd $PKG/etc/rc.d
chmod 777 $PKG/etc/rc.d/rc.teamviewerd
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#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
# Iniciamos el servicio para que sea usable en el acto
F_servicio
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-11-2014, 07:07 (Miércoles)
Algo que dije un dia, que era interesante..y al final se me paso ..  pero me he acordado   >:(

Cuando funciones.sh se ejecute  (esto es a cada updater que lanzamos)

Liberara toda la memoria cacheeeeeeeeeeeeeeeeeee  esto es imprescindibleeeeee sobretodo en modo livecd


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

# Script by www.seguridadwireless.net

FUNCIONES_VERSION=20141126

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
#PRGNAM=funciones
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)

# variable que restara un nucleo para reservarlo al sistema si hay mas de 2
if [ $NUCLEOS -gt 2 ]; then
let NUCLEOS=$NUCLEOS-1
fi

# Vamos a liberar toda la memoria cache
sync && echo 3 > /proc/sys/vm/drop_caches

# Eliminamos posibles ficheros viejos de modificaciones de scripts
rm -rf /opt/wifislax-updaters/*/*~ &>/dev/null

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
clear
sleep 0.1 | echo ""
sleep 0.1 | echo ""
sleep 0.1 | echo "$BLANCO"  "       ******************************"   
sleep 0.1 | echo "$VERDE"   "          Actualizador/Instalador    "   
sleep 0.1 | echo "$VERDE"   "          Paquete: "$AMARILLO"$PRGNAM"                                                 
sleep 0.1 | echo "$VERDE"   "                                   "
sleep 0.1 | echo "$VERDE"   "          www.seguridadwireless.net  "
sleep 0.1 | echo "$BLANCO"  "       ******************************"
sleep 0.1 | echo "$CERRAR"
sleep 1
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "No tengo internet ... el script se cerrara."
      echo ""
      sleep 1
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)
   SERVIDOR_VERSION=$(timeout -s SIGTERM 10 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 1
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
   if [ $PRGNAM = aircrack-ng ]; then
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]* | awk '{print $3}' | sed "s/$PRGNAM-//g" | cut -d- -f-3)
   else
      INSTALADA=$(grep -r -i "package name" /var/log/packages/$PRGNAM-[0-9]*-* | awk '{print $3}' | sed "s/$PRGNAM//g" | cut -d- -f2)
   fi
      echo ""
      echo ""$AMARILLO"La version del sistema es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 1
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas nueva en su pagina web es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
}

f_backup(){
   echo ""
   echo "$AMARILLO"Guardando backup de la version del sistema..."$CIERRE"
   echo ""
   sleep 2
   echo "$AMARILLO"Si necesitaras reutilizarla solo cambia la extension .backup por .xzm"$CIERRE"
   sleep 2
   log2xzm /var/log/packages/$PRGNAM-$INSTALADA* $HOME/xzm_backups/$PRGNAM-$INSTALADA.backup
   echo ""
   echo "$AMARILLO"El paquete del sistema fue salvado en $HOME/xzm_backups/$PRGNAM-$INSTALADA*.backup"$CIERRE"
   sleep 3
}

# Elimina una version anterior
f_eliminaVersion() {

   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   
   if [ ! -d /mnt/live/memory/changes ]; then
   if [ ! -d $HOME/xzm_backups ]; then
   mkdir -p $HOME/xzm_backups
   fi
   echo "1 - "$VERDE"Crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo "2 - "$ROJO"No crear backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE""
   echo ""
   read -p " #> " CHOISE
   echo ""
    case $CHOISE in
      1 ) f_backup;;
      2 ) echo ""$CYAN"Continuamos sin hacer backup de "$AMARILLO""$PRGNAM-$INSTALADA""$CIERRE"";;
    esac
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   TMP=${TMP:-/tmp/build/$PRGNAM}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Hace strip al paquete
f_strip() {
   cd $PKG
   stripdir $PKG 2>/dev/null
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() { 
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   
# Guardamos los modulos en carpetas por categoria
   cd ..
   CATEGORIA=`echo $CWD | cut -d "/" -f4`
   if [ ! -d $HOME/Desktop/$CATEGORIA ]; then
   mkdir -p $HOME/Desktop/$CATEGORIA
   fi

#Para sigram nos basamos en el log. Para el resto siempre es igual
if [ $PRGNAM = sigram ]; then
cleandir $PKG
log2xzm $TMP/sigram.log $HOME/Desktop/$CATEGORIA/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$CATEGORIA/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm /
else
cleandir $PKG
dir2xzm $PKG $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   fi
# Iniciar algun servicio si existe
   if [ -f $PKG/etc/rc.d/rc.teamviewerd ]; then
   /etc/rc.d/rc.teamviewerd start &>/dev/null
   fi
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   if [ $PRGNAM = firefox ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/008-Firefox-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
      if [ $PRGNAM = firefox_multi ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM2-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/008-Firefox_$LANGUAGE-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   
   if [ $PRGNAM = metasploit ]; then
       /etc/rc.d/rc.metasploit start &> /dev/null
   fi
   if [ -x /usr/bin/update-desktop-database ]; then
       /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
       /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
   if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
   fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
       /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 1
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 1
# Liberamos memoria
   sync && echo 3 > /proc/sys/vm/drop_caches
# Salimos del script
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-11-2014, 07:09 (Miércoles)
mirando el code ... veo que ya lo puse ...al final del script ...

mas vale que sobre ...  ;D

si lanzamos mas de un script , puede ser la diferencia entre agotar toda la memoria ..o acabar las tareas.


asi pues liberamos al empezar y al acabar.  ;D ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-11-2014, 08:19 (Jueves)
el teamviewer NO ESTABA REPARADO

era la funcion de stripar el modulo....NO HAY QUE METER ESA FUNCION A ESTE PAQUETE.

ahora ya va.

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141127

############################################################
## 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=teamviewer
WEB=http://download.teamviewer.com/download/teamviewer_linux.tar.gz
VERSION=$(curl -s http://www.teamviewer.com/es/download/linux.aspx | grep _ctl2_Version | head -1 | cut -d "v" -f2 | cut -d '<' -f-1)
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/opt $PKG/usr/share/{applications,pixmaps}
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 1
tar xvf teamviewer_linux.tar.gz -C $PKG/opt

# Copiamos desktop & icono
cp -rf $PKG/opt/teamviewer9/tv_bin/desktop/teamviewer.png $PKG/usr/share/pixmaps/teamviewer.png
cp -rf $PKG/opt/teamviewer9/tv_bin/desktop/*.desktop $PKG/usr/share/applications/teamviewer.desktop

rm -rf /opt/teamviewer*
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#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
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-12-2014, 23:22 (Lunes)
Este mensjae me lleva frito ...

se produce cuando ejecutas uno de los updaters por segunda vez.



find: paths must precede expression: linux_updater
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
Título: Re: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 02-12-2014, 08:06 (Martes)
Este mensjae me lleva frito ...

se produce cuando ejecutas uno de los updaters por segunda vez.



find: paths must precede expression: linux_updater
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
Hoy lo miro

Nota: cuando instalas LibreOffice, no asocia las extensiones. Es decir, tengo que elegir manualmente con que abrir un .odt

Salu2
Título: Re: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 08-12-2014, 21:22 (Lunes)
Este mensjae me lleva frito ...

se produce cuando ejecutas uno de los updaters por segunda vez.



find: paths must precede expression: linux_updater
Usage: find [-H] [-L] [-P] [-Olevel] [-D help|tree|search|stat|rates|opt|exec] [path...] [expression]
Hoy lo miro

Nota: cuando instalas LibreOffice, no asocia las extensiones. Es decir, tengo que elegir manualmente con que abrir un .odt

Salu2

¿a que aplicacion debe ir asociada la extension odt?   ..para dejarlo por defecto.

______________________________________________________________________________________

Con tu permiso , añado al script updater de updaters , ..la funcion de que si el ftp no responde en 5 segundos, el script avisa y se cierra. .. para que no se quede colgado esperando.


# Si el ftp no responde al ping , salimos del script
F_ping() {
if [ ! "$(ping -w 5 -c1 downloadwireless.net 2>/dev/null)" ]; then
echo "$ROJO"
echo "Parece que el ftp no responde,intentalo mas tarde."
echo "$CIERRE"
sleep 3
exit 0
fi
}



________________________________________________________________________________________

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

# Script for www.seguridadwireless.net by vk496

SCRIPT_VERSION=20141208

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Si el ftp no responde al ping , salimos del script
F_ping() {
if [ ! "$(ping -w 5 -c1 downloadwireless.net 2>/dev/null)" ]; then
echo "$ROJO"
echo "Parece que el ftp no responde,intentalo mas tarde."
echo "$CIERRE"
sleep 3
exit 0
fi
}

# Definicion de variables
F_variables() {
   WEB="http://downloadwireless.net"
   ELDIRECTORIO="wifislax-updaters"
   PRGNAM=wifislax-updaters
   DIRECTORIOHTML="?dir=$ELDIRECTORIO"
   VERSION=`echo $(date +"%Y%m%d")`
   CREAR_MODULO=NO
}

#Creamos directorios extra
F_extradirs(){
mkdir -p $PKG $PKG/usr/share/applications/wifislax/Actualizadores
}

# Directorios de trabajo y actualizar
F_actualizar(){

#Creamos la carpeta donde van a estar los scripts
if [ ! -d $PKG/opt/$ELDIRECTORIO ]; then
   mkdir -p $PKG/opt/$ELDIRECTORIO
fi

echo
#Contador de todos los scripts
contador=0

carpetas="$(curl -s $WEB/$DIRECTORIOHTML | grep "item dir" | sed 's/<[^>]\+>//g')"
#Obtenemos la carpeta del server, y la usamos como carpeta local
for carpeta in $carpetas; do
   archivos="$(curl -s $WEB/$DIRECTORIOHTML/$carpeta | grep "item file" | sed 's/<[^>]\+>//g' | sed 's/^[[:space:]]*//g' | grep -vE *~$)"
   #Obtenemos el archivo del server, y lo usamos como archivo local
   for archivo in $archivos; do
      let contador=$contador+1
      echo -n "${CYAN}Buscando $archivo... $CIERRE"
        
         #Comprobamos si ya existe ese script
         if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then
            #Si se trata de funciones.sh, usamos variables distintas al habitual, si no,
            if [ ${archivo} == "funciones_updater" ]; then
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
            else
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
            fi
         echo -n "${VERDE}EXISTE$CIERRE"
         #Ademas de mirar si existe, comprobamos si existe version mas nueva a la que tenemos nosotros
         if [[ $LOCAL_VERSION -lt $WEB_VERSION ]]; then
            CREAR_MODULO=SI
            if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
               mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
            fi
            curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
            echo " + ${AMARILLO}ACTUALIZADO $ROSA(${WEB_VERSION:6}/${WEB_VERSION:4:2}/${WEB_VERSION:0:4})$CIERRE"
            chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
         else
            echo -e " $BLANCO(${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4})$CIERRE"
         fi
      #Si no existe ese escript en nuestro sistema, procedemos a descargarlo
      else
         CREAR_MODULO=SI
         if [ ! -d $PKG/opt/$ELDIRECTORIO/$carpeta ]; then
            mkdir -p $PKG/opt/$ELDIRECTORIO/$carpeta/
         fi
         curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo -o $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
         LOCAL_VERSION=$(cat $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
         chmod +x $PKG/opt/$ELDIRECTORIO/$carpeta/$archivo
         echo "${ROJO}DESCARGADO$CIERRE $BLANCO($ROSA${LOCAL_VERSION:6}/${LOCAL_VERSION:4:2}/${LOCAL_VERSION:0:4}$BLANCO)$CIERRE"
         PRGNAM_CORTO=${archivo%_updater}
         mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores/$carpeta
#Creamos el desktop del menu
echo "[Desktop Entry]
Categories=$carpeta;
Exec=sh -c \"/opt/wifislax-updaters/$carpeta/$archivo;${SHELL:-bash}\"
Icon=updaters
MimeType=
Name=$PRGNAM_CORTO
Path=/opt/wifislax-updaters/$carpeta/
Terminal=true
TerminalOptions=
Type=Application">$PKG/usr/share/applications/wifislax/Actualizadores/$carpeta/$PRGNAM_CORTO.desktop

      fi

   done

done

sleep 2
echo
}

# Crear estructura
F_estructura(){
if [ $CREAR_MODULO = SI ]; then
  
   echo -n ${CYAN}Creando logs e instalando....$CIERRE
   echo -ne "${CYAN} $ROJO$contador${CYAN} scripts$CIERRE"
   sleep 3

   mkdir -p $PKG/usr/share/applications/wifislax/Actualizadores $PKG/opt/wifislax-updaters
   cp -Ru /usr/share/applications/wifislax/Actualizadores/ $PKG/usr/share/applications/wifislax/
   cp -Ru /opt/wifislax-updaters/ $PKG/opt/
  
if [ -d $PKG/usr/share/applications/wifislax/Actualizadores/Funciones ]; then
   rm -rf $PKG/usr/share/applications/wifislax/Actualizadores/Funciones
fi
fi
}

F_final(){
if [ $CREAR_MODULO = SI ]; then
f_tareasFinales
else
echo $VERDE
echo No hay actualizaciones para los updaters
sleep 3
echo
echo Bye Bye
echo $CIERRE
fi
}

###################################
## 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
#Si el ftp no responde al ping , salimos del script
F_ping
#Creamos directorios extra
F_extradirs
#Comprobamos updates del script
f_comprobarUpdates
#Asignamos o detectamos arquitectura
f_arquitectura noarch
# Directorios de trabajo y actualizar
F_actualizar
# Crear estructura
F_estructura
#Creamos xzm , instalamos y salimos
F_final
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 19-12-2014, 21:37 (Viernes)
No estaría mal, en el menu de los updaters, poner una breve descripción, para saber para que sirve cada cosa..

Por ejemplo estoy buscando algo para editar un archivo de audio, y seguro que lo hay, pero viendo los nombres de los updaters (mixxx, livex, gpodder, etc...), como que no son muy descriptivos, y no se para que sirve cada uno.

Podría ponerme a instalarlo todo hasta que de con un editor de audio, pero no me parece nada práctico...  >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 19-12-2014, 22:50 (Viernes)
No estaría mal, en el menu de los updaters, poner una breve descripción, para saber para que sirve cada cosa..

Por ejemplo estoy buscando algo para editar un archivo de audio, y seguro que lo hay, pero viendo los nombres de los updaters (mixxx, livex, gpodder, etc...), como que no son muy descriptivos, y no se para que sirve cada uno.

Podría ponerme a instalarlo todo hasta que de con un editor de audio, pero no me parece nada práctico...  >:D

audacity  ;D

lo se , paciencia ... no lo puse antes por que en xfce no lo muestra ...hay que meterlo directamente en el mismo campo de NAME=

xfce solo muestra o name o genericname , no las dos cosas como hace kde.

ademas de que queria meterlos en mini categorias , como creo que ya comente..

multimedia -->> editores audio/video
multimedia -->> reproductores
multimedia -->> organizadores
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 19-12-2014, 22:56 (Viernes)
Ok, gracias  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 20-12-2014, 00:26 (Sábado)
No estaría mal, en el menu de los updaters, poner una breve descripción, para saber para que sirve cada cosa..

Por ejemplo estoy buscando algo para editar un archivo de audio, y seguro que lo hay, pero viendo los nombres de los updaters (mixxx, livex, gpodder, etc...), como que no son muy descriptivos, y no se para que sirve cada uno.

Podría ponerme a instalarlo todo hasta que de con un editor de audio, pero no me parece nada práctico...  >:D
para editar audio te recomiendo muse
https://mega.co.nz/#!iFBiQACQ!UgTO40nZV3eAuntpUbu4AOfeTvndRMAFUCDHQ5h76pg
el modulo lo hice yo para la 4.9 y lo he probado en la 4.10 y funciona bien.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-12-2014, 00:29 (Sábado)
No estaría mal, en el menu de los updaters, poner una breve descripción, para saber para que sirve cada cosa..

Por ejemplo estoy buscando algo para editar un archivo de audio, y seguro que lo hay, pero viendo los nombres de los updaters (mixxx, livex, gpodder, etc...), como que no son muy descriptivos, y no se para que sirve cada uno.

Podría ponerme a instalarlo todo hasta que de con un editor de audio, pero no me parece nada práctico...  >:D
para editar audio te recomiendo muse
https://mega.co.nz/#!iFBiQACQ!UgTO40nZV3eAuntpUbu4AOfeTvndRMAFUCDHQ5h76pg
el modulo lo hice yo para la 4.9 y lo he probado en la 4.10 y funciona bien.

el caso es que tenia un updater para muse , pero con tantos cambios y tal en el sistema de updaters al final lo perdi.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 20-12-2014, 02:29 (Sábado)
Mi relacción con audacity no comienza con buen pie...

(http://i.imgur.com/luOs5k1.png)

¿No aceptas mi archivo de audio porque es negro...? voy a probar mouse a ver si no es tan racista  :P
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 20-12-2014, 02:30 (Sábado)
Mi relacción con audacity no comienza con buen pie...

(http://i.imgur.com/luOs5k1.png)

¿No aceptas mi archivo de audio porque es negro...? voy a probar mouse a ver si no es tan racista  :P
Audacity tiene 2 o 3 plugins que hay que meterle para que coja todos los formatos

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-12-2014, 02:46 (Sábado)
Puede que sea algo de configuracion extra, por que segun su pagina con libav o ffmpeg se tiene soporte para un monton de formatos de sonido , incluido m4a , ac3 ..bla bla bla.

voy a bajarme un fichero m4a ,  a ver si indago un poco sobre esto.

a gemenis le tienen mania todos los programas, ...  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 20-12-2014, 02:46 (Sábado)
Muse tampoco me cae bien..

(http://i.imgur.com/iecFGUt.png)

Voy a buscar los plugins esos de audacity..
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 20-12-2014, 02:49 (Sábado)
Puede que sea algo de configuracion extra, por que segun su pagina con libav o ffmpeg se tiene soporte para un monton de formatos de sonido , incluido m4a , ac3 ..bla bla bla.

voy a bajarme un fichero m4a ,  a ver si indago un poco sobre esto.

a gemenis le tienen mania todos los programas, ...  ;D

Este es el que quiero editar: https://mega.co.nz/#!98JygJrL!YTUv--JX6hTVIaC97wo2YfoCs2K5c7a6IKwoGrO2kCc (https://mega.co.nz/#!98JygJrL!YTUv--JX6hTVIaC97wo2YfoCs2K5c7a6IKwoGrO2kCc)

Quiero que empieze cuando dice: Hey! My name is pim pim pim!!! pa ponermelo de tono del movil  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-12-2014, 02:51 (Sábado)
va a ser la configuracion de audacity ....

Código: [Seleccionar]
do_soundtouch="out" ; [ "${SOUNDTOUCH:-no}" != "no" ] && do_soundtouch=""
do_twolame="out"    ; [ "${TWOLAME:-no}" != "no" ]    && do_twolame=""
do_vamp="out"       ; [ "${VAMP:-no}" != "no" ]       && do_vamp=""
do_ffmpeg="out"     ; [ "${FFMPEG:-no}" != "no" ]     && do_ffmpeg=""


donde no deberia ser yes, ya que encima tenemos las 4 librerias .... :P

eso si , falta ver si no da error ,al activar todo eso.

pero el fallo es ese  ...100x100
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-12-2014, 02:53 (Sábado)
si activamos ffmpeg seguramente nos va a dar error, ........ no lo he probado , pero veo que los chicos de archlinux parchean ..asi que ...


lo miro y arreglo...

con el vamp , creo que se da soporte a vst ...HAY QUE ACTIVARLOS TODOSSSSS....     ;D ;D ;D ;D ;D ;D ;D ;D ;D ;D



https://projects.archlinux.org/svntogit/packages.git/tree/trunk?h=packages/audacity
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 20-12-2014, 05:51 (Sábado)
juas , me ha costado varias horas , pero ya tengo audacity  A FULL

con soporte para TODO

al final ffmpeg era mas facil de solventar que usando parches ...al final no eran necesarios, es mucho mejor asi.


solo comentar que antes de que nadie diga "me sale un error de dispositivo de sonido"  ,,,,  mirad el recuadro rojo de la foto , es un desplegable, debereis elegir cual es el dispositivo de reproduccion , (el mismo que aparece donde la casilla de microfono) ... esto ocurre en ordenadores donde hay varias formas de conexion ...como pueden ser jack o hdmi.

lo configurais y ya queda para siempre ....   tiempo estimado 3 segundos  ;D

(http://fotos.subefotos.com/2111fc9bc8f6a0ee1ba0bb1e07d71cf3o.png)




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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141220

############################################################
## 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() {
WEB=www.fosshub.com/Audacity.html/
VERSION=`curl -s $WEB | grep .xz | head -1 | cut -d "-" -f4 | sed 's/.tar.xz"//g' | sed "s/ //g"`
PRGNAM=audacity
DESCARGA=http://sourceforge.net/projects/audacity/files/audacity/$VERSION/$PRGNAM-minsrc-$VERSION.tar.xz
}

# Comprobar dependencias
F_dependencias(){
if [ -f /usr/bin/wx-config ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"wxPython"$CIERRE: $EXIST"
if [ ! -f /usr/bin/wx-config ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 3
exit 0
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
fi
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-minsrc-$VERSION.tar.xz
cd $PRGNAM-src-$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 {} \;

# Fix vamp plugin search path on x86_64 - thanks to B. Watson
sed -i "s,lib/vamp,lib$LIBDIRSUFFIX/vamp,g" \
       lib-src/libvamp/src/vamp-hostsdk/PluginHostAdapter.cpp
       
# Renombramos temporalmente este fichero y al acabar lo devolvemos
if [ -f /usr/lib/libvamp-hostsdk.la ]; then
mv -f /usr/lib/libvamp-hostsdk.la /usr/lib/libvamp-hostsdk.la.RENOMBRADO
fi
 
# Configuramos paquete
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --disable-dynamic-loading \
  --with-libvamp \
  --enable-unicode \
  --enable-nyquist \
  --enable-vamp \
  --with-expat \
  --with-libvorbis \
  --with-libmad \
  --with-libflac \
  --with-libsndfile \
  --with-libid3tag \
  --with-libresample \
  --with-ffmpeg \
  --with-soundtouch \
  --with-libtwolame

make -j$NUCLEOS
make install DESTDIR=$PKG

# Devolvemos el fichero renombrado anteriormente
if [ -f /usr/lib/libvamp-hostsdk.la.RENOMBRADO ]; then
mv -f /usr/lib/libvamp-hostsdk.la.RENOMBRADO /usr/lib/libvamp-hostsdk.la
fi
}

###################################
## 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
# Comprobar dependencias
F_dependencias
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 20-12-2014, 12:50 (Sábado)
yeeeahh ahora si  >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-12-2014, 00:46 (Domingo)
Una ayudita  ;D


quiero meter el notificador de actualizaciones , como si fuese parte de los updaters ...para que se pueda tambien autoactualizar.


estoy mirando el fichero  updater_updates  ...

donde antes

Código: [Seleccionar]
         #Comprobamos si ya existe ese script
         if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then       
            #Si se trata de funciones.sh, usamos variables distintas al habitual, si no,
            if [ ${archivo} == "funciones_updater" ]; then
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
            else
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
            fi


he añadido al final , los parametros ,pero con otro if/fi   ..y no se si podria ahorramelo con otro "else" 


         #Comprobamos si ya existe ese script
         if [ -f /opt/$ELDIRECTORIO/$carpeta/$archivo ]; then       
            #Si se trata de funciones.sh, usamos variables distintas al habitual, si no,
            if [ ${archivo} == "funciones_updater" ]; then
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "FUNCIONES_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "FUNCIONES_VERSION=" | head -1 |cut -d "=" -f2)
            else
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "SCRIPT_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)
            fi
         #Si se trata de notify_updates, usamos variables distintas al habitual, si no,
            if [ ${archivo} == "notify_updates" ]; then
               LOCAL_VERSION=$(cat /opt/$ELDIRECTORIO/$carpeta/$archivo | grep -m1 "NOTIFY_VERSION=" | cut -d "=" -f2)
               WEB_VERSION=$(curl -s $WEB/$ELDIRECTORIO/$carpeta/$archivo | iconv -f windows-1251 | head -5 | grep "NOTIFY_VERSION=" | head -1 |cut -d "=" -f2)
            fi
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-12-2014, 00:58 (Domingo)
nada , dejarlo estar .... no puede ser , por que si añado nuevas entradas , faltanliar los iconos ... :-\

me tengo que inventar algo ...  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 00:27 (Jueves)
Bueno , estoy aprovechando estos dias de calma , para mejorar el tema de organizacion en los menus , empezando por lo que comento geminis ...


aunque la cosa no va a quedar hay , los dividire en subcategorias del mismo tipo


multimedia -->> editores de video
multimedia -->> editores de audio


vamos, que al entrar a multimedia se habran submenus para dividirlos por categorias ...

de momento solo he añadido una breve descripcion ... ;)

(http://fotos.subefotos.com/78a696d4f0c251adbac5912b99b3efddo.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 02:29 (Jueves)
integracion en kde

(http://fotos.subefotos.com/f4332b2055cbea8ac6c5c1d5681f0267o.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 03:56 (Jueves)
Os edjo un regalito  ;)

el siguiente modulo contiene

1 - los scripts updaters actualizados
2 - iconos nuevos para updaters multimedia
3 - subcategorias para updaters multimedia
4 - entradas de menu updatres multimedia con mas informacion de cada programa
5 - entradas de menu para xfce y kde

http://www.mediafire.com/download/g6x3d9b3rqwgdcb/updaters-25-12-2014.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 06:43 (Jueves)
Dejo un updater para muse , la version esta fijada por que ponen muchas veces versiones beta , y no es plan.

Baja he instala la ultima estable , he hecho un invento al final del script ,para solventar lo del demonio de jackd  ;D


El programa me ha defraudado MUCHO , solo admite audio WAV , OGG y FLAC ..olvidarse de editar mp3 ,mp4 ,m4a , ni nada por el estilo ... :( :P

creo que audacity le da mil vueltas , pero para gustos colores.


__________________________________________________________________________________________________________________


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141225

############################################################
## 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() {
WEB=http://sourceforge.net/projects/lmuse/files/
VERSION=`curl -s $WEB | grep /latest | head -1 | cut -d "-" -f3| cut -d "t" -f-1 | sed 's/.$//g'`
RAMA=`echo $VERSION | cut -d "." -f-2 | sed 's/ //g'`
PRGNAM=muse
DESCARGA=http://sourceforge.net/projects/lmuse/files/$PRGNAM-$RAMA/$PRGNAM-$VERSION.tar.gz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DESCARGA
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.gz
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 {} \;

mkdir -p build
cd build
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DLIB_SUFFIX=${LIBDIRSUFFIX} \
    -DENABLE_PYTHON:STRING="ON" \
    -DCMAKE_BUILD_TYPE=Release .. \
    -DCMAKE_ENABLE_VST_VESTIGE=1 \
    -DCMAKE_ENABLE_VST_NATIVE=1 \
    -DENABLE_PYTHON=1 \
    -DENABLE_FLUID=1 \
    -DENABLE_DSSI=1 \
    -DENABLE_LASH=1 \
    -DENABLE_OSC=1 ..
  make
  make install DESTDIR=$PKG
cd ..

# Arreglo para demonio jackd
BINARIO=`grep -r Exec $PKG/usr/share/applications/muse.desktop | cut -d '=' -f2`
sed -i "s/Exec=$BINARIO/Exec=muse_starter/g" $PKG/usr/share/applications/muse.desktop
echo "#!/bin/bash
setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd
$BINARIO" > $PKG/usr/bin/muse_starter
chmod 777 $PKG/usr/bin/muse_starter
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 09:35 (Jueves)
Al final lo hice para que si mire la ultima version , ya que como ultima solo aparecen las estables ...o eso parece.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 10:09 (Jueves)
nicotine+_updater

programa p2p para la red soulseek

La version esta fijada ,por que el code no se mueve desde hace 4 años ... ;D


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141225

############################################################
## 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() {
WEB=http://neutrino.lt/download/slackware/source/nicotine+-20130813_037e16c.tar.xz
VERSION=20130813_037e16c
PRGNAM=nicotine+
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.xz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $WEB
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.xz
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 {} \;

python setup.py install --root=$PKG

( cd $PKG/usr/bin ; ln -sf nicotine.py nicotine )

sed -i 's/Icon=nicotine-plus/Icon=nicotine-plus-96px/' \
  $PKG/usr/share/applications/nicotine.desktop
rm -f $PKG/usr/share/pixmaps/*
cp -a files/nicotine-plus-96px.png $PKG/usr/share/pixmaps
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 25-12-2014, 11:18 (Jueves)
Os edjo un regalito  ;)

el siguiente modulo contiene

1 - los scripts updaters actualizados
2 - iconos nuevos para updaters multimedia
3 - subcategorias para updaters multimedia
4 - entradas de menu updatres multimedia con mas informacion de cada programa
5 - entradas de menu para xfce y kde

http://www.mediafire.com/download/g6x3d9b3rqwgdcb/updaters-25-12-2014.xzm
en este modulo esta tambien el update del audacity full?voy a probar detenidamente,el muse tambien me esta dando quebraderos de cabeza.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-12-2014, 20:43 (Jueves)
Os edjo un regalito  ;)

el siguiente modulo contiene

1 - los scripts updaters actualizados
2 - iconos nuevos para updaters multimedia
3 - subcategorias para updaters multimedia
4 - entradas de menu updatres multimedia con mas informacion de cada programa
5 - entradas de menu para xfce y kde

http://www.mediafire.com/download/g6x3d9b3rqwgdcb/updaters-25-12-2014.xzm
en este modulo esta tambien el update del audacity full?voy a probar detenidamente,el muse tambien me esta dando quebraderos de cabeza.

si , estan todos los scripts en sus versiones mas nuevas y actualizadas.

sobre muse , me parece incluso complejo de usar , para editar un simple fichero de audio , antes hay que crear una pista de audio y despues importar ....

por si no lo sabes lei , en el sitio de audacity que soporta los plugins vst , pero solo los de version 2 ,los de version 3 , creo que no.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 25-12-2014, 23:01 (Jueves)
Os edjo un regalito  ;)

el siguiente modulo contiene

1 - los scripts updaters actualizados
2 - iconos nuevos para updaters multimedia
3 - subcategorias para updaters multimedia
4 - entradas de menu updatres multimedia con mas informacion de cada programa
5 - entradas de menu para xfce y kde

http://www.mediafire.com/download/g6x3d9b3rqwgdcb/updaters-25-12-2014.xzm
en este modulo esta tambien el update del audacity full?voy a probar detenidamente,el muse tambien me esta dando quebraderos de cabeza.

si , estan todos los scripts en sus versiones mas nuevas y actualizadas.

sobre muse , me parece incluso complejo de usar , para editar un simple fichero de audio , antes hay que crear una pista de audio y despues importar ....

por si no lo sabes lei , en el sitio de audacity que soporta los plugins vst , pero solo los de version 2 ,los de version 3 , creo que no.
me sobra,todos los que tengo son vst2,son dll de windows y no se como audacity los arrancara sin wine,mañana que tengo tiempo probare a ver.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 26-12-2014, 11:13 (Viernes)
Dejo un updater para muse , la version esta fijada por que ponen muchas veces versiones beta , y no es plan.

Baja he instala la ultima estable , he hecho un invento al final del script ,para solventar lo del demonio de jackd  ;D


El programa me ha defraudado MUCHO , solo admite audio WAV , OGG y FLAC ..olvidarse de editar mp3 ,mp4 ,m4a , ni nada por el estilo ... :( :P

creo que audacity le da mil vueltas , pero para gustos colores.


__________________________________________________________________________________________________________________


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141225

############################################################
## 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() {
WEB=http://sourceforge.net/projects/lmuse/files/
VERSION=`curl -s $WEB | grep /latest | head -1 | cut -d "-" -f3| cut -d "t" -f-1 | sed 's/.$//g'`
RAMA=`echo $VERSION | cut -d "." -f-2 | sed 's/ //g'`
PRGNAM=muse
DESCARGA=http://sourceforge.net/projects/lmuse/files/$PRGNAM-$RAMA/$PRGNAM-$VERSION.tar.gz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DESCARGA
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.gz
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 {} \;

mkdir -p build
cd build
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DLIB_SUFFIX=${LIBDIRSUFFIX} \
    -DENABLE_PYTHON:STRING="ON" \
    -DCMAKE_BUILD_TYPE=Release .. \
    -DCMAKE_ENABLE_VST_VESTIGE=1 \
    -DCMAKE_ENABLE_VST_NATIVE=1 \
    -DENABLE_PYTHON=1 \
    -DENABLE_FLUID=1 \
    -DENABLE_DSSI=1 \
    -DENABLE_LASH=1 \
    -DENABLE_OSC=1 ..
  make
  make install DESTDIR=$PKG
cd ..

# Arreglo para demonio jackd
BINARIO=`grep -r Exec $PKG/usr/share/applications/muse.desktop | cut -d '=' -f2`
sed -i "s/Exec=$BINARIO/Exec=muse_starter/g" $PKG/usr/share/applications/muse.desktop
echo "#!/bin/bash
setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd
$BINARIO" > $PKG/usr/bin/muse_starter
chmod 777 $PKG/usr/bin/muse_starter
}

###################################
## 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

hay que poco sabeis de editores de audio DAW,el muse es el que le da mil patas,para hacer lo que ha hecho geminis cortar una pista audacity sobra,ahora,intenta meterle un efecto y mientras reproduces cambiar los valores de ese efecto a tiempo real :-\ :-\ audacity no te deja mientra muse si,insertar una pista midi,con muse si puedes,le metes un plugin de piano mismo y a componer de 0 con su editor midi,de todas formas ninguno de los 2 me deja cargar vsts de windows,seguire investigando el audacity  ;D ;D ;D ,lo de que muse no deja importar mp3 es casi normal,programas de windows como cubase,samplitude,reaper tampoco te dejan,yo cojo la pista mp3 y antes la convierto con ffmpeg -i pista.mp3 pista.wav y listo
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 29-12-2014, 00:05 (Lunes)
integracion en kde

(http://fotos.subefotos.com/f4332b2055cbea8ac6c5c1d5681f0267o.png)

La idea es muy buena.

Creo que la cosa se empieza a complicar para wifislax-updaters_updater. Si no me equivoco, habrá una estructura de varios niveles. Hay que mirar como poder adaptar (o cambiar) ese script para hacerlo lo mas dinámico posible, y adaptarlo a cualquier situación...

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 29-12-2014, 00:33 (Lunes)
para los scripts no ha cambiado absolutamente NADA.

son los ficheros .desktop  ... los que se ordenan en las categorias que le digas , ampliando el fichero de menu.

para el script es todo lo mismo ...misma ruta , mismo todo...

no existe

/opt/wifislax-updaters/multimedia/editores....../prg_updater


esta todo exactamente igual.

como digo , solo hay que mirar las categorias ... si no sabe cual es por que nio hay un desktop de referncia para leerlo , pues que ponga solo como hasta ahora...MULTIMEDIA , y ya esta...


eso , o crear una regla en el updater , para las categorias y poder añadir programas a cada una.


Editores-audio="audacity,muse"
Editores-video="....."


solo para los multimedia..










________________________________________________

Ho , ....   ;D

dentro de cada script de estos con subcategoria, algo asi como


CATEGORIA=...............
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 29-12-2014, 00:37 (Lunes)
ADELANTANDOME A TU RESPUESTA , CREO QUE LO MAS COMODO SERA A CADA UPDATER DE ESTOS  ...

ponerle dentro la categoria ...para que el updater la lea de los scripts una vez bajados y asi poder crear los  .desktops acorde.


Incluso tal vez , ... sea buena idea por un futuro , añadirselo a todos los updaters.


PD: AHORA MISMO EN EL FTP FALTAN LA MITAD O MAS DE UPDATERS POR QUE SE PETO EL FTP A MEDIAS DE SUBIR UNA NUEVA REMESA.....   FTP FUCK MY LIFE EVER.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 29-12-2014, 23:07 (Lunes)
Ok, entendido.

Eso facilita las cosas... Jajajaja

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-12-2014, 01:52 (Martes)
pulseaudio_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141230
CATEGORIA=Librerias

############################################################
## 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() {
WEB=http://freedesktop.org/software/pulseaudio/releases/
VERSION=`curl -s $WEB |grep -o "[0-9].*.tar.xz" |tail -1| cut -d '-' -f2|sed 's/.tar.xz//g'`
PRGNAM=pulseaudio
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.xz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 ${WEB}$PRGNAM-$VERSION.tar.xz
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.xz
cd $PRGNAM-$VERSION

sed -i -e '/@PA_BINARY@/ imkdir -p \$HOME/.config/pulse' src/daemon/start-pulseaudio-x11.in || exit 1
echo "X-MATE-Autostart-Phase=Initialization" >>src/daemon/pulseaudio.desktop.in || exit 1

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 {} \;

if pkg-config --exists orc-0.4 ; then
  ORC=yes
else
  ORC=no
fi

# Parcheamos
echo '--- src/Makefile.am.orig 2014-02-14 23:45:45.000000000 +1000
+++ src/Makefile.am 2014-10-26 21:59:33.220234317 +1000
@@ -19,6 +19,8 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA.
 
+.NOTPARALLEL:
+
 ###################################
 #       Extra directories         #
 ###################################
--- Makefile.am.orig 2014-01-24 04:57:55.000000000 +1000
+++ Makefile.am 2014-10-26 21:58:47.090622189 +1000
@@ -15,6 +15,8 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 # USA.
 
+.NOTPARALLEL:
+
 ACLOCAL_AMFLAGS = -I m4
 
 EXTRA_DIST = \' > 020_no-parallel-make.diff

patch -p0 < 020_no-parallel-make.diff || exit 1

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./bootstrap.sh \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --disable-tcpwrap \
  --enable-orc=${ORC} \
  --disable-static \
  --enable-hal-compat \
  --with-system-user=pulse \
  --with-system-group=pulse \
  --with-access-group=audio \
  --build=$ARCH-slackware-linux

make check || exit 1
make -j1 || exit 1
make install-strip DESTDIR=$PKG

for f in $( find $PKG/etc/pulse/ -type f ) ; do mv $f $f.new ; done

# Creamos el servicio
# No debe ser ejecutable ...es a demanda
mkdir -p $PKG/etc/rc.d

echo '#!/bin/sh

start()
{
  if /usr/bin/sudo -u pulse /usr/bin/pulseaudio --check; then
    echo "pulseaudio is running."
  else
    echo "Starting pulseaudio..."
    /usr/bin/sudo -u pulse /usr/bin/pulseaudio --start --use-pid-file=yes
  fi
}

stop()
{
  if /usr/bin/sudo -u pulse /usr/bin/pulseaudio --check; then
    printf "Stopping pulseaudio..."
    /usr/bin/sudo -u pulse /usr/bin/pulseaudio --kill
    while /usr/bin/sudo -u pulse /usr/bin/pulseaudio --check; do
      printf "."
      sleep 1
    done
    echo "Done"
  else
    echo "pulseaudio is not running."
  fi
}

status()
{
  if /usr/bin/sudo -u pulse /usr/bin/pulseaudio --check; then
    echo "pulseaudio is running."
  else
    echo "pulseaudio is not running."
  fi
}

case "$1" in
'start')start;;
'stop')stop;;
'restart')stop;start;;
'status')status;;
*)echo "$0 start|stop|restart|status"
esac
' > $PKG/etc/rc.d/rc.pulseaudio
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-12-2014, 19:06 (Martes)
El update de Spotify da problemas debido a enlaces simbólicos de libssl y libcrypto

Se arregla con esto:

Código: [Seleccionar]
ln -s /usr/lib/libssl.so /opt/spotify/spotify-client/libssl.so.0.9.8
ln -s /usr/lib/libcrypto.so /opt/spotify/spotify-client/libcrypto.so.0.9.8

Ademas, cuando hay musica reproduciendose, el regulador de sonido no funciona (de la barra de notificaciones). Lo curioso es que no funciona cambiar el volumen, pero si pasar de cancion

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-12-2014, 04:27 (Miércoles)
habia respondido a esto ...y no esta...    ??? ??? ??? ???


¿has eliminado del sistema el paquete alsaequal?   ...estropea muchas cosas respecto a sonido.


se quejaba de que no veia una libreria, ...


Path=/opt/spotify/spotify-client/

en el desktop ...y deberia estar arreglado.

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-12-2014, 05:34 (Miércoles)
Vamos a probar

spotify_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20141231
CATEGORIA="Reproductores streaming"

############################################################
## 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=spotify
WEB=http://repository-origin.spotify.com/pool/non-free/s/spotify/
ARCHIVO=$(curl -s $WEB | grep "spotify" | sed -e 's/\(<[^<][^<]*>\)//g' | awk '{print $1}' | sort -r | grep i386 -m1)
VERSION=$(echo $ARCHIVO | cut -d "_" -f2)
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/usr/share/applications
}

# Definimos arquitectura del sitema
F_arquitectura(){
case "$(uname -m)" in
i?86) DEBARCH="i386" ; LIBDIRSUFFIX="" ; ARCH=i386 ;;
x86_64) DEBARCH="amd64" ; LIBDIRSUFFIX="64" ; ARCH=x86_64 ;;
*) echo "Package for $(uname -m) architecture is not available." ; exit 1 ;;
esac

set -eu
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
deb2dir $TMP/$ARCHIVO $PKG

# Symlinks to fix lib naming issue.
ln -sf /usr/lib${LIBDIRSUFFIX}/libnspr4.so $PKG/opt/spotify/spotify-client/libnspr4.so.0d
ln -sf /usr/lib${LIBDIRSUFFIX}/libnss3.so $PKG/opt/spotify/spotify-client/libnss3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libnssutil3.so $PKG/opt/spotify/spotify-client/libnssutil3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libplc4.so $PKG/opt/spotify/spotify-client/libplc4.so.0d
ln -sf /usr/lib${LIBDIRSUFFIX}/libplds4.so $PKG/opt/spotify/spotify-client/libplds4.so.0d
ln -sf /usr/lib${LIBDIRSUFFIX}/libsmime3.so $PKG/opt/spotify/spotify-client/libsmime3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libssl3.so $PKG/opt/spotify/spotify-client/libssl3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libssl.so.1.0.0 $PKG/opt/spotify/spotify-client/libssl.so.0.9.8
ln -sf /usr/lib${LIBDIRSUFFIX}/libcrypto.so.1.0.0 $PKG/opt/spotify/spotify-client/libcrypto.so.0.9.8

## fixes some display issues
ln -sf /usr/lib${LIBDIRSUFFIX}/libnspr4.so $PKG/opt/spotify/spotify-client/Data/libnspr4.so.0d
ln -sf /usr/lib${LIBDIRSUFFIX}/libnss3.so $PKG/opt/spotify/spotify-client/Data/libnss3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libnssutil3.so $PKG/opt/spotify/spotify-client/Data/libnssutil3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libplc4.so $PKG/opt/spotify/spotify-client/Data/libplc4.so.0d
ln -sf /usr/lib${LIBDIRSUFFIX}/libplds4.so $PKG/opt/spotify/spotify-client/Data/libplds4.so.0d
ln -sf /usr/lib${LIBDIRSUFFIX}/libsmime3.so $PKG/opt/spotify/spotify-client/Data/libsmime3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libssl3.so $PKG/opt/spotify/spotify-client/Data/libssl3.so.1d
ln -sf /usr/lib${LIBDIRSUFFIX}/libssl.so.1.0.0 $PKG/opt/spotify/spotify-client/Data/libssl.so.0.9.8
ln -sf /usr/lib${LIBDIRSUFFIX}/libcrypto.so.1.0.0 $PKG/opt/spotify/spotify-client/Data/libcrypto.so.0.9.8

# Gneramos el fichero .desktop
cat > spotify.desktop << "EOF"
[Desktop Entry]
Name=Spotify
GenericName=Music Player
Comment=Listen to music using Spotify
Icon=/opt/spotify/spotify-client/Icons/spotify-linux-128.png
Exec=spotify %U
TryExec=spotify
Terminal=false
Type=Application
Path=/opt/spotify/spotify-client/
Categories=Qt;Audio;Player;AudioVideo;
MimeType=x-scheme-handler/spotify;
EOF

mv spotify.desktop $PKG/usr/share/applications
}

###################################
## 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
# Creamos directorios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
# Definimos arquitectura del sitema
F_arquitectura
#Comprobamos updates del script
f_comprobarUpdates
#Comprobamos version instalada del script
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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-01-2015, 01:56 (Sábado)
yad_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150103

############################################################
## 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() {
WEB=http://sourceforge.net/projects/yad-dialog/files/
VERSION=`curl -s $WEB|grep /latest|cut -d "-" -f3|cut -d "t" -f1|sed "s/.$//g"`
PRGNAM=yad
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f ${PRGNAM}-${VERSION}.tar.xz ]; then
echo
echo "$CYAN"Descargando sources de ${PRGNAM}-${VERSION}"$CIERRE"
sleep 1
aria2c -x 3 ${WEB}${PRGNAM}-${VERSION}.tar.xz
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.xz
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 {} \;

echo
echo "$VERDE"Configurando ..."$CIERRE"
sleep 1

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

echo
echo "$VERDE"Compilamos ..."$CIERRE"
sleep 1 
make
make install-strip DESTDIR=$PKG
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 03-01-2015, 22:16 (Sábado)
usuarionuevo llevo un par de dias intentando actualizar muse y no hay manera aparte que el acceso directo del actualizador no se me ha quedao junto al de audacity en editores de audio,pongo el resultado


        ******************************
           Actualizador/Instalador   
           Paquete: muse
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 30/12/2014

Descargando sources de muse-2.2b

01/03 22:10:51 [ERROR] CUID#6 - Download aborted. URI=http://sourceforge.net/projects/lmuse/files/muse-2.2b/muse-2.2b.tar.gz
Exception: [AbstractCommand.cc:350] errorCode=3 URI=http://sourceforge.net/projects/lmuse/files/muse-2.2b/muse-2.2b.tar.gz
  -> [HttpSkipResponseCommand.cc:215] errorCode=3 Recurso no encontrado

01/03 22:10:51 [NOTICE] Download GID#ef575f4e3765bfc3 not complete:

Resultados de la descarga:
gid   |stat|avg speed  |path/URI
======+====+===========+=======================================================
ef575f|ERR |       0B/s|http://sourceforge.net/projects/lmuse/files/muse-2.2b/muse-2.2b.tar.gz

Leyenda:
(ERR):a ocurrido un error.

Si reinicia la transferencia, aria2 continuará con la descarga.
Compruebe el archivo de registro si se producen errores. Para más información vea la opción '-l' en las páginas help/man.
wifislax Multimedia #

parece como si no encontrara la descarga.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-01-2015, 22:20 (Sábado)
ok , imagino que es por que le han metido hay letra b , de beta .... que rabia.

me va a tocar escribir una variable, por si existe la letra  b , tras la version ... grrrrrrrrrr
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 03-01-2015, 22:25 (Sábado)
ok , imagino que es por que le han metido hay letra b , de beta .... que rabia.

me va a tocar escribir una variable, por si existe la letra  b , tras la version ... grrrrrrrrrr
tranquilo ehhh para reyes la 4.10.1 y si puedes que el actualizador se quede junto al de audacity  ;) ;) ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-01-2015, 22:45 (Sábado)
ok , imagino que es por que le han metido hay letra b , de beta .... que rabia.

me va a tocar escribir una variable, por si existe la letra  b , tras la version ... grrrrrrrrrr
tranquilo ehhh para reyes la 4.10.1 y si puedes que el actualizador se quede junto al de audacity  ;) ;) ;)

en mi iso aparece junto a audacity en editores de audio ...

en la tuya no , por que sera que lo has pillado con el updater updates , ...

no se , ... en cualquier caso , eso esta en su sitio , no te procupes.

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 03-01-2015, 22:48 (Sábado)
si lo he pillao de updater updates como el de pulseaudio y otros mas.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-01-2015, 22:49 (Sábado)
(http://fotos.subefotos.com/b23b7786c820feb3baf85734ce364e30o.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 03-01-2015, 22:56 (Sábado)
bien,ahora a esperar el regalo de reyes,la 4.10.1  >:( >:( >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-01-2015, 22:58 (Sábado)
ABRE EL FICHERO .DESKTOP

del updater de muse y en

CATEGORIES=

ponlo igualal de audacity ...MELON.

asi te aparecera en el mismo sitio.

 a ver si vk496 revisa el asunto ...le meti hace unos dias a los upadaters multimedia la variable

CATEGORIA=

para corregir esto.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 03-01-2015, 23:51 (Sábado)
no habia caido  ;) ;) de todas formas habra que retocar el script por lo de la letra al final de la version.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-01-2015, 23:56 (Sábado)
no habia caido  ;) ;) de todas formas habra que retocar el script por lo de la letra al final de la version.

Pero te va a dar igual , ...bajaras el nuevo y se hira a donde le de la gana ...el que manda es el fichero desktop , y eso no se te va a actualizar ,por que si no existe el updater crea la entrada al menu , pero se crearon subcategorias y el updater_updates no sabe manejar eso.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 03:00 (Domingo)
pfff , me pego media hora arreglando el updater de muse , y despues va  y peta al compilar... ;D

(http://fotos.subefotos.com/3a943a43d97ee219d56aa5d62f9b4b20o.png)


esta en fase beta , asi que lo que voy a hacer es fijar a la version 2.1 estable...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 03:11 (Domingo)
muse_updater
Código: [Seleccionar]
#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150104
CATEGORIA="Editores de audio"

############################################################
## 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() {
WEB=http://sourceforge.net/projects/lmuse/files/
VERSION=2.1.2
#VERSION=`curl -s $WEB | grep /latest | head -1| rev | cut -f 3- -d . | cut -f 1 -d - | rev`
RAMA=`echo $VERSION | cut -c 1-3`
PRGNAM=muse
DESCARGA=http://sourceforge.net/projects/lmuse/files/$PRGNAM-$RAMA/$PRGNAM-$VERSION.tar.gz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DESCARGA
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.gz
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 {} \;

mkdir -p build
cd build
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DLIB_SUFFIX=${LIBDIRSUFFIX} \
    -DENABLE_PYTHON:STRING="ON" \
    -DCMAKE_BUILD_TYPE=Release .. \
    -DCMAKE_ENABLE_VST_VESTIGE=1 \
    -DCMAKE_ENABLE_VST_NATIVE=1 \
    -DENABLE_PYTHON=1 \
    -DENABLE_FLUID=1 \
    -DENABLE_DSSI=1 \
    -DENABLE_LASH=1 \
    -DENABLE_OSC=1 ..
  make
  make install DESTDIR=$PKG
cd ..

# Arreglo para demonio jackd
BINARIO=`grep -r Exec $PKG/usr/share/applications/muse.desktop | cut -d '=' -f2`
sed -i "s/Exec=$BINARIO/Exec=muse_starter/g" $PKG/usr/share/applications/muse.desktop
echo "#!/bin/bash
setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd
$BINARIO" > $PKG/usr/bin/muse_starter
chmod 777 $PKG/usr/bin/muse_starter
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 04-01-2015, 09:20 (Domingo)
No me muestra ninguna actualización wifislax-updaters_updater

wifislax ~ # curl -s http://downloadwireless.net/?dir=wifislax-updaters | grep "item dir" | sed 's/<[^>]\+>//g'

wifislax ~ # curl -s http://www.downloadwireless.net/?dir=wifislax-updaters | grep "item dir" | sed 's/<[^>]\+>//g'
Auditoria
Desarrollo
Drivers
Funciones
Internet
Juegos
Librerias
Multimedia
Navegadores
Oficina
Pentest
Sistema
wifislax ~ #

Añadiendo www. si me funciona.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 09:52 (Domingo)
el jefe a estado tocando cosas , ...algo se ha jodio ,por que desde firefox no puedo tampoco bajar por ejemplo los modulos xzm del post de wifislax modulos.


he usado wget FICHERO

si no nada.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 11:06 (Domingo)
acabo de resubir todos los updaters , con lo que comenta garcad reparado ...  ;D >:(

dejo el pack xzm ya hecho a dia de hoy...

http://www.downloadwireless.net/modulos-fase-testing/wifislax-current/wifislax-4.10.1/wifislax_updaters-3.2-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 04-01-2015, 11:37 (Domingo)
Una cosa. La última vez que abrí el updater del Kernel Estable, salió una especie de linea al principio que parecía ser error de algo (luego lo miro otra vez)


Por otro lado, con el updater del kernel Experto.... Configuré todo lo que me pedía desde el terminal, me salió una GUI (le di guardar y la cerré) y cuando empezó a compilar, al cabo de un tiempo (muy poco), finalizó. Es decir, como si hubiese acabado, sin errores ni nada.

No hubo saltos a funciones raras ni nada por el estilo. Simplemente, en medio de compilar, me saltó el promt y ya

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 11:50 (Domingo)
Lo que pone de "experto"  ...es por algo.


La rama 3.18  aun no se puede parchear con aufs, por que el chino esta de vacaciones...

pero es el ultimo estable, asi que, o lo compilas sin aufs, o cambias donde estable= y pones el ultimo de la rama 3.17

STABLE=3.17.7

ese si te lo compilara.

los 3.18 y 3.19 no se pueden pasar aun a live...

tambien se puede editar el script y omitir los paso del parche aufs... 
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 04-01-2015, 12:06 (Domingo)
Ah ok. A lo mejor habría que poner la opción de que el user escriba la versión que quiere o dar ENTER para seguir con la sugerida...

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 12:11 (Domingo)
Ah ok. A lo mejor habría que poner la opción de que el user escriba la versión que quiere o dar ENTER para seguir con la sugerida...

Salu2


pues estaría bien ...el problema es que si falla, no sabeis el por que...

si veis fallos tipo

fs ...bla bla bla


fs = filesystem

seguramente el parche aufs,


Lo único que puede estropear la compilación es el parche aufs , o el parche wireless , pero ya lo he retocado , por que daba fallo en el 3.19-rc2  ;)


No , me  lo he pensado mejor ...la gente intentaría ir a por el rc de turno , y ese es mas chungo aun.

Teneis que esperaros al chino ,o editar donde grepea el ultimo estable y poner el ultimo que haya de la rama 3.17 ,cro que es el 3.17.7

y si lo cambias, puede fallar el driver ati/nvidia o virtualbox..asi que ...

el que pone SEGURO , es por algo , pero ahora en fiestas es que no sale na.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 04-01-2015, 15:34 (Domingo)
firmwares_updater adaptado a WifislaxUpdaterGUI, y ahora identifica correctamente la última versión versión disponible, antes no miraba la versión online, solo miraba la fecha del sistema.

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150104

############################################################
## 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=firmwares
WEB="http://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git"
VERSION="$(curl -s "$WEB/info/web/last-modified"|cut -d' ' -f1|tr -d '-')"
}

# Descarga los firmwares mas nuevos disponibles
F_descargar() {
echo ""
echo "$VERDE"Se procede a descargar los firmwares desde kernel.org"$CIERRE"
echo "$AMARILLO"
git clone "$WEB"
echo "$CIERRE"
}

# Creamos directorios , eliminamos sobrantes .git y movemos
F_arreglar(){
rm -Rf $TMP/linux-firmware/.git
rm -Rf $TMP/linux-firmware/LICENSE*
rm -Rf $TMP/linux-firmware/LICENCE*
rm -Rf $TMP/linux-firmware/WHENCE
rm -Rf $TMP/linux-firmware/README
rm -Rf $TMP/linux-firmware/Makefile
rm -Rf $TMP/linux-firmware/GPL-3
rm -Rf $TMP/linux-firmware/configure
mkdir -p $PKG/lib/firmware
mv $TMP/linux-firmware/* $PKG/lib/firmware/
}

###################################
## 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 script
f_versionInstalada
#Descarga los firmwares mas nuevos disponibles
F_descargar
#Eliminar innecesarios
F_arreglar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 04-01-2015, 17:19 (Domingo)
acabo de resubir todos los updaters , con lo que comenta garcad reparado ...  ;D >:(

dejo el pack xzm ya hecho a dia de hoy...

http://www.downloadwireless.net/modulos-fase-testing/wifislax-current/wifislax-4.10.1/wifislax_updaters-3.2-noarch-1sw.xzm
??? ??? uffff,si le pincho al enlace salen letras alienigenas.

hsqs������T������������� ������0I�����(I�������������7������>������G�����I�������������7zXZ��i"�6�̭Ƭ! �a�J��EV�]��BF=�4s


>�c|{��1�Qs[(}@�n����C��.��ᣧY>Ks
H�b��5ɩ����C�y��� �ٟ��׿K�1��9˓�&��e��.k��n����&�I�Y�q,�H�f..��pE���   �R"W+�ct�T×��m�F_+n�W�w�m�@f�]E+X����w�Z� q֫�3�����Al�$\b���L���>,�dsa��I
0���ERs-Wq0��eQ���.���,���� ��U5�V�2��3x9?rm=�$YQ�"�faI�8�3�p��^���� a�P�L������V��M�Q��f�R
H~�LKzd    _M�G�������@�n��s�p����.�6ݧD�C Y��R�)�,[�   {fܝ��̑KTł�t�;jO��C_��"�+q{��{`|��-�26�R���ZP��7�=�0�4e�s��6^jI(tu�]6`��slv�pV<\Д���׈��F�U�8���Q8�'�^8U����,W��Pң��`��o��R�����V�[pD��<��z����z3Ն��%٩�%�6ءJ}�˕�k�9C'J@�is��{"��7��iL.�O�iO�
fN]�3 0z�)G���2a�''u�Rh{�� '� e7��"��J�R;m���^'�cD   �ԤԽK����SL����*4���q%$��t���   *��������^t )�ſ|�B�dY�x�4�����JΝ�d�G&D?䝹w ��:�,%�9��ڤ
���H`�� �֟�=w0ˢK-�u�'@��.�R~Z�x�8���M�+�mcd1�E-��Á�Y�|�^���<0�1-�Z)�~���_��Q
#�E�r��R�;C��xrxa4:���\x����B{���5��Z3�ߺ�)�   ��j22�#v4�}��� 3��U%rK�������hP�H��x̏�F�o�ym�@�x�(iN|�} ɭ�N   0�Y���g�b��6c�v�foʧ���\k���H�\�jKW��xz[U��<h,7�4Y��:;�q�����!̦��W�l   �%dGp�Pg��V��RCMfoE�ull�
���.и�2�����M�RE�wV��7���T�q�[�m�Ѿ�¸GC���i(@�^�,0C�a�K�/Q��E�>����0�x��� "�V��{#��~)��*���.1�F����PU�hE�����!d�6+�9��b��~�%�:n_��������O���4nߛ2ib}S Q�GR�(�,a�   Ro8��q�%��v�l����IS�c�(U�ݥ��Չ�ݳ��P�u��Qͳ�u;[6   ���o�q�bCq <�� ~��޿�^���&e�+��_�8����F`���`:լ��z�h�<�)W_K����p���b7nx�����'��A�
|Ƚe9 ��z��B��eJ� F��t�*W `�q��* 6OȻ���q|��y�O
�����؜-.> ����iq�#� aH-�����Fzbx�7$4�jY-_V�)��-����0J�݇�x&��q[��H��KE�)a-#b�U{t�i\xACu�`t�z/f��~H�#�^U� YL-/��*[�;�8��g��5V~��w.=u~���,ثT�9xM�;&"�W������z�RW'�s(=�����I��0���mZi��#���{�C��N���F׉�<��������`���f� �i94_�b\n�:�ȟ;j1C�C�]���I���Z3����]}��}R2�ap��ʉ�ӹZ �����/4�=91J+nU��L��!�,���pZ@B
�L��E�
�vf*���D��x B�u�r�ԯNY<P^��?3τhz>�H�(3k����x�j C:��� ��F������{�hg5��hp
�䀀r-� A���k=ݜ��[����M�y~k?�5x3T�Q2��!N YH)��X�%��B��}o��S�F�C��� \��Q����|�%|I��=w��v�=����&�"
���(�C�k��0TT�t   \��
�S?2d�� 8�������9�ǯ��$R�!���R�3��g�>��m�B�C���`$�   �]�fR��   y�Q�
�'%%n�ُ���쟺&+хg0�vh,�
$�,��>U$��4�Co��/�I���v4��9.��U
A_��$Α �!c*���6F8m�y�齼�����']���v�5R;s�'����#nX+�f�R�oR��V6J\1\�Ȟ�!���WS�az��Ck�XIʩ�e=|J�h��+R�OFq��Jy�V7�B˷���� O~a{�8��1��5I(�T���fw�4ԏ�vr�&�@�H��8ū �����f�<��U���X�<�;���}�so7��\T�R��i'
P(!��j?^w�Ԟi���Ÿ�'�:~ b��#�H��?mn.��td��%���}�Q��
�b����N�A�
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 19:05 (Domingo)
sol666  a mi no me pasa , en cualquier caso


click derecho ..guardar como ...   ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 04-01-2015, 19:17 (Domingo)
en win7 tambien jejejj,sera mi pc que esta loco perdio  ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 20:43 (Domingo)
gracias geminis_demon


actualizo ...  el updater y el paquete , para que ya esten en sintonia  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 04-01-2015, 23:40 (Domingo)
�x&��q[��H��KE�)a-#b�U{t�i\xACu�`t�z/f��~H�#�^U� YL-/��*[�;�8��g��5V~��w.=u~���,ثT�9xM�;&"�W������z�RW'�s(=�����I��0���mZ

Firefox no detecta un archivo a descargar, guardar como o descargar con un gestor de archivos, firefox esta visualizando el archivo como si fuera uno de texto...

wifislax ~ # cat /root/Desktop/wifislax_updaters-3.2-noarch-1sw.xzm

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-01-2015, 23:42 (Domingo)
pero , debe ser que no se da cuenta y le da a abrir ...en evz de guardar.

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 04-01-2015, 23:56 (Domingo)
pero , debe ser que no se da cuenta y le da a abrir ...en evz de guardar.



De algún modo se le podrá asociar a fierfox la extensión de archivo para preguntar siempre.

Ahora lo he intentado descargar desde firefox y me lo abre, sin estar contemplada la acción en la configuración del firefox

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 05-01-2015, 00:03 (Lunes)
/root/.mozilla/firefox/wwl7kko9.default/mimeTypes.rdf

Pero no se añadir ...

Los vmlinuz , tambien los intenta abrir cuando descargas uno , por eso muchas veces los pongo dentro de un zip
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 10-01-2015, 20:08 (Sábado)
dejo angry ip scanner reparado ...


fucking ftp , ... :(

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150110

############################################################
## 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() {
WEB="http://angryip.org/download/#linux"
VERSION=`curl -s $WEB | grep ">[0-9]" | head -1 | cut -d '>' -f2 | cut -d '<' -f1`
PRGNAM=Angry_ip_scanner
RAMA=`echo $VERSION | cut -d "." -f1`
DESCARGA=http://sourceforge.net/projects/ipscan/files/ipscan$RAMA-binary/$VERSION/ipscan-linux-$VERSION.jar
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/usr/share/{applications/wifislax/Redes,pixmaps} $PKG/usr/{bin,lib/ipscan/}
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
mv -f ipscan-linux-$VERSION.jar $PKG/usr/lib/ipscan/

echo "#!/bin/sh
java -jar /usr/lib/ipscan/ipscan-linux-$VERSION.jar" > $PKG/usr/bin/ipscan
chmod 777 $PKG/usr/bin/ipscan

# Creamos icono
echo "
iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz
AAAN1wAADdcBQiibeAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAABFKSURB
VHiczZt5dBzVlcZ/91V1t1rdshZLsuVVsvGCHYNxyAAOGAYcBwgBEpYBskAyxtkTcrLMQDJJGDKE
JXAIEEhsAUOWMQxJSMJimABhTsIaDAaHGC+SJWNbtmRr76266t35o1uSbWStbSb3nHuquupV1f2+
e999t169FlXl3ZR5Xw6e6k46ZxzJZxjRc3etkUdG0tY9koYcKjUrmVsS5aQXb2sg7IAwtJpRnl/9
TKn/w8cq3k565k8jteldJSBWZL964bKusHHAMjy4odocen7dhpje/FhFd8ozp7XU0zlSm941AmpW
UhwJ8YnzT+52leEJYBTnX22McNXPqpPprDmjpZ4do7HrXSNA0MuOm5OisiwYt/cPJKCpNcQVd9ck
01lzQUs9G0ZrlxkfrJGJlMxcGHU6r/+n07tilhy48WhfBLX1OFz2oymJlGeuaqnnybHYdkQiQKrm
l5DMnAGcBZwVmrhkerTIcNy8FIUK/7QnXH5HTaI7Ze7YuVrWjNXWghIg0bpajH4L5JNAuO/4xOOu
5OIVGWxfuyF0JMkva+FLayYnd7WHHmu621w9HpsLQoAUz56B2G9h+BRICCBUEyF2YilFJ0wjsvl0
VpzYUjDvX7u2wt/QGN6Y9MzHx2v7uAgQqSsixo0InyXv8diSUir/eSqRxTGsUbKvnsvSxQmKi21B
kl/9ujiP/m+Xu/ORU6er1/NR6rc/OB4MYyZAimbMptj5FcpigPiSUio/NY2ixTGsaE4B8+aH+MiV
iRGF/3Dn//BKjHuejtD6ykVotmcKwgMSqzuVpPtV1a2ZseAY0yggsbrzcZz1wGJ3gkvdD+Yz85b5
RI+NoaKoATXg7ziWyrjDrOlef/iPVddvK+K6hyZgLriO6T+bRMXHavpY+xzFwXMSra17VwiQWO11
wMNAaWx+nLk/OZb4CWU50NKnioribjyXj56aHtXQNpg27gnxtfoK7Fk3I9XNEIHKz09j2vVzceIO
oO/FyKsSnbXsiBIg8bpvgnwboOq8Gubcugh3Uqgf8IBC0FOJ3TOHpUsS4/J8W7fDF++qxDvlHqT2
DazRfi0+pZTaNQspOqoYoAyjv5f47EVHhACJz/o4yg0AUz8zk2lfrIPQgV4fUCuKbjyT009I4IZ0
2PA/3PlERvjKXRPpWfgIHPt0DriQV0WN4k6PUHvXAmLHlACUovYJKZ49o6AESHzWClTvBaT6wilU
XzgVyIENjJJ1LV4op4FRrHXhb8s565Sxez8bwNX15bRUrsdftrYf8ICCzXc7ooZp18+lqLYYYApi
n5DS6RUFIUBitTWoPgSEyk+vZOqqWgCssaQjPqkin3TUJxPJ4kV80hEff9sJ1E3zqKr0x5z8bnqg
jE3ZXaTPuQ01ijUMjC55Vcl3B1HMBIeZN80jVBUGOBrfub8gBKDyQ2BC8Zw4M78+BwSyriVZ5JOK
+qSjWVJFAZlILgJ8VwltPI9zTs2MOfnd/0QJf25K0Xvxv2Nd2+99m/e6NX2/80SYXLdwJoWpvX4+
4gDIORKb9eFxESDRWcsQLkNg2pfqkJCQCQekov4BaslEfLLhgMC12H0zcHsnccyC5Jg8/4eXYvzq
uTBdn7gGG00OAD00/PO5QM1APlBRwkdFmXh+TZ/3bhOpKxoTASLiYPROgIrl1cSOLsELBWQiPpmI
TzoakM5HgBe2BE4uQUXWn8uKk5Nghh7aBvP+a5uj/PjhCXR+8hqCsv39Hh40/Pui4ADwfYRUXzEN
tzwEMIti+caYCKC47tPAIqfYYeqVM/EdixfOhXkmkvN6OhLghQPUKChIKorzt5NZdlLvqD2/fXeY
/7ivgo5LryOY0pQHdWC4HxL+MhD+2h8NOSJM3FCzsm8g0Kul5Kjq0ROA/STApEun4paH8F2L7wYE
ISUwuWwPEMo6uL7BCQyhDWewYH6SeIkdVfLb1+nwnbsn0nHOHWTnbhjw9AHJT/s9nQ9/MxD+h0aB
NVB2ZhXR2TGAKNa/6HAoB30XkNiMKeC8H4GKM6oP7oMoAriBYNTBBIITCE5gKH7lI6z4WK7yg5G/
+Ny2tpTewCPafAzhlqPwQykIZdBQBnE9cD3EzYCbQR0vp66HNR4YD3E8EB8RRYyiCmqE8uWVpBoS
IHIx8OMRE4A6FyFIbEEJoaowfVPnYg1OoLhZg9hcIS4KxgrS9B7iTpRZs9tGRMCB5z/+oQRv7w7j
eUvwPIPnCemskkwqaQ/SHmSykPGEjCf5NoZs1iGbdfA9h4zv4oklOn0L5kPfQ0UpPW0iu1c3g3Ky
xGprNNHUMjICRC4CpeyUiXmQQijrEDgKOBgruRDMR4Oo4Lx6PstPTWEZ3ZyeALUzMtTNyLwjQoaL
oAN/J1PC526eRPeMl3N1gQjupDDF8+Ik3+o1qLkAuPNQqO/IAVJeVwa6FKB8WWX/8ZBvKE6FiGQc
ImmHSMoQSTuEUy5uRwVB8yKOf9/IKr+xlsaHU9/C9+4rp2vyX3CWPNJfjltRyk6bmAemZw/m63dG
QFZmgIpT4vZVVf3iBEJR4BAYB+vkhr7AUTJvfoAl7+0lFNGCzfqMZuLkpw+XsrW3Db3grtz7iCqq
gipEZhX3mV87KAGrVq06EZjcd+CUf5j/3h279hGeFKGs2RnsmnxSNARGCQT2vHEWy77SOerkVwiC
nno+zjPrDWXLbsJtMhjbp4KxUCpx7LQqBKldtWrV+QfAaFi9evVGWblyZcuCBQvKjMn1BlV1AmtD
YgRxDSLCO2Xge+KWrllsCE7l819vG1PfHe35A9ts2lbEDXdXccnsB6mKth/WTPVyO67rZEREAbZu
3dqTSqXmup7nPRyPxz87Z86cwZAOK4/+cTEnrUiOKfmNJ/zb9rvcUl/NF5ZuYsm06cD0kZgb6dsp
Li52N2zYcJ3p6Oi49umnn960adOmUc+ptXRHebsrxtHHFib5jVQTaeHGuyZxzrwdLJk2iOdHILW1
ta6InOls3rw5cd999yWj0egZs2fPHvLF4VB5sbmKjXsraNkRZveuCJ2dITxPcFwIR0b/2X24EBTA
Wrh9zSQmh7r52HGNo35G/71E2LJli9c3Cnz++OOPL7PWDnnRoXJq3W5mlvWwpyfKnt3F7NpWzPre
UvZ2RbEqVE70qKzOMrHap2qSz4wZaWpqsuPqHv/9u3IS7QFXnbYJa8e+tsHzPKy1HS5AT0/Pwy+8
8MKCpUuXxkZ7o6pQJ1UVsOiQ+ZdkNkRrIkZbIk5rU5y/vVnO4901fPcHO8Y8Ojz3UpyXXoryzZOe
IdHrjRU7AC0tLQRB8KQL0N7efvOzzz771YULF8YGz/pjkwqzn4oSmFcCr7fW4sWOOyxIDnO8Txsb
I6x9qJxVC9ehmU66x/QVYEC2bNmyv7Oz8z9dAN/3z3Zd13R3d4/vrkPIm/urOWpZZkwEdLS73PXT
Ks6ueZKo30xX1/jt2bt3r7d27drX3ZqamoqSkpJ7li9fPvFIErC9dzr/OL99UAKGCn8vI9x5ZyWL
ip5jEq9TKBPT6TQAbhAEU9LpdGTdunVtxhjJdQEpUogb1yEUD+EYgxGD6dsesu8YwTBwXEQO2ial
BlvqUFWTHRQohwGPwr31FUR7N1MXeZyuLkHk8DpKAgyA29ra+tfq6upFO3bsCJF7N3Cyakp70+Fn
gdDMf5lDZHIErGLVRcXBIogBI4rRAFcsIesTwiesAaHAx7EBJrCIVVrbjqFuas+ovf/7306goWEP
odSXebQri7EgVhALEoAoSCD5LRgEQXJbEbTbokmL45hUOOS054kSERFV3UAeMK2trc2HMiSx2idB
zunZkmbC6ZNzRYyJgBvCug4SBuMKoZDiOgFhNyBiAiLGJ+T4uDlrsUbJ3PMB5i7SUXl//csx/vSa
w55/+w6UFINKf1SI5q6U/L4TCG5gcPyBfZOC1vM24bd4IHql9jb9crBIGGpW+G6Att+1kNmZzhuq
oArkZl2sKr6CZ4WMGhLq0K0hOjXMfo2wT4vY6xfT2XA0tfNSI670mpoiPPTrUtpWXoNOGHrBl4qC
5OYmNM+eAr2/bMuBhz0k0r893PWHJUATTY8Dj6uv7LxrO5KDDaqoKtaCVfCt4gNpa0hZQ48auqxL
h7q0q0vrjnnEKzJES4IRlcYdHQ71ayrYf+kNZKfmKj0FEB14BZODCyAl/4Uo38a2evSs2ZNvK99U
3ZMYNQEABOYqwOv+SwddL7RjNMjVojZAbUBgLb5VMgFkLKRUSKihV4UeFbpU6N28kFnzvRF5Pu0J
a1ZX0L7sQTLHPP8OoAcCPuh3vl2OKOi5pQVNWoDnSWz/xVAQhyRA0w1bUW4F2HlHI/7+NKI+BD5q
fawN8IOArAZkbEDaWtLWkrCaUxSzdTGzByHgUO8HCmt/Vkbr5NfoWfFfB4OU4ff7ukLmyS7Sj3eS
u61+UYdZCzz8p7FU6vtAg9fm0XD1JjSRQTSLBD4aZFHrEwQ+vvXJWh8vyJK1Phnr4SUNdvdUpswe
fo3AHx6bQENnB/suvfEgcENZ33cunxPxX07S+423+66/XRNNrw0Hb1gCVPckCJwzgbZUY4Lt330L
kwkwmsEEGdSmkcBD/TQ2yBDYDL5NYW0KGmdTWduNE9Yhwb/xSowXX3ZpXXk1hLLDmTSoBFszJD+z
A3KTH4+QaPr6SK4b0edxTW/bBuZsINGzoYsdN21DAkWwONZHbAajGcSmMJpCNA3qEd66mKPm2yHD
f1dzhEd/VUrbyquxEzoOb8NQ9u32yVy+A+0JAF4k6V2iqkHBCADQRMMrCBeC+p1/3Mf2r71F0J4F
+sbnA7Z5a8Pb3seM+YcP/65OhwfWVNB+8U34+Yw/ENfDGJR/iP1zkuzZ29EWH5TNONlzVHclR4pr
VEtktHf7EyAXAd2JDd1s/9RfSb3akytO8kb3FzcdVUiqhIppg48AGU94cHUFnUt/TebY5w4qig68
z2HFKsEt+/Av24nuDwBeB7NCu3fuHw2mUS+S0sT23xKY44GNfnuWnV/eTMfq3WjC5mKhrzprPJaa
uT25OXoODv9A4dFflLGv8g16V/z8HdlssER/4DFt8PAv2YW9dX+uGEHuIcmJmmwY1UpxGOMyOU03
bCXpnwDcj1U67m1h13kb6bl3LyQsAoQbT2DW0YMnv+fXTaBpfxftl9xw0H3f4XU9ZCho8Ai+sIfg
tGb0z0mAJCKXa6Jxper29FiwyHj/MiPxWZ9A9fvADABT5lB8RRUTep7i0n9tI14+kIsM0PBajKd+
U0TbVz6HlrYfXOUdgrefkE0eensH+rueXPjkWj2F0au0p/nN8dg/7uXy2tv4c5ITjwL5DNBsOwPS
91cQIXsQeIC9OyI8/WAp7Vd8G51w+Nlc6bXweC/6jVbs8U3Y05rR33T3gf8fVN+viaYPjBc8FGix
tOorWWC1yPH3Udx+edH0M6+d8R5vyoFtEl0Oj95ZTnvbt/DufA6pdtAqBzKKtgbQ5kObn9vfnAH/
oEekgSdRvVGTTS8UwuY+Kehy+TwR9TO/FKysXdzaT4CfFR79URkdr95DasPDI71dM/A46GMkg2dU
304V0tY+KfgfJmpWUmQcs3jKnAF7n7m/Ot3dmvpLz2u33oYwGfpUJiFkUN0DDKhjGrS7cXOhbRtM
jsQ/Rk4pn+ylwkUaAVi/rtzf+VbxdivxD2qy6Yh4cTxScAKMa8+qPSYRB2jcEGPDU2XdvmeWt9Tz
dwcejsCfplxXz51+dNLdtzPMH39enfI988GWenYX+jmFkoISULOS6iCQqfFyn8d+PCXlZ+XTLfW8
UshnFFoK3QXOqJ6Zya77SY31Pbm9ZY08UOD7F1wKSkAoYj/c1hyJi8M63zPXFPLeR0oK2gXUskIM
W7Npc1FL/bAvtH8XUjACalZSpPBUNmNOb6lnxO/j/9/yfzu9aoF4DJKiAAAAAElFTkSuQmCC
" | base64 -d > $PKG/usr/share/pixmaps/ipscan.png

# Creamos entrada a menu
echo "[Desktop Entry]
Encoding=UTF-8
Name=Angry IP Scanner
Comment=Fast and friendly network scanner
GenericName=Fast and friendly network scanner
Exec=ipscan
Terminal=false
Type=Application
Icon=ipscan
Categories=Redes;
StartupWMClass=Angry IP Scanner
StartupNotify=true" > $PKG/usr/share/applications/wifislax/Redes/ipscan.desktop
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 11-01-2015, 23:12 (Domingo)
A que se debe que el modulo echo con el updater, el pulse audio no anda
ahora estoy usando una version anterior
sera problema del updater-updates, o del pulseaudio??? :'( :'( :'( ??? ??? ??? ???
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-01-2015, 23:15 (Domingo)
¿como que no anda?

(http://fotos.subefotos.com/3bd449178a501bb811612e4966bb657bo.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 11-01-2015, 23:21 (Domingo)
Descargar, desgarga, hace el modulo de la nueva version,
pero no funciona en skype,
 saber si es problema de la version de pulseaudio, o algo en el update
acabo de testearlo y no nada el modulo
tal vez no debi exponer el tema aqui...


es mas, el audacity, que viene por defecto en la iso, ni se abre , es como que no reconoce el pulkse audio, el sistema... chan...!!! ^-^
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-01-2015, 23:35 (Domingo)
yo es que mataria a mas de uno ...


voy a tocar el updater de skype , para que en vez de bajar el rpm de SUSE  ... haga el modulo desde las sources ,.tar.gz  ... como manda el slackbuild.


http://slackbuilds.org/repository/14.1/network/skype/
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 11-01-2015, 23:47 (Domingo)
la consulta, es como pasaba con el muse, si con una nueva version no andara... para que actualizar ???

osea hay esta mi cuestion de plantearlo, el trabajo esta echo de 30, pero si el modulo creado no anda, simpre se debe tener una copia del viejo...
perdon si no me explico bien...

repito el audacity, ni arranca en miwifislax 4.10.1 rc1 con la ultima version de pulseaudio la 5.99.2...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-01-2015, 00:17 (Lunes)
la consulta, es como pasaba con el muse, si con una nueva version no andara... para que actualizar ???

osea hay esta mi cuestion de plantearlo, el trabajo esta echo de 30, pero si el modulo creado no anda, simpre se debe tener una copia del viejo...
perdon si no me explico bien...

repito el audacity, ni arranca en miwifislax 4.10.1 rc1 con la ultima version de pulseaudio la 5.99.2...


CLARO , si te fijas solo un segundo , veras como te pregunta si quieres salvar la version del sistema ...pero no lo habras visto.

pulseaudio , no tiene nada que ver con audacity ...
(http://fotos.subefotos.com/7bde26adf4c659cdaba4d0a481077302o.png)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-01-2015, 00:24 (Lunes)
estoy haciendo pruebas ...

nunca uso skype , pero hice un test echo ..o no se que ..y no sonaba nada.

si con pulseaudio 5.0 funciona, pues fijare la version en el updater y ya esta.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-01-2015, 00:50 (Lunes)
@CristianEdgardo

Pues va a ser que me toca poner pulseaudio 5.0

y fijar el script de momento ...por que solo skype solo suena con la version 5.0


en el sitema habia metido la 5.99.2 por defecto , asi que la voy a downgradear  ;)

gracias.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 12-01-2015, 01:42 (Lunes)
@CristianEdgardo

Pues va a ser que me toca poner pulseaudio 5.0

y fijar el script de momento ...por que solo skype solo suena con la version 5.0


en el sitema habia metido la 5.99.2 por defecto , asi que la voy a downgradear  ;)

gracias.


Primero que todo gracias a vos y a toda la gente que esta muy activa en esto...

Yo por ahora estoy con que debo pornerme las pilas, colaboro con lo poco que se podria mensionar colaborar, trabajo con skype y me comunico con mi hermana que esta lejos, por eso toy tan hicha pelota!!!

de verdad es un muy exelente trabajo, yo lo uso como sitema de mesa pero dwsde el usb...
cuando teanga mas maquina lo instalo... en hd


y bue sin mas que decir...   asiiiiiiiii.... el audacity arranco lo mas bien, se ve que sabia tildado...

 >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( ;) :D ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-01-2015, 00:47 (Martes)
yo es que mataria a mas de uno ...

 ;D ^-^ ^-^

Perdoname  :-*

A cambio, dejo este de wxWidgets:

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150112

############################################################
## 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() {
WEB=http://sourceforge.net/projects/wxwindows/files/
VERSION=$(curl -s $WEB | grep -m1 "class=\"folder" | grep -Po 'title="\K.*(?=" )' | sed 's/ /%20/g')
PRGNAM=wxWidgets
}

# Creamos directorios extra
#F_extradirs(){

#}

# Comprobar dependencias
#F_dependencias(){

#}

# 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 3
aria2c -x 3 $WEB/$VERSION/$PRGNAM-$VERSION.tar.bz2
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
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 {} \;
 
# Configuramos paquete
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3

sh autogen.sh || true

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --enable-static=no \
  --enable-shared \
  --build=$ARCH-slackware-linux
 
# Compilamos paquete
echo ""
echo "$VERDE"Compilando ..."$CIERRE"
sleep 3
make -j$NUCLEOS
make install DESTDIR=$PKG
}

###################################
## 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
#Creamos directorios extra
#F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
#F_dependencias
#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

Tengo pensado hacer el de wxhexeditor, ya que no he visto ningun editor hexadecimal

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-01-2015, 00:57 (Martes)
This package conflicts with wxPython because wxGTK is already included
there. Both cannot be installed at the same time!



por otra parte , no se si te vale ebd debugger, esta en la categoria desarrollo, del livecd.


pssss , encima miro  ..y lo que te pide es   wxpython ...   no las widgets ...



14.1 > Development > wxHexEditor (0.22)

wxHexEditor (a free hex editor)

wxHexEditor is hex editor for Linux, Winodws and MacOSX.
It supports files up to 2^64 bytes.

Besides editing very big files, wxHexEditor has some unique
features like comparing big files, x86 disassembling, low-level
data recovery, see http://www.wxhexeditor.org/home.php

This requires: wxPython

Maintained by: Willy Sudiarto Raharjo
Keywords: hex,hex editor





wxpython , la he metido de serie , en la iso , despues de conseguir dejarla en un mega y poco ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-01-2015, 01:11 (Martes)
@vk496

si haces el updater del editor ... cambiale al desktop la categoria..


se va a UTILS , y es mejor en Development


Categories=Development;
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-01-2015, 01:16 (Martes)
This package conflicts with wxPython because wxGTK is already included
there. Both cannot be installed at the same time!



por otra parte , no se si te vale ebd debugger, esta en la categoria desarrollo, del livecd.


pssss , encima miro  ..y lo que te pide es   wxpython ...   no las widgets ...



14.1 > Development > wxHexEditor (0.22)

wxHexEditor (a free hex editor)

wxHexEditor is hex editor for Linux, Winodws and MacOSX.
It supports files up to 2^64 bytes.

Besides editing very big files, wxHexEditor has some unique
features like comparing big files, x86 disassembling, low-level
data recovery, see http://www.wxhexeditor.org/home.php

This requires: wxPython

Maintained by: Willy Sudiarto Raharjo
Keywords: hex,hex editor





wxpython , la he metido de serie , en la iso , despues de conseguir dejarla en un mega y poco ...
Wow

Ni me di cuenta. Creo que se podría añadir esta librería pero con un if para que no se instale si encuentra al otro.

Jajajajaja
Juro que miré ese README, y no se donde vi que me pedía el otro... Por eso me lancé.

Gracias @USUARIONUEVO por el recordatorio del desktop, lo tendré en cuenta cuando haga el script

Nota: añadir a los updaters, como updater mas.

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 13-01-2015, 01:20 (Martes)


wxpython , la he metido de serie , en la iso , despues de conseguir dejarla en un mega y poco ...

Recientemente no? Por que en la 4.10F me dio error en el make por que faltaba la librería

PD: el script no lo haré en un plazo medio, ya que estoy de exámenes...

Salu2

Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-01-2015, 01:37 (Martes)


wxpython , la he metido de serie , en la iso , despues de conseguir dejarla en un mega y poco ...

Recientemente no? Por que en la 4.10F me dio error en el make por que faltaba la librería

PD: el script no lo haré en un plazo medio, ya que estoy de exámenes...

Salu2



pues no se desde cuando la puse de serie, ocupa un mega y  pico , pero es de las que mas trada en compilar ...por eso la deje de serie.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 17-01-2015, 00:33 (Sábado)
wxHexEditor

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150117

############################################################
## 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() {
WEB=http://sourceforge.net/projects/wxhexeditor/files/wxHexEditor/
VERSION_REAL=$(curl -s $WEB | grep -m1 "class=\"folder" | grep -Po 'title="\K.*(?=" )' | sed 's/ /%20/g')
PRGNAM=wxHexEditor
VERSION=$(echo $VERSION_REAL | cut -d% -f1)
}

# Creamos directorios extra
#F_extradirs(){

#}

# Comprobar dependencias
F_dependencias(){
echo
if [ -f /var/log/packages/wxPython* ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"wxPython"$CIERRE: $EXIST"
if [ ! -f /var/log/packages/wxPython* ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 3
exit 0
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
fi
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
rm -rf $PRGNAM
tar xvf $PRGNAM-$VERSION-src.tar.bz2
cd $PRGNAM
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 {} \;

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 3

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \

make
make install DESTDIR=$PKG
find $PKG -type f -name *.desktop -exec sed -i 's/Categories=Utility/Categories=Development/g' {} \;
mv $PKG/usr/local/* $PKG/usr
rmdir $PKG/usr/local
}

###################################
## 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
#Creamos directorios extra
#F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
F_dependencias
#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

Asi que ya tienes el pack completo: WxWidgets (No es util para el wxHexEditor) y el propio wxHexEditor

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-01-2015, 01:47 (Sábado)
este no lo voy a poner..por que no se necesita y por que rompe el wxopython que si se usa.

Código: [Seleccionar]
WxWidgets


respecto al updater de wxhexeditro , me quito el sombrero ... por que lo estuve mirando y no fui capaz ni de grepear la versión , siempre me decía la 0.21  cuandoo en realidad va por 0.23
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 17-01-2015, 01:56 (Sábado)
este no lo voy a poner..por que no se necesita y por que rompe el wxopython que si se usa.

Código: [Seleccionar]
WxWidgets


respecto al updater de wxhexeditro , me quito el sombrero ... por que lo estuve mirando y no fui capaz ni de grepear la versión , siempre me decía la 0.21  cuandoo en realidad va por 0.23
Lo de las versiones es algo puñetero en este script la verdad....

Respecto a wxWidgets, una lástima... :(

Y hablando de updaters desechados... Hay que hacerle un segundo asalto a JDownloader... Es algo personal XD

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 18-01-2015, 20:51 (Domingo)
jajaja esto es flipante ...


cuando añadi al sistema las wxpython , el caso es que me decia que algunos ficheros ya existian , y yo flipaba ..por que ese paquete nunca habia entrado a sistema.


ahora NO ME PREGUNTES POR QUE NI COMO , por que lo he flipado  ...  resulta que estaba en el mnodulo

extra-sw  , el paquete wxGTK ...    ??? ???


en fin , no recuerdo nada que no necesitase y teniendo wxpython , el otro no vale...ademas ya esta anulado al poner encima el wxpython ...   es como los inmortales, solo puede haber uno.


voy a reiniciar el sistema ...y buscar si hay dependencias rotas.... :-\
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 20-01-2015, 16:13 (Martes)
 :D :D :D :D :D :D :D :D :D :D

el wifislax updater gui 0.6 en la version 4.10.1 version de mantenimiento...

anda de diez, en las 4.10 se quedaba tildado y no vanzaba nunca....

 >:( >:( >:( >:(

Y una pregunta???, las actualizaciones van a changes dat, en modo live usb???
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 01:47 (Domingo)
:D :D :D :D :D :D :D :D :D :D

el wifislax updater gui 0.6 en la version 4.10.1 version de mantenimiento...

anda de diez, en las 4.10 se quedaba tildado y no vanzaba nunca....

 >:( >:( >:( >:(

Y una pregunta???, las actualizaciones van a changes dat, en modo live usb???

cualquier cambio ..va al changes.dat   --->> para eso esta y de eso se trata , de guardar los cambios.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 01:53 (Domingo)
Traigo buenas noticias.  ;D

He conseguido desentramar el royo de las wx  ...

hay 4 updaters dependientes de wxwidgets , ya sea la parte en python o en gtk.


wxsvg -->> a este le da igual ..compila con las dos
wxHexeEditor -->> a este tambien le da igual compila con las dos

audacity -->> este solo con wxpython 2.8
filezilla -->> las versiones nuevas con wxGTK3


Bien , ...se puede tener en el sistema a la vez wxpython2 y wxgtk3 , por que no comparten librerias son todas distintas , solo se pelean por el fichero

/usr/bin/wx-config


es un simbolico que apunta hacia version 2 o 3 ...asi que segun lo que necesitemos el updater cambiara hacia donde apuntar el wx-config     ;D ;D ;D ;D ;D ;D


filezilla ,le cambie la dependencia en vez de wxpython , ahora buscara wxgtk3 y si wx-config no apunta hacia version 3 ..lo cambiara el solito ... lo mismo hace audacity que busca la version 2 , si no apunta , lo cambia el solo tambien.



Código: [Seleccionar]
# Se requiere version 3 de wxgtk se verifica
WXCONFIG=`ls -l /usr/bin/wx-config|cut -d'>' -f2 | sed "s/ //g" |rev|cut -d "/" -f1 |rev`
if [ ! $WXCONFIG = "gtk3-unicode-3.0" ]; then
ln -sf /usr/lib/wx/config/gtk3-unicode-3.0 /usr/bin/wx-config
fi


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 25-01-2015, 02:17 (Domingo)
Traigo buenas noticias.  ;D

Código: [Seleccionar]
# Se requiere version 3 de wxgtk se verifica
WXCONFIG=`ls -l /usr/bin/wx-config|cut -d'>' -f2 | sed "s/ //g" |rev|cut -d "/" -f1 |rev`
if [ ! $WXCONFIG = "gtk3-unicode-3.0" ]; then
ln -sf /usr/lib/wx/config/gtk3-unicode-3.0 /usr/bin/wx-config
fi


y este pedacito de codigo donde iria...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 02:42 (Domingo)
es mejior que bajeis el pack con todo arreglado , ese trozo de code solo es parte de uno de los afectados.

en el de audacity es otro code ..y a filezilla le meti que comprobase la existencia de wxgtk

ademas como en wifislax-4.10.1 no viene esa libreria he añadido un updater wxGTK3

http://www.mediafire.com/download/r0zl321227smvg4/wifislax_updaters-3.3-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:12 (Domingo)
me sale esto

 ******************************
           Actualizador/Instalador   
           Paquete: wxGTK3
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 25/01/2015

Descomprimiendo ...
tar: /opt/wifislax-updaters/Librerias/wxWidgets-3.0.2.tar.?z*: Cannot open: No existe el fichero o el directorio
tar: Error is not recoverable: exiting now
wifislax Librerias # ^C
wifislax Librerias #
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:15 (Domingo)
y para el filezilia

configure: error:
        wxWidgets must be installed on your system
        but either the wx-config script couldn't be found or
        no compatible wxWidgets configuration has been installed.

        Compatible wxWidgets configurations are the unicode builds
        of wxGTK, wxMac and wxMSW.

        Please check that wx-config is in path, the directory
        where wxWidgets libraries are installed (returned by
        'wx-config --libs' command) is in LD_LIBRARY_PATH or
        equivalent variable and wxWidgets version is 3.0.2 or above.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 04:27 (Domingo)
el de filezilla es normal...hasta que no metas la otra , nanai.

aunque no deberia de haberte dejado seguir si no tienes wxGTK3


/opt/wifislax-updaters/Librerias/wxGTK3_updater


antes
tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*

despues
tar xvf $SRCNAM-$VERSION.tar.bz2

con ese cambio ya deberia funcionar.

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:29 (Domingo)
el de filezilla es normal...hasta que no metas la otra , nanai.


wxGTK3

ok, en la 4.9 paso lo mismo tuve que poner ima wxwidgets que ni recuerdo, pero pense que solo hacia falta para las versiones nuevas, no la otra



antes
tar xvf $CWD/$SRCNAM-$VERSION.tar.?z*

despues
tar xvf $SRCNAM-$VERSION.tar.bz2

con ese cambio ya deberia funcionar.


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 04:32 (Domingo)
vale . ya veo que filezilla ...lleva la funcion de autoresolverse las dependencias ...y al fallar pues se quedo a medias.

 ;D

se deberia resolver todo , cambiando la line que te dije en el wxGTK3_updater
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:35 (Domingo)
escomprimiendo ...
tar: /opt/wifislax-updaters/Librerias/wxWidgets-3.0.2.tar.bz2: Cannot open: No existe el fichero o el directorio
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:41 (Domingo)
rm -rf /tmp/build/wxGTK3
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 04:41 (Domingo)
fijate mas ...

has quitado el CWD ??


EJECUTALO DESDE EL MENU ... NI SE TE OCURRA LANZARLO TU A MANO ..POR QUE NO FUNCIONARA.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 04:42 (Domingo)
wxGTK3_updater


reparado

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150125

############################################################
## 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() {
WEB=http://sourceforge.net/projects/wxwindows/files/
VERSION=$(curl -s $WEB | grep -m1 "class=\"folder" | grep -Po 'title="\K.*(?=" )' | sed 's/ /%20/g')
PRGNAM=wxGTK3
SRCNAM=wxWidgets
DESCARGA=http://sourceforge.net/projects/wxwindows/files/$VERSION/$SRCNAM-$VERSION.tar.bz2
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 1
rm -rf $SRCNAM-$VERSION
tar xvf $SRCNAM-$VERSION.tar.bz2
cd $SRCNAM-$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 {} \;

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --enable-shared \
  --enable-mediactrl \
  --with-opengl \
  --enable-graphics_ctx \
  --with-gtk=3 \
  --enable-unicode \
  --build=$ARCH-slackware-linux

make
make install DESTDIR=$PKG

ln -fs /usr/lib${LIBDIRSUFFIX}/wx/config/gtk3-unicode-3.0 \
       $PKG/usr/bin/wx-config
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:43 (Domingo)
lo hice desde el menu

esultados de la descarga:
gid   |stat|avg speed  |path/URI
======+====+===========+=======================================================
9a13ee|OK  |   896KiB/s|/tmp/build/wxGTK3/wxWidgets-3.0.2.tar.bz2

Leyenda:
(OK):descarga completada.

Descomprimiendo ...
http://sourceforge.net/projects/wxwindows/files/3.0.2/wxWidgets-3.0.2.tar.bz2
tar: /opt/wifislax-updaters/Librerias/wxWidgets-3.0.2.tar.bz2: Cannot open: No existe el fichero o el directorio
tar: Error is not recoverable: exiting now


añadi echo para ver la ruta

ahora pruebo, tu ultimo code

me gusta lo manual, pero los menus tambien xd
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:46 (Domingo)
compilando esta xd
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 04:47 (Domingo)
compilando esta xd

pues el unico cambio es el que te di ... algo no copiaste bien madikita.

era la linea 47 creo ...

ya ves que es code HIPERSENCILLO ...

este en concreto es que es un pelin mas avanzado que otos updaters, ya que el filezilla puede resolverse alguna dependencia el solito.  ;D

si lanzas directamente el filezilla, y no tienes la libreria, la compilaria antes de seguir con filezilla.



PD:  ERA LA LINEA 42 , LA QUE HABIA QUE TOCAR-  ;D  en el wxGTK3_updater


el de filezilla no habia que tocarlo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 04:58 (Domingo)
he resubido el paquete a mediafire reparado

http://www.mediafire.com/download/r0zl321227smvg4/wifislax_updaters-3.3-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 25-01-2015, 04:58 (Domingo)
Citar
wxGTK3_updater

ese toque

en todo caso es igual ya esta rulando
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 05:08 (Domingo)
Citar
wxGTK3_updater

ese toque

en todo caso es igual ya esta rulando

si lo lanzaste ese ...pues depsues ya el filezilla


y si lanzast el filezilla...pues cuando acabe con esa..seguria la otra ..en escritorio te dejara los xzm , por si usas modo livecd  ;D , si no  ..los puedes borrar.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 05:09 (Domingo)
nos quedo pendiente el updater de java sdk ...    ^-^ ^-^ ^-^ ^-^
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 25-01-2015, 05:54 (Domingo)
la ultima joda del dia que hacemo con ese paquete gt3-va haber updater o....

(http://i.imgur.com/foz5xGo.png)


perdonenmesi la solucion es facil, pero haora no me sale....  ^-^ ^-^ ^-^


 ;) >:( >:( >:( >:(

perdon, perdon ya lo vi es wx gtk3_updater   no dije nada, ni escribi ni posteeee ni puse imagen,  ;D ;D ;D ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-01-2015, 06:01 (Domingo)
? y si instalas wxGTK3 ?  ;D

ACTUALIZADORES --> LIBRERIAS -> WXGTK3


Es uno nuevo .. ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 25-01-2015, 11:02 (Domingo)
Joer con las librerías wx

No sabia que daba tanto follón jajajaja

Buen trabajo @USUARIONUEVO!

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 26-01-2015, 00:58 (Lunes)
:( :( :( :( :( :( :( :( :( :(

estodebe a un error mio???

Version Script: 25/01/2015

Descargando sources de wxGTK3-3.0.2
[#1793c2 19MiB/19MiB(99%) CN:1 DL:366KiB]                                        
01/25 20:53:06 [NOTICE] Descarga completa: /tmp/build/wxGTK3/wxWidgets-3.0.2.tar.bz2

Resultados de la descarga:
gid   |stat|avg speed  |path/URI
======+====+===========+=======================================================
1793c2|OK  |   345KiB/s|/tmp/build/wxGTK3/wxWidgets-3.0.2.tar.bz2

Leyenda:
(OK):descarga completada.

Descomprimiendo ...
tar: /opt/wifislax-updaters/Librerias/wxWidgets-3.0.2.tar.?z*: Cannot open: No existe el fichero o el directorio
tar: Error is not recoverable: exiting now
 

 ???


perdon ususario nuevo, no pude poner la imagen el problema es este, no me la instala...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 01:04 (Lunes)
:( :( :( :( :( :( :( :( :( :(

estodebe a un error mio???

(http://imgur.com/zkF4p6n)


 ???
(http://)

YA TE RESPONDI ... instala wxGTK3 , categoria LIBRERIAS ....

despues ya podras instalar dvdstyler.


Bueno , acabo de ver que al final la viste e instalaste  ;D

vk se refiere a que dan guerra las librerias , por que cada paquete necesita una cosa distinta de la misma libreria ...  ;D ;D ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 01:08 (Lunes)
para futuras dudas ..


cuando un updater diga dependencia NO INSTALADA


buscad en los updaters que lo que necesite esta hay segurisimo.

si no seria absurdo crear updaters que no pueden instalar , ¿verdad?


cuando os diga que algo no esta instalado , mirad los updaters ... ;)

si por un casual no lo veis o no lo teneis, usad el actualizador de updaters ..por si es uno nuevo y esta en el ftp , os lo bajara e instalara.  ;)

ademas de actualizar los que tengais viejos.  >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 26-01-2015, 01:16 (Lunes)


YA TE RESPONDI ... instala wxGTK3 , categoria LIBRERIAS ....

despues ya podras instalar dvdstyler.


Bueno , acabo de ver que al final la viste e instalaste  ;D

vk se refiere a que dan guerra las librerias , por que cada paquete necesita una cosa distinta de la misma libreria ...  Version Script: 25/01/2015




el problema ahora es que no instala....
 quise poner la imagen y no me dejaba....
hay abajo te puse que lo me dice...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 01:33 (Lunes)
BAJATE EL PAQUETE DE UPDATERS DE NUEVO ...


ESE FALLO LO CORREGI


vuelvete a bajar e instalar el xzm de los updaters

o bien , usa el

wifislax-updaters ..  para que te lo baje del ftp , y te añada uno nuevo que escribi hoy.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 01:34 (Lunes)
por cierto acaba de salir version de smplayer


el updater falla en la descarga  ..


aqui lo dejo arreglado

smplayer_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150126
CATEGORIA="Reproductores multimedia"

############################################################
## 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() {
WEB=http://smplayer.sourceforge.net/es/downloads
VERSION=`curl -s $WEB | grep .tar.bz2 | head -1 | cut -d ":" -f2 | cut -d "/" -f5 | cut -d- -f-2 |cut -d- -f2 |sed 's/.tar.bz2">smplayer//g' |sed "s/ //g"`
PRGNAM=smplayer
DOWNLOAD="http://sourceforge.net/projects/smplayer/files/latest/download?source=files"
}

# 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 3
aria2c -x 3 $DOWNLOAD
fi
}

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.bz2
cd $PRGNAM-$VERSION
# Configuramos paquete
echo ""
echo "$VERDE"Configurando y compilano..."$CIERRE"
sleep 3
chown -R root:root .

sed -i "/^PREFIX/s/=.*$/=\/usr/;
        /^DOC_PATH/s/\/.*$/\/doc\/$PRGNAM-$VERSION/;
        s/share\/man/man/g;
        s/^QMAKE_OPTS=/QMAKE_OPTS+=/" Makefile

QMAKE_OPTS="QMAKE_CXXFLAGS=\"$SLKCFLAGS\"" \
make
make install DESTDIR=$PKG
}

###################################
## 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 script
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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 01:38 (Lunes)
como el ftp igual esca caido os dejo un nuevo xzm ,con smplayer arreglado y el updater nuevo

http://www.mediafire.com/download/3k3l1hz5xrzny8s/wifislax_updaters-3.4-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 26-01-2015, 01:55 (Lunes)
como el ftp igual esca caido os dejo un nuevo xzm ,con smplayer arreglado y el updater nuevo

http://www.mediafire.com/download/3k3l1hz5xrzny8s/wifislax_updaters-3.4-noarch-1sw.xzm


oki, descargo de nuevo,
te cuento lo que me pase, yo baje el segundo que pusiste  y es el que esta instalado....
la cuestion que con ese me dio ese error desde elliveusb   con otros modulos...
ahora  inicie en virtualbox dees la imagen (sin changes.dat) y me lo esta isntalando...


 ??? ??? ??? que es lo que pasa nose, te digo por si hay problema con algun otra cosa....

yo baje el ultimo modulo que pusiste, y ahora pruebo cambiandolo...


JOYA JOYA  JOYA JOYA, TODO FUNCIONA BIEN!!!!
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 02:06 (Lunes)
estoy empezando a odiar profundamente el uso del changes ...


el changes se penso para guardar pequeños cambios, fonde pantalla y esas cosas.


pero ocurre que claro , guarda por ejemplo la config del equipo ..y si despues lo tratas de arrancar en otro ordenador, seguro que algo no funcionara.

changes.dat = acaba corrompiendo sistemas

aunque siempre puedes hacer la prueba de arrancar sin changes ..osea desde el live , arranque normal.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 26-01-2015, 02:27 (Lunes)
estoy empezando a odiar profundamente el uso del changes ...


el changes se penso para guardar pequeños cambios, fonde pantalla y esas cosas.


pero ocurre que claro , guarda por ejemplo la config del equipo ..y si despues lo tratas de arrancar en otro ordenador, seguro que algo no funcionara.

changes.dat = acaba corrompiendo sistemas

aunque siempre puedes hacer la prueba de arrancar sin changes ..osea desde el live , arranque normal.


me gusta usarlo asi, por que te salva, hay soluciones para eso, tenes dos chages.dat uno para el equipo personal y el dsegundo para los demas...

yo igual no lo pruebo en dos equiposdiferentes, al changes.dat

espero que no lo odies, osea que yo sea quien te saque de las casillas, si lo hago lo siento...

contantas pruebas y despruebas se me confunde todo, ensima taba haciendo y probando otras cosas,
hasta que paro todo y empiezo de cero,

cuando tenga lsta pc lista o una nueva prometo instalarlo...
 
yo por hay aporto para que si encuentra un problema, capaz que no soy solo yo...
 
pero si el changes.dat  tiene sulimite, y es uso reponsabilidad de cada usuario...


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 26-01-2015, 09:00 (Lunes)
lo siento, yo de nuevo...
 
usando la live no funciona Dvd-style aparece el cuadro de seleccion de idioma y luego nada...

el modulo esta actualizado...  baje el modulo de wxGTK3... y nada... con el mod wifislax_updaters-3.4-noarch-1sw.xzm...    todo junto no pasa nada...

quise actualizar  dvdauthory ... lo desintala  lodescarga... Descomprime ... lo  configura... lo compila...

Y...

"compilación terminada.
make[2]: *** [subgen-image.o] Error 1
make[2]: *** Se espera a que terminen otras tareas....
mv -f .deps/subrender.Tpo .deps/subrender.Po
make[2]: se sale del directorio `/tmp/build/dvdauthor/dvdauthor/src'
make[1]: *** [all] Error 2
make[1]: se sale del directorio `/tmp/build/dvdauthor/dvdauthor/src'
make: *** [all-recursive] Error 1"

 :( :(

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 11:13 (Lunes)
si es que no se para que tocais ..


version dvdauthor de sistema

0.7.1

la mas nueva


0.7.1

aun asi vas y le das..y por lo que veo ni salvaste en xzm por si acaso  ;D


____________________________

con gslapt reinstala la libreria imagemagick

y copilara el dvdauthor.

no se por que esa libreria pierde ficheros ...  me tiene hasta el as alla .
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Hwagm en 26-01-2015, 11:32 (Lunes)
ahora si puedo entrar al server  ??? ah vale eera anoche

respecto a los changes, no es mejor usar la opcion del menu salvar cambios a xzm???

anoche tampoco podia entrar a las webs, pero creo que solo me paso a mi

no se si se cayo todo

ahora si puedo entrar al server
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 12:19 (Lunes)
sip , es mejor usar esa opcion ,pero la gente tira del changes...


dvdstyler , confirmado , tiene pegas por que detecta wxgtk2 y gtk3  y dice que con los dos NO.  ;D

lo estoy mirando.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 12:40 (Lunes)
para el problema de dvdstyler


1 - instalar las wxGTK3
2 - REINSTALAR wxsvg
3 - instalar dvdstyler

___________________________________________

el problema es que wxsvg es como un plugin , y estaba compilado hacia la version 2.8

casi todo tira de gtk3 asi que el unico que crea conflicto por necesitar una version gtk2 es audacity , pero se arregla tocandole la config


mirad wx-config ahora apuntara a 2.8 en la config , pero no en sistema donde apuntara hacia version3 asi el reto de programas y demas no tendran problemas.

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
WX_CONFIG=/usr/bin/wx-config-2.8 ./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --disable-dynamic-loading \
  --with-libvamp \
  --enable-unicode \
  --enable-nyquist \
  --enable-vamp \
  --with-expat \
  --with-libvorbis \
  --with-libmad \
  --with-libflac \
  --with-libsndfile \
  --with-libid3tag \
  --with-libresample \
  --with-ffmpeg \
  --with-soundtouch \
  --with-libtwolame
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 13:05 (Lunes)
en realidad es asi para audacity ...


WX_CONFIG=/usr/lib/wx/config/gtk2-unicode-release-2.8 ./configure \


acabo de compilar todos a la vez


filezilla
dvdstyler
audacity

y usando a la vez wx 2 y 3  ;D  >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-01-2015, 13:24 (Lunes)
PAQUETE ACTUALIZADO , espero no tener que tocar mas el tema wxGTK , que ya me lleva frito  ;D

http://www.mediafire.com/download/aakyrsq42v40b7w/wifislax_updaters-3.4-noarch-2sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 26-01-2015, 15:12 (Lunes)
 >:(

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 26-01-2015, 15:50 (Lunes)
Me han saltado varias actualizaciones, he creado los modulos y al reiniciar una de ellas me vuelve a saltar (pysetuptools), captura (picar en la imagen para ampliar):

(http://es.zimagez.com/miniature/instantnea112.png) (http://es.zimagez.com/zimage/instantnea112.php)

Editado:

He usado el actualizador de wine y cuando ejecuto algún juego por ejemplo me dice que no se encuentra Gecko, que si quiero que wine lo instale.

Si cancelo o si lo actualizo las aplicaciones funcionan bien y el mensaje solo sale una vez, capturas (picar en las imagegenes para ampliar):

(http://es.zimagez.com/miniature/instantnea26.png) (http://es.zimagez.com/zimage/instantnea26.php)

(http://es.zimagez.com/miniature/instantnea33.png) (http://es.zimagez.com/zimage/instantnea33.php)

(http://es.zimagez.com/miniature/instantnea41.png) (http://es.zimagez.com/zimage/instantnea41.php)

(http://es.zimagez.com/miniature/instantnea50.png) (http://es.zimagez.com/zimage/instantnea50.php)

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 26-01-2015, 19:08 (Lunes)
si es que no se para que tocais ..


version dvdauthor de sistema

0.7.1

la mas nueva


0.7.1

aun asi vas y le das..y por lo que veo ni salvaste en xzm por si acaso  ;D


____________________________

con gslapt reinstala la libreria imagemagick

y copilara el dvdauthor.

no se por que esa libreria pierde ficheros ...  me tiene hasta el as alla .

entiendo pero, con la version 4.10  descargue todo denuevo y funciono, por eso lo hice...

sumado a toda ladescargada y reinstalacion...
para el problema de dvdstyler


1 - instalar las wxGTK3
2 - REINSTALAR wxsvg
3 - instalar dvdstyler

tambien lo hice...

una vez guarde los cambios en xzm , pero nunca funciono, asique no me llamo volver a usarlo...
preferi hacer copia delchanges dat, pero, para no hacer copias y copias.... hice los updates de la misma version para ver si se reparaba...

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 26-01-2015, 22:08 (Lunes)
pues primero utilizo el updater wxGTK3 despues el de dvdstyler y no me arranca,por consola dice

wifislax ~ # dvdstyler

(dvdstyler:1624): Gtk-ERROR **: GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported
`trap' para punto de parada/seguimiento
wifislax ~ #

despues utilizo el updater wxsvg,desinstala y instala y ejecuto dvdstyler y me sale lo de seleccionar idioma le doy a ok y desaparece  ??? ??? ??? ,por consola ahora me dice

wifislax ~ # dvdstyler
dvdstyler: Symbol `_ZTV9wxSVGCtrl' has different size in shared object, consider re-linking
Violación de segmento
wifislax ~ #

la verdad que las wxgtk son porculeras,otro updater que no me va es el de sigram

  ******************************
           Actualizador/Instalador   
           Paquete: sigram
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 01/11/2014

Descomprimiendo ...
chmod: falta un operando después de «+x»
Try 'chmod --help' for more information.
wifislax Internet #


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Garcad en 27-01-2015, 00:46 (Martes)


        ******************************
           Actualizador/Instalador   
           Paquete: smplayer
                                   
           www.seguridadwireless.net 
        ******************************

Version Script: 30/12/2014

La version del sistema es...smplayer-14.9.0

__________________________________________

La version mas nueva en su pagina web es...smplayer-14.9.0.6690

Pulsa ENTER si deseas actualizarla


1 - Crear backup de smplayer-14.9.0
2 - No crear backup de smplayer-14.9.0

 #> 1


Guardando backup de la version del sistema...

Si necesitaras reutilizarla solo cambia la extension .backup por .xzm


Parallel mksquashfs: Using 2 processors
Creating 4.0 filesystem on /root/xzm_backups/smplayer-14.9.0.backup, block size 262144.
[================================================================================================-] 28/28 100%

Exportable Squashfs 4.0 filesystem, xz compressed, data block size 262144
        compressed data, compressed metadata, compressed fragments, compressed xattrs
        duplicates are removed
Filesystem size 1202.65 Kbytes (1.17 Mbytes)
        35.14% of uncompressed filesystem size (3422.17 Kbytes)
Inode table size 494 bytes (0.48 Kbytes)
        29.94% of uncompressed inode table size (1650 bytes)
Directory table size 530 bytes (0.52 Kbytes)
        45.38% of uncompressed directory table size (1168 bytes)
Number of duplicate files found 0
Number of inodes 50
Number of files 17
Number of fragments 3
Number of symbolic links  0
Number of device nodes 0
Number of fifo nodes 0
Number of socket nodes 0
Number of directories 33
Number of ids (unique uids + gids) 1
Number of uids 1
        root (0)
Number of gids 1
        root (0)




El paquete del sistema fue salvado en /root/xzm_backups/smplayer-14.9.0*.backup

Eliminando la version del sistema...

Removing package /var/log/packages/smplayer-14.9.0-i486-1sw...
Removing files:
  --> Deleting /usr/bin/smplayer
  --> Deleting /usr/share/applications/smplayer.desktop
  --> Deleting /usr/share/applications/smplayer_enqueue.desktop
  --> Deleting /usr/share/icons/hicolor/128x128/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/16x16/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/192x192/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/22x22/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/256x256/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/32x32/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/512x512/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/64x64/apps/smplayer.png
  --> Deleting /usr/share/icons/hicolor/scalable/apps/smplayer.svg
  --> Deleting /usr/share/smplayer/input.conf
  --> Deleting /usr/share/smplayer/shortcuts/default.keys
  --> Deleting /usr/share/smplayer/shortcuts/euskara.keys
  --> /usr/share/smplayer/translations/smplayer_ar.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ar_SY.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_bg.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ca.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_cs.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_da.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_de.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_el_GR.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_en_GB.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_en_US.qm no longer exists. Skipping.
  --> Deleting /usr/share/smplayer/translations/smplayer_es.qm
  --> /usr/share/smplayer/translations/smplayer_et.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_eu.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_fi.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_fr.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_gl.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_he_IL.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_hr.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_hu.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_id.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_it.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ja.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ka.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ko.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ku.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_lt.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_mk.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ms_MY.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_nl.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_nn_NO.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_pl.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_pt.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_pt_BR.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ro_RO.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_ru_RU.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_sk.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_sl_SI.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_sr.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_sv.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_th.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_tr.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_uk_UA.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_uz.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_vi_VN.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_zh_CN.qm no longer exists. Skipping.
  --> /usr/share/smplayer/translations/smplayer_zh_TW.qm no longer exists. Skipping.
  --> Deleting /var/log/packages/smplayer-14.9.0-i486-1sw
  --> Deleting empty directory /usr/share/smplayer/translations
  --> Deleting empty directory /usr/share/smplayer/shortcuts
  --> Deleting empty directory /usr/share/smplayer
  --> Deleting empty directory /usr/share/icons/hicolor/512x512/apps
  --> Deleting empty directory /usr/share/icons/hicolor/512x512
mv: cannot stat '/var/log/packages/smplayer-14.9.0-i486-1sw': No such file or directory

Descargando sources de smplayer-14.9.0.6690

01/27 00:45:26 [ERROR] CUID#6 - Download aborted. URI=http://downloads.sourceforge.net/project/smplayer/SMPlayer/14.9.0.6690/smplayer-14.9.0.6690.tar.bz2
Exception: [AbstractCommand.cc:350] errorCode=3 URI=http://downloads.sourceforge.net/project/smplayer/SMPlayer/14.9.0.6690/smplayer-14.9.0.6690.tar.bz2
  -> [HttpSkipResponseCommand.cc:215] errorCode=3 Recurso no encontrado

01/27 00:45:26 [NOTICE] Download GID#41f76485a31f7123 not complete:

Resultados de la descarga:
gid   |stat|avg speed  |path/URI
======+====+===========+=======================================================
41f764|ERR |       0B/s|http://downloads.sourceforge.net/project/smplayer/SMPlayer/14.9.0.6690/smplayer-14.9.0.6690.tar.bz2

Leyenda:
(ERR):a ocurrido un error.

Si reinicia la transferencia, aria2 continuará con la descarga.
Compruebe el archivo de registro si se producen errores. Para más información vea la opción '-l' en las páginas help/man.
wifislax Multimedia #
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 27-01-2015, 00:57 (Martes)
Cuando tengáis problemas con un updater, la mayoría de las veces se debe al nombre del archivo completo (ya sea para descargar o para extraer).

Estoy desde móvil, no puedo echar una mano. Sorry

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-01-2015, 09:39 (Martes)
EL UPDATER DE SMPLAYER ESTA MAS QUE REPATADO HACE 2 DIAS

aunque aun no esta en el ftp , pero lo deje aqui en el mnodulo xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-01-2015, 09:53 (Martes)
uopdaters actualizados en el ftp.



me falta mirar lo de wine ...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-01-2015, 11:07 (Martes)
arreglado el tema de wine que no ve el plugin gecko ...


solo habia que dar permiso de ejecucion al plugin gecko ...si no wine no puede ejecutarlo.

es raro,por que antes no era necesario pero en fins.



hay va

wine_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150127

#################################################
## 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=wine
WEB=http://sourceforge.net/projects/wine/files/Slackware%20Packages/
VERSION=$(curl -s $WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
GECKO_WEB=http://sourceforge.net/projects/wine/files/Wine%20Gecko/
GECKO_VERSION=$(curl -s $GECKO_WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
MONO_WEB=http://sourceforge.net/projects/wine/files/Wine%20Mono/
MONO_VERSION=$(curl -s $MONO_WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION-$ARCH-1sg.txz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
aria2c -x 3 $WEB/$VERSION/$ARCH/$PRGNAM-$VERSION-$ARCH-1sg.txz
fi
# Si gecko no existe se descargara de internet
if [ ! -f ${PRGNAM}_gecko-$GECKO_VERSION-x86.msi ]; then
echo ""
echo "$CYAN"Descargando plugin ${PRGNAM}_gecko-$GECKO_VERSION-x86.msi"$CIERRE"
sleep 3
aria2c -x 3 $GECKO_WEB/$GECKO_VERSION/${PRGNAM}_gecko-$GECKO_VERSION-x86.msi
fi
# Si mono no existe se descargara de internet
if [ ! -f ${PRGNAM}-mono-$MONO_VERSION.msi ]; then
echo ""
echo "$CYAN"Descargando plugin ${PRGNAM}-mono-$MONO_VERSION.msi"$CIERRE"
sleep 3
aria2c -x 3 $MONO_WEB/$MONO_VERSION/${PRGNAM}-mono-$MONO_VERSION.msi
fi
}

# Tareas de conversion de formato
F_compilar(){
echo ""
echo "$VERDE"
txz2dir $PRGNAM-$VERSION-$ARCH-1sg.txz $PKG
mkdir $PKG/usr/share/wine/gecko $PKG/usr/share/wine/mono
mv ${PRGNAM}_gecko-$GECKO_VERSION-x86.msi $PKG/usr/share/wine/gecko
mv ${PRGNAM}-mono-$MONO_VERSION.msi $PKG/usr/share/wine/mono
rm $PKG/var/log/packages/wine*
# El desktop winecfg viene mal ..se repara
rm $PKG/usr/share/applications/winecfg.desktop
echo "[Desktop Entry]
[Desktop Entry]
Categories=Application;Settings
Comment=Settings Tool for WINE
Encoding=UTF-8
Exec=winecfg
Icon=winecfg
Name=Wine Configuration
Terminal=false
Type=Application
" > $PKG/usr/share/applications/winecfg.desktop

# Se da permiso de ejecucion a los plugins
chmod 777 $PKG/usr/share/wine/gecko/${PRGNAM}_gecko-$GECKO_VERSION-x86.msi
chmod 777 $PKG/usr/share/wine/mono/${PRGNAM}-mono-$MONO_VERSION.msi
}

###################################
## 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 script
f_versionInstalada
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-01-2015, 11:21 (Martes)
modulo actualizado

http://www.downloadwireless.net/modulos/wifislax-4-10-1/wifislax_updaters-3.5-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 27-01-2015, 13:47 (Martes)
modulo actualizado

http://www.downloadwireless.net/modulos/wifislax-4-10-1/wifislax_updaters-3.5-noarch-1sw.xzm

He usado este nuevo modulo y me temo que el wine se sigue quejando del Gecko.

Esta tarde cuando tenga un ratito lo miro con mas calma.

Editado:

Pues sí, he comprobado que la nueva versión del script cambia los permisos de ejecución, pero la primera vez que ejecutas cualquier programa se queja del Gecko, despues puedes ejecutar cualquier cosa que ya no se queja.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-01-2015, 18:19 (Martes)
modulo actualizado

http://www.downloadwireless.net/modulos/wifislax-4-10-1/wifislax_updaters-3.5-noarch-1sw.xzm

He usado este nuevo modulo y me temo que el wine se sigue quejando del Gecko.

Esta tarde cuando tenga un ratito lo miro con mas calma.

Editado:

Pues sí, he comprobado que la nueva versión del script cambia los permisos de ejecución, pero la primera vez que ejecutas cualquier programa se queja del Gecko, despues puedes ejecutar cualquier cosa que ya no se queja.

Un saludo.

pero eso seguramente se debe a que ya habias ejecutado antes wine , y tenias la carpeta

/root/.wine

yo lo probe en limpio y todo ok .. no había quejas de gecko.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 27-01-2015, 19:22 (Martes)

pero eso seguramente se debe a que ya habias ejecutado antes wine , y tenias la carpeta

/root/.wine

yo lo probe en limpio y todo ok .. no había quejas de gecko.

Cocuerdo con esto, yo tuve peleando con dvdstyler... desintala todo...
pasa bleachbit...  libera memoria...

luego desde cero...tranquilo y fijate si en las uppdates hay alguna que se libreria o adoons o algo, instalala las updater del gui...

y tiene que andar...



Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 27-01-2015, 22:20 (Martes)
Live USB limpia con los módulos:

029-Driver_nvidia-340.58-i486_smp-6sw_wifislax_4.10.1.xzm
wifislax_updaters-3.5-noarch-1sw.xzm

Llamo al instalador del Wine, termina el proceso y el módulo resultante lo meto en la carpeta modules de la LiveUSB.

Reinicio y compruebo que el módulo se carga en el inicio sin errores.

Abro el Dolphin y busco cualquier ejecutable de Guindows, le doy doble click, el wine dice que se está iniciando por primera vez y está actualizando la configuración y zas... mensajito del Gecko.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 28-01-2015, 23:32 (Miércoles)
zenity_updater
Código: [Seleccionar]
#!/bin/sh

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150128

############################################################
## 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=zenity
WEB=http://ftp.acc.umu.se/pub/gnome/sources/$PRGNAM/
RAMA=`curl -s $WEB | grep -o -E 'href="([^"#]+)"' | grep "/" | tail -1 | cut -d '"' -f2 | cut -d "/" -f-1`
VERSION=`curl -s ${WEB}${RAMA}/ | grep .xz | tail -1 | cut -d "-" -f2 | cut -d "t" -f1 | sed "s/.$//g"`
DOWNLOAD=${WEB}${RAMA}/$PRGNAM-$VERSION.tar.xz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.xz ]; 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.xz
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 {} \;

echo
echo "$VERDE"Configuramos ..."$CIERRE"
sleep 1
 
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --enable-debug=no \
  --enable-libnotify \
  --build=$ARCH-slackware-linux
 
echo
echo "$VERDE"Compilamos ..."$CIERRE"
sleep 1

make
make install-strip DESTDIR=$PKG
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 29-01-2015, 21:04 (Jueves)
                               hola, aca tirando datos,   aqui me aparecen estas actualizaciones...


                    (http://i.imgur.com/ZmFrBtX.png)


donde aparece pysetuptools-12.0.5 , y lo acabo de instalar.... el wine no lo instalao hasta que se solucione...


y aca tenemos otro error con los updaters (no es updater seria instalacion, lo instalo por primera vez) o yo estoy haciendo algo mal...


                 (http://i.imgur.com/XWtUb9j.png)


                                        ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 29-01-2015, 22:28 (Jueves)
TRANSMISSION , parece que esta fallando en coger el numero de version.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-01-2015, 00:06 (Viernes)
transmission_updater reparado


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150130

############################################################
## 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() {
WEB=https://www.transmissionbt.com/
VERSION=`curl -s $WEB | grep Changes | cut -d "-" -f2 | cut -d '"' -f1`
PRGNAM=transmission
DOWNLOAD=https://$PRGNAM.cachefly.net/$PRGNAM-$VERSION.tar.xz
}

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

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
rm -rf $PRGNAM-$VERSION
tar xvf $PRGNAM-$VERSION.tar.xz
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 {} \;
}

#Compilando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 1

sed -i -e 's%-g -O3 -funroll-loops %%g' configure.ac
sed -i -e 's%-ggdb3 %%g' configure.ac

# Fix hard-coded path of man file of Qt client
sed -i "s|share/man/|man/|" qt/qtr.pro

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --disable-static \
  --with-gtk \
  --verbose \
  --build=$ARCH-slackware-linux \
  --host=$ARCH-slackware-linux
 
echo ""
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
make -j$NUCLEOS
echo ""
echo "$VERDE"Instalando ..."$CIERRE"
sleep 1
make install DESTDIR=$PKG
}


###################################
## 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 script
f_versionInstalada
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 30-01-2015, 00:59 (Viernes)
transmission_updater reparado



 >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( >:( gracias!!!!!!
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-01-2015, 22:34 (Viernes)
Que fuerte me parece esto ...

acabo de ver que tengo los upadters algunos mas viejos que los que publique por aqui ya reparados ...

audacity
dvdstyler y alguno mas ...  los llevo masl.

y seguram,ente los xzm que puse por aqui esten mal tambien ..    :-\ :-\ :-\ :-\ :-\ :-\


Desde que se me ha muerto el pendrive que usaba para el desarrollo , no encuentro otro, que me funcione igual de bien ...  psss,   guardo los files, y despues nada, como si nada.  siguen los viejos.  :'(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 31-01-2015, 00:37 (Sábado)
Que fuerte me parece esto ...
...
   ...

Desde que se me ha muerto el pendrive que usaba para el desarrollo , no encuentro otro, que me funcione igual de bien ...  psss,   guardo los files, y despues nada, como si nada.  siguen los viejos.  :'(
que marca de pen utilizas???
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 01:49 (Sábado)
El que uso ahora se supone es bueno -.-

es un sandisk ultra de 16gb

abrire uno que tengo aun con el bliter  ..  un toshiba de 32gb a ver.


usaba antes un lexar de 32gb usb 3.0   ..el mejor que he tenido , de lejos


(http://i.ebayimg.com/00/s/NTMyWDYwMA==/z/IvEAAOxyUrZS4ApV/$_35.JPG)

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-01-2015, 02:28 (Sábado)
Pues yo tenia justo el mismo Lexar (de 64Gb, verde),  y la palmó en un año... xD

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 02:50 (Sábado)
Pues yo tenia justo el mismo Lexar (de 64Gb, verde),  y la palmó en un año... xD

Salu2

el mio me lo cargue yo ... por querer arreglar el mundo yo solo ...

(post de error al montar particiones ext3 y no poder escribir y bla bla bla)

no se que hice que ya ni es reconocido el pobre pendrive ... (probe un millon de programas ..no es lo tipico de particion no legible ni nada de eso..se quedo..que ya lo pinchas al pc y ni se enciende)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 02:52 (Sábado)
NO veas que panzada de pelear con las wx .... ^-^


ya tenia todo bien , pero en wxhexeditor , al compilar contra gtk3 ,salia un warning ...chungo.


asi que he forzado a que se compile contra gtk2 , que es la suya ...


CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \

# Forcemos wx-config-2.8
sed -i 's/wx-config/wx-config-2.8/g' Makefile

make
make install DESTDIR=$PKG
find $PKG -type f -name *.desktop -exec sed -i 's/Categories=Utility/Categories=Development/g' {} \;
mv $PKG/usr/local/* $PKG/usr
rmdir $PKG/usr/local
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 31-01-2015, 03:02 (Sábado)

no se que hice que ya ni es reconocido el pobre pendrive ... (probe un millon de programas ..no es lo tipico de particion no legible ni nada de eso..se quedo..que ya lo pinchas al pc y ni se enciende)

es un fusible que le salta, un integrado igualado a un a un fusible, los datos estan. sepuede puentear pero es trabajo micro...

hablas de 32 y 64 como nada yo te iba enviar uno de 16 microcenter, hace años que los uso y andan joya...

pero igual, se trata de los datos.... ^-^
pero bue iba hacer mi pequeña colaboracion... >:D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 03:02 (Sábado)
PARCHES PARA WX LIBRERIAS

El paquete contiene

wxPython
wxGTK3
wxsvg

recompiladas , reconfiguradas  ...


si ya tenias algun modulo de estas ..ELIMINALO Y USA ESTE PAQUETE.

si estas en HDD , con qtgzmanager , podeis buscar los paquetes , eliminarlos..y por ultimo instalar este todo en uno nuevo.

o desde consola


removepkg wxPython
removepkg wxGTK3
removepkg wxsvg

si os dice que alguno no lo teneis pues sin rpoblemas...


por ultimo

meteis este..con click derecho ..autoinstalar

http://www.mediafire.com/download/19d22pn654ppg8t/00-wxlibs-patch.xzm

SI USAIS MODO LIVE Y VAIS A USAR EL XZM EN MODULES RESPETARLE EL NAME Y BORRAD SI TENEIS ALGUNA DE LAS LIBS EN OPTRO MODULO DENTRO DE MODULES



____________________________________________________________

paquete actualizado con los updaters ya parcheados y todo funcional ... si teniais algun modulo ya hecho de

dvdstyler
wxhexeditor
filezilla

lo mismo , eliminarlos y crearlos on los nuevos updaters.

http://www.mediafire.com/download/ip99pf2w52r2kk5/wifislax_updaters-3.7-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 03:05 (Sábado)

no se que hice que ya ni es reconocido el pobre pendrive ... (probe un millon de programas ..no es lo tipico de particion no legible ni nada de eso..se quedo..que ya lo pinchas al pc y ni se enciende)

es un fusible que le salta, un integrado igualado a un a un fusible, los datos estan. sepuede puentear pero es trabajo micro...

hablas de 32 y 64 como nada yo te iba enviar uno de 16 microcenter, hace años que los uso y andan joya...

pero igual, se trata de los datos.... ^-^
pero bue iba hacer mi pequeña colaboracion... >:D

gracias , los datos ya no habia nada , se perdio todo ... por hacer el ******.  :'(

para tratar de rescatarlo cuando aun se encendia , le hice incluso un formato a bajo nivel (llenarlo todo de ceros o unos ) , pero nada ..al final murio en acto de servicio.

como digo , me he juntado con al menos 5 o 6 pendrives ... el sandisk

read 100 megas segundo
write 30 y pico

pero no se que paso, que los updaters no se me guardaron ..  suelo guardarlos en un xzm ,  en la propia iso de desarrollo , y despues en una carpeta a parte ..osea 3 veces 

al final vi que los de la carpeta si estaban al dia  ;D  ..de la carpeta es de donde subo al ftp.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 03:41 (Sábado)
que bueno

sale el kernel 3.12.37

y el updater falla, aunque no es culpa suya.


el sr que desarrolla el parchea aufs ... decidio quitar el soporte para las ramas


3.9
3.10
3.11
3.12
3.13


las demas las entiendo , pero la 3.12 siendo un longterm , no lo entiendo.

si no consigo arreglarlo , me tocara subir de version de kernel  ;D (de rama)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 04:39 (Sábado)
ains , que mal pinta jajajaj  ;D

3.12 fail
3.14 fail
3.18 fail

 ;D

estoy provando el 3.17 , es si me compilaba hace unos dias, pero claro ya llego a EOL y es pronto para quedarse con el.

el 3.19-rc6 compila , pero me deja sin driver ati , hashcat , y probablemente nvidia .. ;D

tal vez cuando arreglen el aufs del 3.14 ,pueda valer para el 3.12  ^-^

_________________

hashcat solo acpeta de momento drivera ti 14.9  .. y ese driver soporta

Xorg/Xserver 7.4 and above (up to 1.15)
Linux kernel 2.6 or above (up to 3.15)


con lo que lo ideal seria subir a 3.14.XX ...cuando compile....aunque prefiriria seguir en 3.12

por el bug del rssi 00 en wash , con chips ath9k , casi un año ... y nada
https://www.google.es/?gws_rd=ssl#q=wash+rssi+00+ath9k
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 21:43 (Sábado)
pfff  , aun no lo puedo confirmar , estoy probando , pero creo tengo un gazapo IMPRESIONANTE

en el script de actualizar al kernel estable mas nuevo ...es decir el que supuestamente nos deberia compilar el kernel 3.18.5   ...


miremos esto ...

# Descargamos version de aufs correspondiente a nuestra rama y aplicamos
# Indicamos version aufs igual a rama de kernel
# Ruta donde se enviara patch de aufs que es a las sources del kernel
if [ $RAMA_STABLE = 3.12 ]; then
RAMA=3.12.31+
fi
if [ $RAMA_STABLE = 3.14 ]; then
RAMA=3.14.21+
fi
if [ $RAMA_STABLE = 3.18 ]; then
RAMA=3.18.1+
fi



absurdo ...

por que aufs , buscara $RAMA_STABLE  ...y redefino la bifurcacion de rama  en la variable $RAMA , que no es llamada despues sino

$RAMA_ESTABLE

git checkout origin/aufs$RAMA_STABLE || exit 1

una bifurcacion de rama, es cuando hay mas e un aufs , para la misma rama

por ejemplo

aufs3.18   es para kernel 3.18.0  y 3.18.1

pero

aufs3.18.1+  , es para kernel mas alto del 3.18.1  , osea el .2  , .3  etc etc etc


si no defino bien ese parametro ,intentara usar el aufs basico 3.18  , en el kernel 3.18.5  y solo conseguiremos un fail tremendo.


como digo estoy testeandolo , pero vamos ...al momento en el que baja el parche aufs, si subimos el scroll ,vemos perfectamente que hay esta el error, por que baja las ramas basicas, cuando para

3.12
3.14
3.18

hay variantes ...


deberia quedar asi


# Descargamos version de aufs correspondiente a nuestra rama y aplicamos
# Indicamos version aufs igual a rama de kernel
# Ruta donde se enviara patch de aufs que es a las sources del kernel
if [ $RAMA_STABLE = 3.12 ]; then
RAMA_STABLE=3.12.31+
fi
if [ $RAMA_STABLE = 3.14 ]; then
RAMA_STABLE=3.14.21+
fi
if [ $RAMA_STABLE = 3.18 ]; then
RAMA_STABLE=3.18.1+
fi



de todas formas la rama 3.12 , como digo ..se quedo sin aufs ..no se si podre apañarmelas , o habra movimiento ...en cuyo caso ire a lo mas alto.

incluso podria irme al 3.19-rc6   ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 22:17 (Sábado)
confirmado , soy un inutil  ;D

linux_stable_updater

REPARADO , acabo de compilar el 3.18.5 ... y yo cagandome en el chino de aufs  ^-^ >:D

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

# Script by USUARIONUEVO @ www.seguridadwireless.net

SCRIPT_VERSION=20150131


# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Nombre del script
# El PRGNAM2 se usa en la creacion del xzm ,NO BORRAR
PRGNAM3=linux
PRGNAM2=kernel
PRGNAM=linux_stable

# Bienvenida
clear
echo $ROSA
echo "
      __ __                 __  _____                _ __       
     / // /__ _______  ___ / / / ___/__  __ _  ___  (_) /__ ____
    / ,< / -_) __/ _ \/ -_) / / /__/ _ \/  ' \/ _ \/ / / -_) __/
   /_/|_|\__/_/ /_//_/\__/_/  \___/\___/_/_/_/ .__/_/_/\__/_/   
                                            /_/                  "
echo ""                                         
echo ""$AMARILLO"   ##### By USUARIONUEVO @ www.seguridadwireless.net #####"$CIERRE""
echo ""
sleep 3

# Si el sistema esta en modo live se avisa y se sale del script
if [ -d /mnt/live/memory ]; then
echo ""
echo ""$ROJO"Se ha detectado que el sistema esta en modo LIVE "$BLANCO"..."$CIERRE""
sleep 3
echo ""
echo ""$ROJO"Este script solo funcion en sistemas instalados al HDD "$BLANCO"..."$CIERRE""
sleep 3
echo ""$ROJO"Lo siento , el script se cierra aqui"$BLANCO"... "$ROJO"usalo desde HDD"$CIERRE""
sleep 3
exit 0
fi

# Si hay respuesta al ping el script continuara.
if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara..."$CIERRE"
echo ""
sleep 3
exit 0
fi

# Comprobar updates para el script
SERVIDOR_WEB="http://www.downloadwireless.net/wifislax-updaters"
DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)
SERVIDOR_VERSION=$(timeout -s SIGTERM 3 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)


echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
echo
echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
echo ${ROJO}NUEVA VERSION$CIERRE
echo
echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
echo
echo ${CYAN}Actualizando ${PRGNAM}_updater
curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
echo ${ROJO}LISTO$CIERRE
sleep 3
$0
exit
fi
fi

# Variables
# Definimos arquitectura del sitema anfitrion
if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i486 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# Aseguramos la existencia del directorio de compilacion y si no existe se crea
if [ ! -d /usr/src ]; then
mkdir -p /usr/src
fi

# Cantidad de nucleos del sistema usables para make -j
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)

# variable que restara un nucleo para reservarlo al sistema si hay mas de 2
if [ $NUCLEOS -gt 2 ]; then
let NUCLEOS=$NUCLEOS-1
fi

# Numero de modulo xzm
M0DNUM=000

# Nombre de modulo xzm
MODNAM=Kernel

# Numero de build
BUILD=1

# Numero de Kernel completo instalado en el sistema
KERNEL_SISTEMA=`uname -r | cut -d '-' -f1 | sed 's/ //g'`

# Rama de kernel eliminando del numero de kernel la parte final por ejemplo 3.12.4 se cortaria a 3.12
RAMA=`uname -r | cut -d '-' -f1 | cut -d "." -f-2 | sed 's/ //g'`


# Pagina web de kernel org donde se buscara actualizacion sobre la misma rama de nuestro kernel
WEB=https://www.kernel.org/

# Grepeando numero kernel mas nuevo para nuestra rama en kernel.org
KERNEL_STABLE=`curl -s $WEB | grep .tar.xz | head -1 | cut -d "-" -f2 | cut -d "t" -f-1 | sed "s/.$//g"`
RAMA_STABLE=`echo $KERNEL_STABLE | cut -d "." -f-2 | sed 's/ //g'`

# Web completa para descargar el source code
DESCARGA=https://www.kernel.org/pub/linux/kernel/v3.x/linux-$KERNEL_STABLE.tar.xz

# Comparamos version sistema con version online si son iguales se sale del script
if [[ $KERNEL_SISTEMA = $KERNEL_STABLE ]]; then
echo ""$VERDE"No hay updates para el kernel "$AMARILLO"$RAMA"$CIERRE""
sleep 3
echo ""$AMARILLO"Si quieres recompilar el mismo kernel pulsa "$ROJO"ENTER"$CIERRE""
echo ""
echo ""$AMARILLO"Si no quieres recompilar simplemente cierra la ventana"$CIERRE""
read junk
rm -Rf /usr/src/$PRGNAM3-$KERNEL_STABLE &>/dev/null
fi

# Si no son el mismo mostramos aviso
if [[ ! $KERNEL_SISTEMA = $KERNEL_STABLE ]]; then
echo ""
echo ""$AMARILLO"El kernel del sistema es:"$VERDE" $KERNEL_SISTEMA "$CIERRE""
echo ""
echo ""$AMARILLO"El kernel "$CYAN"ESTABLE"$AMARILLO" mas actual en la web es:"$VERDE" $KERNEL_STABLE "$CIERRE""
echo ""
echo ""$ROJO"Si estas usando el driver ATI/NVIDIA OFICIALES, puede que dejen de funcionar"$CIERRE""
echo ""
echo ""$AMARILLO"Si quieres actualizar el kernel pulsa "$ROJO"ENTER"$CIERRE""
echo ""
read junk
fi

# Se comprueba si el archivo a descargar ya existe por pruebas anteriores y evitar descargar de nuevo
# Entramos a la ruta de trabajo
cd /usr/src/

# Si el paquete no existe se descargara de internet
if [ ! -f linux-$KERNEL_STABLE.tar.xz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM3-$KERNEL_STABLE "$CIERRE"
sleep 3

# Bajamos el kernel
aria2c -x 3 $DESCARGA
fi

# Descomprimir en /usr/src
# Si existen restos de una prueba anterior seeliminaran
rm -rf /usr/src/$PRGNAM3-$KERNEL_STABLE &>/dev/null

# Descomprimir fichero
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
tar xvf $PRGNAM3-$KERNEL_STABLE.tar.xz

# Entrar a la ruta del kernel descomprimido
cd $PRGNAM3-$KERNEL_STABLE
# Se limpia por si los de kernel.org se dejaron algun fichero que noe s de kernel
make mrproper

###################################
### Generamos parche wireless  ####
###################################
cat > Negative-channel-multi.patch << "EOF"
--- a/net/wireless/chan.c 2013-08-29 18:47:51.000000000 +0200
+++ b/net/wireless/chan.c 2013-08-31 22:20:45.014734447 +0200
@@ -441,4 +441,2 @@
  return -EOPNOTSUPP;
- if (!cfg80211_has_monitors_only(rdev))
- return -EBUSY;

--- a/net/mac80211/cfg.c Tue May 28 16:57:23 2013 -0400
+++ b/net/mac80211/cfg.c Tue May 28 17:16:15 2013 -0400
@@ -801,3 +801,4 @@
  }
- } else if (local->open_count == local->monitors) {
+ // Patch: Always allow channel change, even if a normal virtual interface is present
+ } else /*if (local->open_count == local->monitors)*/ {
  local->_oper_channel = chandef->chan;


--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -3588,9 +3589,9 @@ static int ieee80211_cfg_get_channel
  if (chanctx_conf) {
  *chandef = chanctx_conf->def;
  ret = 0;
- } else if (local->open_count > 0 &&
+ } else /*if (local->open_count > 0 &&
     local->open_count == local->monitors &&
-    sdata->vif.type == NL80211_IFTYPE_MONITOR) {
+    sdata->vif.type == NL80211_IFTYPE_MONITOR)*/ {
  if (local->use_chanctx)
  *chandef = local->monitor_chandef;
  else

EOF

# Aplicamos parche si hay error se parara el proceso ( exit 1 )
echo ""
echo ""$VERDE"Aplicando parche wireless para channel -1 "$BLANCO"..."$CIERRE""
sleep 3
patch -f -p1 < Negative-channel-multi.patch || exit 1

# Si el sistema anfitrion es wifislax se baja el logo para kernel
# Buscamos si estamos en wifislax
ANFITRION=`cat /etc/*version | grep -E "(wifislax|AWireless)" |cut -d " " -f 1`

# Declaramos el tag para el name del modulo xzm
if [ $ANFITRION = wifislax ]; then
TAG=sw
else
TAG=AWireless
fi

# Definimos regla si es wifislax, solo en ese caso ..crea el logo de kernel y lo añade
# Primero lo sacamos de un png que ocupaba mucho menos y despues convertimos a ppm y movemos
if [ $ANFITRION = wifislax ]; then
echo "
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
wOPx4HA4qK2tpby8nGXLlimpCDU1NTidTsxms3LNx2sBFoC4CJF3b43gojOMeN0y1V4ZkbbXezSG
0aNH8/7777fb6P/nP//J448/3ubnaLFYeOmll+jTp0+HGS8rV67k8ccfZ/ny5cdtjE+cOJEvvvii
1Yteffj9fu69917efvvtRg3znj178sMPP5Cenq6+VFpAProSATEajRgMBs4//3z++te/0rdv307m
SBKUBrLjxo1j3LhxeDweli9fzmOPPcbOnTvx+XzHxbEoiiJLlizhqquuavX8SktLY8qUKTz99NPH
PQoycOBArrvuujbVMBUVFbFjxw61WXI73vNLlixh+PDhXHbZZQwfPrzVRnxL7dKQfREZGalECFur
epWcnMwll1zCjTfeSFRUFE6nk/z8fMrLy/nll186lciO9mSePC8vjwMHDigGgcFg4OKLL+arr75q
EwE5EQw/EAhQVVWlhjOPB5mgrhFIa5d2AUAGu0PGahR488/hdI8TefMHF7ll7XtOoWJMk8mEy+Wi
V69enHHGGZx77rn06tWL+Ph4zGZzg8hHaL/mDJgQIQG46667lPHrcDgoLS1l69at/PTTT6xcuZLy
8nK0Wq3S8LAjjB+tBjLiNcx+KIre3XW4HBKBALQp6CEf3pqZl+2dm5IkER0d3WYvrSAI3HTTTUyc
OLFDxqrX6+W9997j0UcfbbV3qi3X3hH3r7FjaLVaunfvznfffaeSj1MMZrOZyMhIJk+ezAMPPEBC
QkKXqekJyeOPGzeOHTt2cN9997FhwwbsdnuHrr1er5fVq1eTm5vb6nownU7H3XffzfLly/n++++P
CykN1TLdf//9ba5XW7t2bavTd1Q0hMfjYefOnVgsFvbt29chsvJNwefz4XK5CAsLw+l0tmrflJQU
7rjjDqZOnUpMTIyydlRWViq1150pEnZSCYjX6z3KIHM6nSetIK0lcLvdLdKbV3HiIcvg8MhYDPDw
5WEMStcx5Y0aimuCtGbOCYJAeHg4siyTlpbGxIkTueCCC8jKysJkMqHT6TAYDO0yhhsjKRqNhsjI
SCIjI8nKyuLCCy/E7/dTXV3N7t27WbBgAd9++y0ej4fq6mocDkebFj2zQWBsHz1v3RpOaqwWt1PG
H2xfofmJ8kS1dZGPjo7mxhtvbFXublNwOp089NBDvPvuuyfEq9gRxfeNHUMURc444wy+/PJLRaax
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
FS****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
YII=
" | base64 -d > /usr/src/$PRGNAM3-$KERNEL_STABLE/logo_linux_clut224.png
LOGO_DEST=/usr/src/$PRGNAM3-$KERNEL_STABLE/drivers/video/logo
rm -rf $LOGO_DEST/logo_linux_clut224.ppm &>/dev/null
echo $AMARILLO
echo "Creando logo para kernel ..."
echo $CIERRE
pngtopnm /usr/src/$PRGNAM3-$KERNEL_STABLE/logo_linux_clut224.png | ppmquant -fs 223 | pnmtoplainpnm > $LOGO_DEST/logo_linux_clut224.ppm
rm -rf /usr/src/$PRGNAM3-$KERNEL_STABLE/logo_linux_clut224.png &>/dev/null
fi

# Arreglo temporal a un bug con el driver radeon
if [ 312 -lt ${RAMA_STABLE//.} ]; then
echo $AMARILLO
echo "Aplicando parche radeon_dpm ..."
echo $CIERRE
RUTA_ACTUAL=`echo $(pwd)`
sed -i 's/radeon_dpm = -1/radeon_dpm = 0/g' ${RUTA_ACTUAL}/drivers/gpu/drm/radeon/radeon_drv.c
fi

# Funcion creada gracias al usuario d1kov , por mostrarme este fantastico comando
# Se trata de generar un fichero .config ... basandose en la configuracion del sistema actual
# Se generara solamente si no hemos metido nosotros un fichero .config

# Parte1 avisamos por si quieres poner un config
if [ ! -f /usr/src/$PRGNAM3-$KERNEL_STABLE/.config ]; then
echo ""
echo ""$CYAN"No se detecto fichero config ..."$CIERRE""
sleep 2
echo ""
echo ""$CYAN"Si quieres añadir uno hazlo en /usr/src/$PRGNAM3-$KERNEL_STABLE/.config ..."$CIERRE""
sleep 2
echo ""$CYAN"Si no añades un config se usara directamente la config del kernel actual."$CIERRE""
sleep 2
echo ""
echo ""$CYAN"Cuando pulses "$AMARILLO"ENTER "$CYAN"el proceso continuara"$CIERRE""
echo ""
read junk
fi

# Parte2 sino hay config generamos una en base al kernel actual
if [ -f /usr/src/$PRGNAM3-$KERNEL_STABLE/.config ]; then
echo ""
echo ""$CYAN"Usando config añadida por el usuario ..."$CIERRE""
echo ""
else
echo ""
echo ""$CYAN"Generamos fichero .config ..."$CIERRE""
echo ""
modprobe configs && zcat /proc/config.gz > /usr/src/$PRGNAM3-$KERNEL_STABLE/.config
sleep 2
fi

# Descargamos version de aufs correspondiente a nuestra rama y aplicamos
# Indicamos version aufs igual a rama de kernel
# Ruta donde se enviara patch de aufs que es a las sources del kernel
if [ $RAMA_STABLE = 3.12 ]; then
RAMA_STABLE=3.12.31+
fi
if [ $RAMA_STABLE = 3.14 ]; then
RAMA_STABLE=3.14.21+
fi
if [ $RAMA_STABLE = 3.18 ]; then
RAMA_STABLE=3.18.1+
fi
DEST=/usr/src/$PRGNAM3-$KERNEL_STABLE/aufs$RAMA_STABLE.patch

# Creamos parche y aplicamos
echo ""
echo ""$VERDE"Creamos y aplicamos el parche aufs "$BLANCO"..."$CIERRE""
sleep 3
rm -r /tmp/aufs* 2>/dev/null
mkdir /tmp/aufs$$
cd /tmp/aufs$$
git clone git://git.code.sf.net/p/aufs/aufs3-standalone aufs3-standalone.git || exit 1
cd aufs3-standalone.git
git checkout origin/aufs$RAMA_STABLE || exit 1
mkdir ../a ../b
cp -r {Documentation,fs,include} ../b
rm ../b/include/uapi/linux/Kbuild 2>/dev/null || rm ../b/include/linux/Kbuild
cd ..
diff -rupN a/ b/ > $DEST
cat aufs3-standalone.git/*.patch >> $DEST
rm -r /tmp/aufs$$


# Verificamos la existencia del parche aufs
if [ ! -f /usr/src/$PRGNAM3-$KERNEL_STABLE/aufs$RAMA_STABLE.patch ]; then
echo ""
echo ""$ROJO"La creacion del parche aufs a fallado ...saliendo..."
echo ""
sleep 3
exit 0
fi

# Aplicamos parche aufs
cd /usr/src/$PRGNAM3-$KERNEL_STABLE

# Parcheamos
patch -f -p1 -i aufs$RAMA_STABLE.patch

# Compilamos el kernel
# Creamos aqui varias reglas ... si es wifislax xconfig si no make menuconfig
if [ $ANFITRION = wifislax ]; then
KERNEL_CONFIG=xconfig
else
KERNEL_CONFIG=menuconfig
fi
make oldconfig || exit 1
make $KERNEL_CONFIG || exit 1


# Comienza la compilacion del kernel
make -j$NUCLEOS || exit 1

# Compilados los modulos del kernel
make modules -j$NUCLEOS || exit 1

# Variable que se consultara despues de configurar kernel
# Comprobar si es un kernel PAE
if [ -z "`grep -i 'CONFIG_HIGHMEM64G=y' .config`" ]; then
PAE=""
else
PAE="PAE-"
fi

# Creamos la tuta de destina a instalar el kernel
mkdir -p $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG
make modules_install INSTALL_MOD_PATH=$HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG || exit 1

# Instalamos las cabeceras kernel-headers
# Esto se cumplira solo si el anfitrion es wifislax
if [ $ANFITRION = wifislax ]; then
make headers_install ARCH=i386 INSTALL_HDR_PATH=$HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr || exit 1
rm -r $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/include/*/.install
rm -r $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/include/*/..install.cmd
fi

# Copiamos vmlinuz a escritorio
if [ -z "`grep -i 'CONFIG_HIGHMEM64G=y' .config`" ]; then
VMLINUZ="vmlinuz"
else
VMLINUZ="vmlinuz2"
fi
cp /usr/src/$PRGNAM3-$KERNEL_STABLE/arch/x86/boot/bzImage $HOME/Desktop/$VMLINUZ &>/dev/null

# Generamos kernel sources recortadas
mv System.map ../
make clean
mv ../System.map .
make prepare
make scripts
rm -Rf Documentation drivers fs net sound firmware
ls -1d arch/* | grep -v x86 | xargs rm -Rf
ls -1d include/* | grep asm- | grep -v x86 | grep -v generic | xargs rm -Rf
cp include/generated/* include/linux &>/dev/null


# Preparamos creacion de xzm
mkdir -p $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/src
cp -r /usr/src/$PRGNAM3-$KERNEL_STABLE $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/src

# Realizamos limpieza
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM3-$KERNEL_STABLE/kernel.txt &>/dev/null
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM3-$KERNEL_STABLE/Negative-channel-multi.patch &>/dev/null
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM3-$KERNEL_STABLE/aufs$RAMA_STABLE.patch &>/dev/null
rm aufs$RAMA_STABLE.patch &>/dev/null
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM3-$KERNEL_STABLE/.config.old &>/dev/null

# Esta regla eliminara la carpeta firmwares del kernel si el sistema es wifislax
# Por que usa una script que baja todos los firmwares desde el git
if [ $ANFITRION = wifislax ]; then
rm -Rf $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/lib/firmware
fi

# Esta regla eliminara las crippled sources si el anfitrion no es wifislax
if [ ! $ANFITRION = wifislax ]; then
rm -r $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG/usr
fi

# Creamos xzm de kernel + sources
dir2xzm $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG.xzm
mv $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$M0DNUM-$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG.xzm

# Limpiamos
rm -Rf $HOME/Desktop/$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG

# Comprobamos si es wifislax y si esta en livecd para intentar instalar el kernel a sistema
if [ -d /mnt/live ]; then
echo "$AMARILLO"
echo "Detectado modo live ...el nuevo kernel no se instalara a sistema"
echo "$VERDE"
echo "Bye Bye"
exit 0
fi

# Si el sistema esta en hdd y no es wifislax se sale
if [ ! $ANFITRION = wifislax ]; then
echo "$AMARILLO"
echo "El sistema esta en HDD ...pero no es wifislax,no se instalara el nuevo kernel"
echo "$VERDE"
echo "Bye Bye"
exit 0
fi

# Si no salio en las dos opciones anteriores es un wifislax en hdd se da opcion de instalar el kernel en sistema
echo ""
echo ""$ROSA"Detectado wifislax instalado en HDD..."$CIERRE""
echo ""
echo ""$AMARILLO"Pulsa ENTER si quieres instalar el nuevo kernel,si no te interesa cierra el scipt."$CIERRE""
read junk
echo ""
echo ""$VERDE"Instalando Kernel $KERNEL_STABLE en sistema ..."$CIERRE""
if [ $PAE = "PAE-" ]; then
VMLINUZCONFIG="pae-"
else
VMLINUZCONFIG=""
fi
cp -r $HOME/Desktop/$VMLINUZ /boot/vmlinuz-$KERNEL_ONLINE-$VMLINUZCONFIG$ANFITRION
xzm2dir $HOME/Desktop/$M0DNUM-$PAE$MODNAM-$KERNEL_STABLE-$ARCH-$BUILD$TAG.xzm /
update-grub
echo ""
echo ""$CYAN"Instalacion completada ..."$CIERRE""
echo ""
echo ""$AMARILLO"Bye Bye"$CIERRE""
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 31-01-2015, 22:26 (Sábado)
Jajajajaja

Menos mal... Parecía eso un callejón sin salida xDD

Salu2 y buen trabajo!
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 31-01-2015, 22:34 (Sábado)
Jajajajaja

Menos mal... Parecía eso un callejón sin salida xDD

Salu2 y buen trabajo!


Bueno , el problema REAL de esto , es que casi seguro habra que salir de la rama 3.12 ..pero no se a cual subir.

recuerda que hay que buscar el equilibrio entre kernel , y hashcat con sus peticiones de driver..

y es un pelin complicated  ;D

hashcat pide el driver ati 14.9  ...que solo compila hasta la rama 3.15 , esta mañana encontre un patch ...con el que compilo en un kernel 3.17.8 , pero esta muerta la rama 3.17

para la rama 3.18 , he encontrado un patch para el driver amd 14.12  ...

tal vez usando el parametro --force , al final de la linea de ataque en la gui ...

mañana me toca probar  ;)


lo que odio de subir de rama es el bug del rssi 00 con los chips atheros ... que se va a llenar el foro con lo mismo ...  "el power me sale 00 ...." .... desde mayo del año pasado que lo reporte ..pero claro

reaver = only for money
reaver 1.5 = estos en realidad cogieron 4 parches de debian..y cuando debian ha dejado de parchearlo, se les acabo la gasofa

kali = estos erna mi gran esperanza , ..pero el bug sigue OPEN , y sin solucion ...

en fins...he aguantado todo lo que he podido.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-02-2015, 18:35 (Domingo)
Bueno , pues va palante ..kernel 3.18.5


un pequeño retoque en linux_updater


linux_updater

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

# Script by USUARIONUEVO @ www.seguridadwireless.net

SCRIPT_VERSION=20150201

# 20141027  Se crea funcion que dejara un nucleo libre al sistema si hay mas de 2 cores
# 20141023  Se incluye funcion para detectar posible bug en aufs
# 20141020  Si en 3 segundos no responde el ftp con la version de script, se continua.
# 20141009  Se ajustan algunos parametros como la creacion del patch aufs que ya no busca por nombre sino *.patch
# 20140827  Se incluye el kernel logo  dentro del script y pequeñas mejoras en la identificacion de rama
# 20140801  Si el sistema esta en modo live el script lo detecta y se cierra
# 20140727  Corregido bug al crear variable TAG y mejorada la creacion del patch wireless
#           Se comprueba la existencia del directorio de trabajo /usr/src si no existe se crea
# 20140723  Ya nos e busca el fichero config se genera en base al sistema anfitrion (feat d1kov)
#           Añadida variable para estilo de configuracion de kernel , si es wifislax xconf si no menuconfig
#           Añadido en las partes mas criticas un || exit 1 , en caso de error el script se detendra justo hay
# 20140722  Correido bug al instalar en disco duro linea 386 antes dir2xzm y es un xzm2dir
#           corregido un bug gramatical y 2 en variables no definidas (TAG Y BUILD)
# 20140721  version inicial

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Nombre del script
# El PRGNAM2 se usa en la creacion del xzm ,NO BORRAR
PRGNAM2=kernel
PRGNAM=linux

# Bienvenida
clear
echo $ROSA
echo "
      __ __                 __  _____                _ __       
     / // /__ _______  ___ / / / ___/__  __ _  ___  (_) /__ ____
    / ,< / -_) __/ _ \/ -_) / / /__/ _ \/  ' \/ _ \/ / / -_) __/
   /_/|_|\__/_/ /_//_/\__/_/  \___/\___/_/_/_/ .__/_/_/\__/_/   
                                            /_/                  "
echo ""                                         
echo ""$AMARILLO"   ##### By USUARIONUEVO @ www.seguridadwireless.net #####"$CIERRE""
echo ""
sleep 3

# Si el sistema esta en modo live se avisa y se sale del script
if [ -d /mnt/live/memory ]; then
echo ""
echo ""$ROJO"Se ha detectado que el sistema esta en modo LIVE "$BLANCO"..."$CIERRE""
sleep 3
echo ""
echo ""$ROJO"Este script solo funcion en sistemas instalados al HDD "$BLANCO"..."$CIERRE""
sleep 3
echo ""$ROJO"Lo siento , el script se cierra aqui"$BLANCO"... "$ROJO"usalo desde HDD"$CIERRE""
sleep 3
exit 0
fi

# Sin internet el script no continua al no poder saber version online ni descargarla
# Comprobar conexion by geminis_demon @ www.seguridadwireless.net
# Se hace un ping a google si no hay respuesta se determina que no hay internet y se sale.
# Si hay respuesta al ping el script continuara.
if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
echo "$ROJO"No tengo internet"$CIERRE ... $BLANCO"el script se cerrara..."$CIERRE"
echo ""
sleep 3
exit 0
fi

# Comprobar updates para el script
SERVIDOR_WEB="http://www.downloadwireless.net/wifislax-updaters"
DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)
SERVIDOR_VERSION=$(timeout -s SIGTERM 3 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)


echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
echo
echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
echo ${ROJO}NUEVA VERSION$CIERRE
echo
echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
echo
echo ${CYAN}Actualizando ${PRGNAM}_updater
curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
echo ${ROJO}LISTO$CIERRE
sleep 3
$0
exit
fi
fi

# Variables
# Definimos arquitectura del sitema anfitrion
if [ -z "$ARCH" ]; then
  case "$( uname -m )" in
    i?86) ARCH=i486 ;;
    arm*) ARCH=arm ;;
       *) ARCH=$( uname -m ) ;;
  esac
fi

# Aseguramos la existencia del directorio de compilacion y si no existe se crea
if [ ! -d /usr/src ]; then
mkdir -p /usr/src
fi

# Cantidad de nucleos del sistema usables para make -j
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)

# variable que restara un nucleo para reservarlo al sistema si hay mas de 2
if [ $NUCLEOS -gt 2 ]; then
let NUCLEOS=$NUCLEOS-1
fi

# Numero de modulo xzm
M0DNUM=000

# Nombre de modulo xzm
MODNAM=Kernel

# Numero de build
BUILD=1

# Numero de Kernel completo instalado en el sistema
KERNEL_SISTEMA=`uname -r | cut -d '-' -f1 | sed 's/ //g'`

# Rama de kernel eliminando del numero de kernel la parte final por ejemplo 3.12.4 se cortaria a 3.12
RAMA=`uname -r | cut -d '-' -f1 | cut -d "." -f-2 | sed 's/ //g'`

# Pagina web de kernel org donde se buscara actualizacion sobre la misma rama de nuestro kernel
WEB=https://www.kernel.org/

# Grepeando numero kernel mas nuevo para nuestra rama en kernel.org
KERNEL_ONLINE=`curl -s $WEB | grep linux-$RAMA.* | head -1 |cut -d 'x' -f 4 | cut -d '-' -f 2 | cut -d " " -f 2 | cut -d "t" -f1 | sed 's/.$//g'`

# Web completa para descargar el source code
DESCARGA=https://www.kernel.org/pub/linux/kernel/v3.x/linux-$KERNEL_ONLINE.tar.xz

# Comparamos version sistema con version online si son iguales se sale del script
if [[ $KERNEL_SISTEMA = $KERNEL_ONLINE ]]; then
echo ""$VERDE"No hay updates para la rama de kernel "$AMARILLO"$RAMA"$CIERRE""
sleep 3
echo ""$AMARILLO"Si quieres recompilar el mismo kernel pulsa "$ROJO"ENTER"$CIERRE""
echo ""
echo ""$AMARILLO"Si no quieres recompilar simplemente cierra la ventana"$CIERRE""
read junk
rm -Rf /usr/src/$PRGNAM-$KERNEL_ONLINE &>/dev/null
fi

# Se comprueba si el archivo a descargar ya existe por pruebas anteriores y evitar descargar de nuevo
# Entramos a la ruta de trabajo
cd /usr/src/

# Si el paquete no existe se descargara de internet
if [ ! -f linux-$KERNEL_ONLINE.tar.xz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$KERNEL_ONLINE "$CIERRE"
sleep 3

# Bajamos el kernel
aria2c -x 3 $DESCARGA
fi

# Descomprimir en /usr/src
# Si existen restos de una prueba anterior seeliminaran
rm -rf /usr/src/$PRGNAM-$KERNEL_ONLINE &>/dev/null

# Descomprimir fichero
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
tar xvf $PRGNAM-$KERNEL_ONLINE.tar.xz

# Entrar a la ruta del kernel descomprimido
cd $PRGNAM-$KERNEL_ONLINE
# Se limpia por si los de kernel.org se dejaron algun fichero que noe s de kernel
make mrproper

###################################
### Generamos parche wireless  ####
###################################
cat > Negative-channel-multi.patch << "EOF"
--- a/net/wireless/chan.c 2013-08-29 18:47:51.000000000 +0200
+++ b/net/wireless/chan.c 2013-08-31 22:20:45.014734447 +0200
@@ -441,4 +441,2 @@
  return -EOPNOTSUPP;
- if (!cfg80211_has_monitors_only(rdev))
- return -EBUSY;

--- a/net/mac80211/cfg.c Tue May 28 16:57:23 2013 -0400
+++ b/net/mac80211/cfg.c Tue May 28 17:16:15 2013 -0400
@@ -801,3 +801,4 @@
  }
- } else if (local->open_count == local->monitors) {
+ // Patch: Always allow channel change, even if a normal virtual interface is present
+ } else /*if (local->open_count == local->monitors)*/ {
  local->_oper_channel = chandef->chan;


--- a/net/mac80211/cfg.c
+++ b/net/mac80211/cfg.c
@@ -3588,9 +3589,9 @@ static int ieee80211_cfg_get_channel
  if (chanctx_conf) {
  *chandef = chanctx_conf->def;
  ret = 0;
- } else if (local->open_count > 0 &&
+ } else /*if (local->open_count > 0 &&
     local->open_count == local->monitors &&
-    sdata->vif.type == NL80211_IFTYPE_MONITOR) {
+    sdata->vif.type == NL80211_IFTYPE_MONITOR)*/ {
  if (local->use_chanctx)
  *chandef = local->monitor_chandef;
  else

EOF

# Aplicamos parche si hay error se parara el proceso ( exit 1 )
echo ""
echo ""$VERDE"Aplicando parche wireless para channel -1 "$BLANCO"..."$CIERRE""
sleep 3
patch -f -p1 < Negative-channel-multi.patch || exit 1

# Si el sistema anfitrion es wifislax se baja el logo para kernel
# Buscamos si estamos en wifislax
ANFITRION=`cat /etc/*version | grep -E "(wifislax|AWireless)" |cut -d " " -f 1`

# Declaramos el tag para el name del modulo xzm
if [ $ANFITRION = wifislax ]; then
TAG=sw
else
TAG=AWireless
fi

# Definimos regla si es wifislax, solo en ese caso ..crea el logo de kernel y lo añade
# Primero lo sacamos de un png que ocupaba mucho menos y despues convertimos a ppm y movemos
if [ $ANFITRION = wifislax ]; then
echo "
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
wOPx4HA4qK2tpby8nGXLlimpCDU1NTidTsxms3LNx2sBFoC4CJF3b43gojOMeN0y1V4ZkbbXezSG
0aNH8/7777fb6P/nP//J448/3ubnaLFYeOmll+jTp0+HGS8rV67k8ccfZ/ny5cdtjE+cOJEvvvii
1Yteffj9fu69917efvvtRg3znj178sMPP5Cenq6+VFpAProSATEajRgMBs4//3z++te/0rdv307m
SBKUBrLjxo1j3LhxeDweli9fzmOPPcbOnTvx+XzHxbEoiiJLlizhqquuavX8SktLY8qUKTz99NPH
PQoycOBArrvuujbVMBUVFbFjxw61WXI73vNLlixh+PDhXHbZZQwfPrzVRnxL7dKQfREZGalECFur
epWcnMwll1zCjTfeSFRUFE6nk/z8fMrLy/nll186lciO9mSePC8vjwMHDigGgcFg4OKLL+arr75q
EwE5EQw/EAhQVVWlhjOPB5mgrhFIa5d2AUAGu0PGahR488/hdI8TefMHF7ll7XtOoWJMk8mEy+Wi
V69enHHGGZx77rn06tWL+Ph4zGZzg8hHaL/mDJgQIQG46667lPHrcDgoLS1l69at/PTTT6xcuZLy
8nK0Wq3S8LAjjB+tBjLiNcx+KIre3XW4HBKBALQp6CEf3pqZl+2dm5IkER0d3WYvrSAI3HTTTUyc
OLFDxqrX6+W9997j0UcfbbV3qi3X3hH3r7FjaLVaunfvznfffaeSj1MMZrOZyMhIJk+ezAMPPEBC
QkKXqekJyeOPGzeOHTt2cN9997FhwwbsdnuHrr1er5fVq1eTm5vb6nownU7H3XffzfLly/n++++P
CykN1TLdf//9ba5XW7t2bavTd1Q0hMfjYefOnVgsFvbt29chsvJNwefz4XK5CAsLw+l0tmrflJQU
7rjjDqZOnUpMTIyydlRWViq1150pEnZSCYjX6z3KIHM6nSetIK0lcLvdLdKbV3HiIcvg8MhYDPDw
5WEMStcx5Y0aimuCtGbOCYJAeHg4siyTlpbGxIkTueCCC8jKysJkMqHT6TAYDO0yhhsjKRqNhsjI
SCIjI8nKyuLCCy/E7/dTXV3N7t27WbBgAd9++y0ej4fq6mocDkebFj2zQWBsHz1v3RpOaqwWt1PG
H2xfofmJ8kS1dZGPjo7mxhtvbFXublNwOp089NBDvPvuuyfEq9gRxfeNHUMURc444wy+/PJLRaax
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
FS****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
YII=
" | base64 -d > /usr/src/$PRGNAM-$KERNEL_ONLINE/logo_linux_clut224.png
LOGO_DEST=/usr/src/$PRGNAM-$KERNEL_ONLINE/drivers/video/logo
rm -rf $LOGO_DEST/logo_linux_clut224.ppm &>/dev/null
echo $AMARILLO
echo "Creando logo para kernel ..."
echo $CIERRE
pngtopnm /usr/src/$PRGNAM-$KERNEL_ONLINE/logo_linux_clut224.png | ppmquant -fs 223 | pnmtoplainpnm > $LOGO_DEST/logo_linux_clut224.ppm
rm -rf /usr/src/$PRGNAM-$KERNEL_ONLINE/logo_linux_clut224.png &>/dev/null
fi

# Arreglo temporal a un bug con el driver radeon
if [ 312 -lt ${RAMA//.} ]; then
echo $AMARILLO
echo "Aplicando parche radeon_dpm ..."
echo $CIERRE
RUTA_ACTUAL=`echo $(pwd)`
sed -i 's/radeon_dpm = -1/radeon_dpm = 0/g' ${RUTA_ACTUAL}/drivers/gpu/drm/radeon/radeon_drv.c
fi

# Funcion creada gracias al usuario d1kov , por mostrarme este fantastico comando
# Se trata de generar un fichero .config ... basandose en la configuracion del sistema actual
# Se generara solamente si no hemos metido nosotros un fichero .config

# Parte1 avisamos por si quieres poner un config
if [ ! -f /usr/src/$PRGNAM-$KERNEL_ONLINE/.config ]; then
echo ""
echo ""$CYAN"No se detecto fichero config ..."$CIERRE""
sleep 2
echo ""
echo ""$CYAN"Si quieres añadir uno hazlo en /usr/src/$PRGNAM-$KERNEL_ONLINE/.config ..."$CIERRE""
sleep 2
echo ""$CYAN"Si no añades un config se usara directamente la config del kernel actual."$CIERRE""
sleep 2
echo ""
echo ""$CYAN"Cuando pulses "$AMARILLO"ENTER "$CYAN"el proceso continuara"$CIERRE""
echo ""
read junk
fi

# Parte2 sino hay config generamos una en base al kernel actual
if [ -f /usr/src/$PRGNAM-$KERNEL_ONLINE/.config ]; then
echo ""
echo ""$CYAN"Usando config añadida por el usuario ..."$CIERRE""
echo ""
else
echo ""
echo ""$CYAN"Generamos fichero .config ..."$CIERRE""
echo ""
modprobe configs && zcat /proc/config.gz > /usr/src/$PRGNAM-$KERNEL_ONLINE/.config
sleep 2
fi

# Descargamos version de aufs correspondiente a nuestra rama y aplicamos
# Indicamos version aufs igual a rama de kernel
# Ruta donde se enviara patch de aufs que es a las sources del kernel
if [ $RAMA = 3.12 ]; then
RAMA=3.12.31+
fi
if [ $RAMA = 3.14 ]; then
RAMA=3.14.21+
fi
if [ $RAMA = 3.18 ]; then
RAMA=3.18.1+
fi
DEST=/usr/src/$PRGNAM-$KERNEL_ONLINE/aufs$RAMA.patch

# Creamos parche y aplicamos
echo ""
echo ""$VERDE"Creamos y aplicamos el parche aufs "$BLANCO"..."$CIERRE""
sleep 3
rm -r /tmp/aufs* 2>/dev/null
mkdir /tmp/aufs$$
cd /tmp/aufs$$
git clone git://git.code.sf.net/p/aufs/aufs3-standalone aufs3-standalone.git || exit 1
cd aufs3-standalone.git
git checkout origin/aufs$RAMA || exit 1
mkdir ../a ../b
cp -r {Documentation,fs,include} ../b
rm ../b/include/uapi/linux/Kbuild 2>/dev/null || rm ../b/include/linux/Kbuild
cd ..
diff -rupN a/ b/ > $DEST
cat aufs3-standalone.git/*.patch >> $DEST
rm -r /tmp/aufs$$


# Verificamos la existencia del parche aufs
if [ ! -f /usr/src/$PRGNAM-$KERNEL_ONLINE/aufs$RAMA.patch ]; then
echo ""
echo ""$ROJO"La creacion del parche aufs a fallado ...saliendo..."
echo ""
sleep 3
exit 0
fi

# Aplicamos parche aufs
cd /usr/src/$PRGNAM-$KERNEL_ONLINE

# Parcheamos
patch -f -p1 -i aufs$RAMA.patch

# Compilamos el kernel
# Creamos aqui varias reglas ... si es wifislax xconfig si no make menuconfig
if [ $ANFITRION = wifislax ]; then
KERNEL_CONFIG=xconfig
else
KERNEL_CONFIG=menuconfig
fi
make oldconfig || exit 1
make $KERNEL_CONFIG || exit 1


# Comienza la compilacion del kernel
make -j$NUCLEOS || exit 1

# Compilados los modulos del kernel
make modules -j$NUCLEOS || exit 1

# Variable que se consultara despues de configurar kernel
# Comprobar si es un kernel PAE
if [ -z "`grep -i 'CONFIG_HIGHMEM64G=y' .config`" ]; then
PAE=""
else
PAE="PAE-"
fi

# Creamos la tuta de destina a instalar el kernel
mkdir -p $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG
make modules_install INSTALL_MOD_PATH=$HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG || exit 1

# Instalamos las cabeceras kernel-headers
# Esto se cumplira solo si el anfitrion es wifislax
if [ $ANFITRION = wifislax ]; then
make headers_install ARCH=i386 INSTALL_HDR_PATH=$HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr || exit 1
rm -r $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/include/*/.install
rm -r $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/include/*/..install.cmd
fi

# Copiamos vmlinuz a escritorio
if [ -z "`grep -i 'CONFIG_HIGHMEM64G=y' .config`" ]; then
VMLINUZ="vmlinuz"
else
VMLINUZ="vmlinuz2"
fi
cp /usr/src/$PRGNAM-$KERNEL_ONLINE/arch/x86/boot/bzImage $HOME/Desktop/$VMLINUZ &>/dev/null

# Generamos kernel sources recortadas
mv System.map ../
make clean
mv ../System.map .
make prepare
make scripts
rm -Rf Documentation drivers fs net sound firmware
ls -1d arch/* | grep -v x86 | xargs rm -Rf
ls -1d include/* | grep asm- | grep -v x86 | grep -v generic | xargs rm -Rf
cp include/generated/* include/linux &>/dev/null


# Preparamos creacion de xzm
mkdir -p $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/src
cp -r /usr/src/$PRGNAM-$KERNEL_ONLINE $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/src

# Realizamos limpieza
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM-$KERNEL_ONLINE/kernel.txt &>/dev/null
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM-$KERNEL_ONLINE/Negative-channel-multi.patch &>/dev/null
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM-$KERNEL_ONLINE/aufs$RAMA.patch &>/dev/null
rm aufs$RAMA.patch &>/dev/null
rm $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr/src/$PRGNAM-$KERNEL_ONLINE/.config.old &>/dev/null

# Esta regla eliminara la carpeta firmwares del kernel si el sistema es wifislax
# Por que usa una script que baja todos los firmwares desde el git
if [ $ANFITRION = wifislax ]; then
rm -Rf $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/lib/firmware
fi

# Esta regla eliminara las crippled sources si el anfitrion no es wifislax
if [ ! $ANFITRION = wifislax ]; then
rm -r $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG/usr
fi

# Creamos xzm de kernel + sources
dir2xzm $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG.xzm
mv $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$M0DNUM-$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG.xzm

# Limpiamos
rm -Rf $HOME/Desktop/$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG

# Comprobamos si es wifislax y si esta en livecd para intentar instalar el kernel a sistema
if [ -d /mnt/live ]; then
echo "$AMARILLO"
echo "Detectado modo live ...el nuevo kernel no se instalara a sistema"
echo "$VERDE"
echo "Bye Bye"
exit 0
fi

# Si el sistema esta en hdd y no es wifislax se sale
if [ ! $ANFITRION = wifislax ]; then
echo "$AMARILLO"
echo "El sistema esta en HDD ...pero no es wifislax,no se instalara el nuevo kernel"
echo "$VERDE"
echo "Bye Bye"
exit 0
fi

# Si no salio en las dos opciones anteriores es un wifislax en hdd se da opcion de instalar el kernel en sistema
echo ""
echo ""$ROSA"Detectado wifislax instalado en HDD..."$CIERRE""
echo ""
echo ""$AMARILLO"Pulsa ENTER si quieres instalar el nuevo kernel,si no te interesa cierra el scipt."$CIERRE""
read junk
echo ""
echo ""$VERDE"Instalando Kernel $KERNEL_ONLINE en sistema ..."$CIERRE""
if [ $PAE = "PAE-" ]; then
VMLINUZCONFIG="pae-"
else
VMLINUZCONFIG=""
fi
cp -r $HOME/Desktop/$VMLINUZ /boot/vmlinuz-$KERNEL_ONLINE-$VMLINUZCONFIG$ANFITRION
xzm2dir $HOME/Desktop/$M0DNUM-$PAE$MODNAM-$KERNEL_ONLINE-$ARCH-$BUILD$TAG.xzm /
update-grub
echo ""
echo ""$CYAN"Instalacion completada ..."$CIERRE""
echo ""
echo ""$AMARILLO"Bye Bye"$CIERRE""

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-02-2015, 18:44 (Domingo)
Mantendrás la rama 3.18 en desarrollo hasta que saquen algo para los atheros? O seguirás adelante incluso si no lo sacan?

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 04-02-2015, 03:28 (Miércoles)

                Otravez sopa, ja ja, tiro otro dato...



                        (http://i.imgur.com/7XTV7Tt.png)



                     saludos!!!
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-02-2015, 04:57 (Miércoles)
Mantendrás la rama 3.18 en desarrollo hasta que saquen algo para los atheros? O seguirás adelante incluso si no lo sacan?

Salu2

ya podemos esperar sentados , vi el problema en mayo de 2014 y casi un año despues esta igual.

los de reaver ya no tocan el code , es problemas de wash ... y solo es con los atheros,.

en la istro podemos usar la tool WPS-SCAN , que escribio coeman.

geminisauditor mostrara bien el power ...por que usa para escanear iw , en vez de wash ...y creo que la suite de goy tambien.


solo sera cuando escaneemos manualmente con wash , o una tool, que use wash como escaner .. como puede ser wpspingenerator.



¿subir? , si claro ... no me queda otra
¿a cual?  ... al mas alto que pueda, ya puestos me da igual..

escogi el 3.18 , por que pude compilar el driver de ati , en esa rama...aunque es el omega 14.12 que no me vale de momento para hashcat de forma limpia ... por eso digo que aun estan cosas por venir

cada año eligen un kernel para hacerlo longterm ....  el que escojan este año , sera el mio.

el 3.14 es el unico en activo con soporte aufs , pero me parece un poco viejo ...ademas de que a la siguiente esa rama va fuera de live aufs.


es momento de dejar pasar un tiempo y ver que pasa.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-02-2015, 05:20 (Miércoles)
opera_updater revisado


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150204

############################################################
## 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() {
ARCH=i386
PRGNAM=opera
VERSION=12.16
RAMA=$(echo $VERSION | sed "s/[.]//g")
REVNO=1860
WEB=ftp://ftp.opera.com/pub/opera/linux/$RAMA/$PRGNAM-${VERSION}-${REVNO}.${ARCH}.linux.tar.xz
}

# Creamos directorios extra
F_extradirs(){
mkdir -p $PKG/$HOME/.opera
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
rm -rf $PRGNAM-${VERSION}-${REVNO}.${ARCH}.linux
tar xf $PRGNAM-${VERSION}-${REVNO}.${ARCH}.linux.tar.xz
cd $PRGNAM-${VERSION}-${REVNO}.${ARCH}.linux
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 {} \;

./install \
  --prefix /usr \
  --repackage $PKG/usr

if [ -n "$LIBDIRSUFFIX" ]; then
  mv $PKG/usr/lib $PKG/usr/lib$LIBDIRSUFFIX
  sed -i "s,/lib/,/lib$LIBDIRSUFFIX/," $PKG/usr/bin/$PRGNAM
fi

# Creamos una configuracion basica
cd $PKG/$HOME/.opera
cat > operaprefs.ini << "EOF"
Opera Preferences version 2.1
; Do not edit this file while Opera is running
; This file is stored in UTF-8 encoding

[State]
Detected Country Code=ES
Active Country Code=ES
Active Region=es
Active Default Language=es-ES
Accept License=1
Data1=00c0dd1ab85ad7bae88e381950c9cfaf2cf
Data3=00c0dd1ab85ad7bae88e381950c9cfaf2cf
Country Check=0
Total Uptime=67
Run=0

[User Prefs]
Language Files Directory=
Preferences Version=6
Enable Usage Statistics=0
Address Search Drop Down Weighted Width=2496
Google TLD Default=.google.es
Google TLD Downloaded=1
Home URL=https://foro.seguridadwireless.net/
Startup Type=2

[Install]
Newest Used Version=12.16.1860
Newest Used Beta Name=
First Used Version=12.16.1860
First Run Timestamp=1405647496

[Auto Update]
Country Code=ES

[Proxy]
Opera Turbo Config File={Resources}region/es/turbosettings.xml

[Windows]
License Dialog=447,154,472,460,0
Browser Window=50,50,1266,633,2
New Preferences Dialog=310,100,740,507,0
Document Window=0,0,1366,665,2
EOF
}

###################################
## 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
#Creamos directorios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Comprobamos version instalada del script
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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 04-02-2015, 05:29 (Miércoles)
opera_updater revisado




graciassss!!!
 ;) ;) ;) ;) ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-02-2015, 23:26 (Miércoles)
No se si valdra esto para algo , jajaja


dosbox_updater


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150204

############################################################
## 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=dosbox
WEB=http://sourceforge.net/projects/$PRGNAM/files/$PRGNAM/
VERSION=`curl -s $WEB | grep /latest | cut -d "/" -f8 | sed "s/ //g"`
DOWNLOAD=http://downloads.sourceforge.net/project/$PRGNAM/$PRGNAM/$VERSION/$PRGNAM-$VERSION.tar.gz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; 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 -xzvf $PRGNAM-$VERSION.tar.gz
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 {} \;
 
if [ $VERSION = 0.74 ]; then
echo
echo "$VERDE"Aplicando parche ..."$CIERRE"
sleep 1
cat > dosbox-0.74-gcc46.patch << "EOF"
--- include/dos_inc.h.old 2011-04-28 08:46:04.505011354 +0200
+++ include/dos_inc.h 2011-04-28 08:46:27.104408178 +0200
@@ -21,6 +21,7 @@
 #ifndef DOSBOX_DOS_INC_H
 #define DOSBOX_DOS_INC_H
 
+#include <cstddef>
 #ifndef DOSBOX_DOS_SYSTEM_H
 #include "dos_system.h"
 #endif

EOF
patch -p0 < dosbox-0.74-gcc46.patch
fi

echo
echo "$VERDE"Configurando ..."$CIERRE"
sleep 1

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
make DESTDIR=$PKG
make install-strip DESTDIR=$PKG
install -D -m 0644 src/dosbox.ico $PKG/usr/share/pixmaps/dosbox.ico

# Gneramos el fichero .desktop
cat > dosbox.desktop << "EOF"
[Desktop Entry]
Version=1.0
Name=dosbox
Comment=DOS Emulator
GenericName=dosbox
Exec=dosbox
Icon=/usr/share/pixmaps/dosbox.ico
Terminal=false
Type=Application
Categories=System;
StartupNotify=true
EOF

mkdir -p $PKG/usr/share/applications
mv dosbox.desktop $PKG/usr/share/applications

}

###################################
## 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
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 04-02-2015, 23:29 (Miércoles)


No se si valdra esto para algo , jajaja

Jajajaja Me ha matado ese mensaje

Ya no sabes ni que crear xDD

Salu2
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 04-02-2015, 23:40 (Miércoles)


No se si valdra esto para algo , jajaja

Jajajaja Me ha matado ese mensaje

Ya no sabes ni que crear xDD

Salu2

estoy liado con qemu , que creo tiene algo de uso
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 16-02-2015, 22:28 (Lunes)
Los he subido al ftp , pero  por si acaso ...

django , no se por que a veces se pilla mal la version y eso que es una version fijada
muse , al tener python2 y python3 fallaba al compilar , eso solventado con añadir mas parametros a la config del build , y ademas le he desbloqueado la version , ...ahora compilara el mas nuevo d ela web , en vez de el 2.1.2

wine , ...al final le heche un rato mas esta mañana por el tema de que no encontraba el plugin gecko ...

y es que la version mas nueva es una BETA , y no la puede usar , con lo que he fijado la version de gecko a la estable 2.24 y ya todo perfecto.



____________________________________________________

django_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150216

############################################################
## 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=django
VERSION=1.3.1
SRCNAM=Django
DOWNLOAD=http://pypi.python.org/packages/source/D/Django/Django-1.3.1.tar.gz
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
tar xvf $SRCNAM-$VERSION.tar.gz
cd $SRCNAM-$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 {} \;

python setup.py install --prefix=/usr --root="$PKG"
}

###################################
## 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
#Creamos xzm , instalamos y salimos
f_tareasFinales




muse_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150216
CATEGORIA="Editores de audio"

############################################################
## 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() {
WEB=http://sourceforge.net/projects/lmuse/files/
#VERSION=2.1.2
VERSION=`curl -s $WEB | grep /latest | head -1| rev | cut -f 3- -d . | cut -f 1 -d - | rev`
RAMA=`echo $VERSION | cut -c 1-3`
PRGNAM=muse
DESCARGA=http://sourceforge.net/projects/lmuse/files/$PRGNAM-$RAMA/$PRGNAM-$VERSION.tar.gz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x 3 $DESCARGA
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.gz
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 {} \;

mkdir -p build
cd build
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DLIB_SUFFIX=${LIBDIRSUFFIX} \
    -DENABLE_PYTHON:STRING="ON" \
    -DPYTHON_INCLUDE_DIR=/usr/include/python2.7 \
    -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so \
    -DCMAKE_BUILD_TYPE=Release .. \
    -DCMAKE_ENABLE_VST_VESTIGE=1 \
    -DCMAKE_ENABLE_VST_NATIVE=1 \
    -DENABLE_PYTHON=1 \
    -DENABLE_FLUID=1 \
    -DENABLE_DSSI=1 \
    -DENABLE_LASH=1 \
    -DENABLE_OSC=1 ..
  make
  make install DESTDIR=$PKG
cd ..

# Arreglo para demonio jackd
BINARIO=`grep -r Exec $PKG/usr/share/applications/muse.desktop | cut -d '=' -f2`
sed -i "s/Exec=$BINARIO/Exec=muse_starter/g" $PKG/usr/share/applications/muse.desktop
echo "#!/bin/bash
setcap cap_ipc_lock,cap_sys_nice=ep /usr/bin/jackd
$BINARIO" > $PKG/usr/bin/muse_starter
chmod 777 $PKG/usr/bin/muse_starter
}

###################################
## 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



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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150216

#################################################
## 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=wine
WEB=http://sourceforge.net/projects/wine/files/Slackware%20Packages/
VERSION=$(curl -s $WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
GECKO_WEB=http://sourceforge.net/projects/wine/files/Wine%20Gecko/
#GECKO_VERSION=$(curl -s $GECKO_WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
GECKO_VERSION=2.34
MONO_WEB=http://sourceforge.net/projects/wine/files/Wine%20Mono/
MONO_VERSION=$(curl -s $MONO_WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION-$ARCH-1sg.txz ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
aria2c -x 3 $WEB/$VERSION/$ARCH/$PRGNAM-$VERSION-$ARCH-1sg.txz
fi
# Si gecko no existe se descargara de internet
if [ ! -f ${PRGNAM}_gecko-$GECKO_VERSION-x86.msi ]; then
echo ""
echo "$CYAN"Descargando plugin ${PRGNAM}_gecko-$GECKO_VERSION-x86.msi"$CIERRE"
sleep 3
aria2c -x 3 $GECKO_WEB/$GECKO_VERSION/${PRGNAM}_gecko-$GECKO_VERSION-x86.msi
fi
# Si mono no existe se descargara de internet
if [ ! -f ${PRGNAM}-mono-$MONO_VERSION.msi ]; then
echo ""
echo "$CYAN"Descargando plugin ${PRGNAM}-mono-$MONO_VERSION.msi"$CIERRE"
sleep 3
aria2c -x 3 $MONO_WEB/$MONO_VERSION/${PRGNAM}-mono-$MONO_VERSION.msi
fi
}

# Tareas de conversion de formato
F_compilar(){
echo ""
echo "$VERDE"
txz2dir $PRGNAM-$VERSION-$ARCH-1sg.txz $PKG
mkdir $PKG/usr/share/wine/gecko $PKG/usr/share/wine/mono
mv ${PRGNAM}_gecko-$GECKO_VERSION-x86.msi $PKG/usr/share/wine/gecko
mv ${PRGNAM}-mono-$MONO_VERSION.msi $PKG/usr/share/wine/mono
rm $PKG/var/log/packages/wine*
# El desktop winecfg viene mal ..se repara
rm $PKG/usr/share/applications/winecfg.desktop
echo "[Desktop Entry]
[Desktop Entry]
Categories=Application;Settings
Comment=Settings Tool for WINE
Encoding=UTF-8
Exec=winecfg
Icon=winecfg
Name=Wine Configuration
Terminal=false
Type=Application
" > $PKG/usr/share/applications/winecfg.desktop

# Se da permiso de ejecucion a los plugins
chmod 777 $PKG/usr/share/wine/gecko/${PRGNAM}_gecko-$GECKO_VERSION-x86.msi
chmod 777 $PKG/usr/share/wine/mono/${PRGNAM}-mono-$MONO_VERSION.msi
}

###################################
## 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 script
f_versionInstalada
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos xzm , instalamos y salimos
f_tareasFinales


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 17-02-2015, 20:12 (Martes)
uummm,actualizador de muse nuevo,¿podrias subir el modulo updaters nuevo a mediafire mismo,asi modifico la live.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 17-02-2015, 22:14 (Martes)
http://www.mediafire.com/download/7ifn12eald6wnrh/wifislax_updaters-3.9-noarch-1sw.xzm

prueba el de muse y me cuentas , por que no lo he probado en wifislax-4.10.1

de hecho ya sabeis que al poco , mi iso ya no es igual a la ultima publicada...en mi iso actual funciona bien , no recuerdo por que bloquee la version.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 17-02-2015, 23:03 (Martes)
la bloqueaste porque la ultima tenia una letra como 2.1.2e o algo asi y daba error,mañana a ver si tengo un rato y la pruebo,lo que no encuentro es la manera de todas las pistas que tengo grabadas mezclarlas y exportarlas a un archivo wave,en el audacity si que sale la opcion exportar como pero en muse no lo encuentro,investigare un poco mas a ver,gracias por el modulo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 18-02-2015, 13:11 (Miércoles)
http://www.mediafire.com/download/7ifn12eald6wnrh/wifislax_updaters-3.9-noarch-1sw.xzm

prueba el de muse y me cuentas , por que no lo he probado en wifislax-4.10.1

de hecho ya sabeis que al poco , mi iso ya no es igual a la ultima publicada...en mi iso actual funciona bien , no recuerdo por que bloquee la version.

Lo he probado en la última ISO de desarrollo y el actualizador del wine da un error, captura (picar en la imagen para ampliar):

(http://es.zimagez.com/miniature/instantnea113.png) (http://es.zimagez.com/zimage/instantnea113.php)

Un saludo.

Pd. En esta ISO no me aparece la raya vertical morada de la izquiera cuando arranco sin el módulo de la Nvidia.
Se ve la pantalla perfecta, jejeje.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 18-02-2015, 21:43 (Miércoles)
sera en la de desarrollo porque ayer me funciono bien a mi en la 4.10.1.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: CristianEdgardo en 19-02-2015, 00:11 (Jueves)
goole chrome updater anda fallando... osera a mi??? ^-^ ^-^ ^-^


EDITADO: es problema en mi changes dat, alguan cosa que instale, ...
tema solucionado. ja o eso creo...
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: pepe10000 en 19-02-2015, 12:28 (Jueves)
sera en la de desarrollo porque ayer me funciono bien a mi en la 4.10.1.

Correcto sol666, lo he comprobado en la 4.10.1, funciona de fabula y sin el error del Gecko.

Un saludo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-02-2015, 22:49 (Viernes)
sera en la de desarrollo porque ayer me funciono bien a mi en la 4.10.1.

Correcto sol666, lo he comprobado en la 4.10.1, funciona de fabula y sin el error del Gecko.

Un saludo.

si funciona en una ,funciona en la otra ..a fin de cuentas bajan e instalan lo mismo.


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 27-02-2015, 22:53 (Viernes)
funciones_updater

SIMPLIFICADO

¿que quieres decir con simplificado?

Pues he tomado como ejemplo el modo de actualizar de geminis_demon , es decir . eliminar el paquete de sistema , solo si el paquete nuevo se genera correctamente.

Puesto que el proceso de actualizacion solo se lleva a cabo si el paquete nuevo se genera bien , ya es innecesario el tema de backup del paquete de sistema.

Ahora solo preguntara al inicio ,cuando muestre

version de sistema vs version online

si le das enter ya todo va de una tirada-

si el proceso acaba OK , entonces desinstalara la vieja e instalara la nueva , sin historietas.


__________________________________________________________________________________________________________________

funciones_updater

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

# Script by www.seguridadwireless.net

FUNCIONES_VERSION=20150227

# Colores
CIERRE=${CIERRE:-""}
ROJO=${ROJO:-""}
VERDE=${VERDE:-""}
CYAN=${CYAN:-""}
AMARILLO=${AMARILLO:-""}
BLANCO=${BLANCO:-""}
ROSA=${ROSA:-""}

# Variables globales
PRGNAM=funciones
VERSION=$FUNCIONES_VERSION
WEB=http://www.downloadwireless.net
DOWNLOAD=$WEB/wifislax-updaters/Funciones/${PRGNAM}_updater
NUCLEOS=$(grep -c \^processor /proc/cpuinfo)
BUILD=${BUILD:-1}
TAG=${TAG:-sw}
CWD=$(pwd)

# variable que restara un nucleo para reservarlo al sistema si hay mas de 2
if [ $NUCLEOS -gt 2 ]; then
let NUCLEOS=$NUCLEOS-1
fi

# Vamos a liberar toda la memoria cache
sync && echo 3 > /proc/sys/vm/drop_caches

# Eliminamos posibles ficheros viejos de modificaciones de scripts
rm -rf /opt/wifislax-updaters/*/*~ &>/dev/null

# Funcion que limpia
f_exitmode() {
   rm -Rf $TMP &>/dev/null
   exit 1
}

# Funcion que muestra Presentacion
f_presentacion() {
clear
sleep 0.1 | echo ""
sleep 0.1 | echo ""
sleep 0.1 | echo "$BLANCO"  "       ******************************"   
sleep 0.1 | echo "$VERDE"   "          Actualizador/Instalador    "   
sleep 0.1 | echo "$VERDE"   "          Paquete: "$AMARILLO"$PRGNAM"                                                 
sleep 0.1 | echo "$VERDE"   "                                   "
sleep 0.1 | echo "$VERDE"   "          www.seguridadwireless.net  "
sleep 0.1 | echo "$BLANCO"  "       ******************************"
sleep 0.1 | echo "$CERRAR"
sleep 1
}

# Comprobar conexion by geminis_demon
f_comprobarConexion() {
   if [ ! "$(ping google.com -c1 2>/dev/null)" ]; then
      echo "No tengo internet ... el script se cerrara."
      echo ""
      sleep 1
      exit 0
   fi
}

# Comprobacion de updates para el script
f_comprobarUpdates() {
   SERVIDOR_WEB="http://www.downloadwireless.net/wifislax-updaters"
   DIRECTORIO=$(find /opt/wifislax-updaters -type f -name ${PRGNAM}*| rev | cut -d/ -f2- | rev)
   SERVIDOR_VERSION=$(timeout -s SIGTERM 10 curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater | grep "SCRIPT_VERSION=" | head -1 |cut -d "=" -f2)

   echo ${CYAN}Version Script$CIERRE: $ROJO${SCRIPT_VERSION:6}$BLANCO/$AMARILLO${SCRIPT_VERSION:4:2}$BLANCO/$ROJO${SCRIPT_VERSION:0:4}$CIERRE

   if [ "$(ping downloadwireless.net -c1 2>/dev/null)" ]; then
      if [[ $SCRIPT_VERSION -lt $SERVIDOR_VERSION ]]; then
         echo
         echo "$ROSA"Comprobando si hay actualizaciones para el script..."$CIERRE."
         echo ${ROJO}NUEVA VERSION$CIERRE
         echo
         echo ${ROSA}Version Server$CIERRE: $ROJO${SERVIDOR_VERSION:6}$BLANCO/$AMARILLO${SERVIDOR_VERSION:4:2}$BLANCO/$ROJO${SERVIDOR_VERSION:0:4}$CIERRE
         echo
         echo ${CYAN}Actualizando ${PRGNAM}_updater
         curl -s $SERVIDOR_WEB/${DIRECTORIO##*/}/${PRGNAM}_updater -o $DIRECTORIO/${PRGNAM}_updater
         echo ${ROJO}LISTO$CIERRE
         sleep 1
         $0
         exit
      fi
   fi
}

# Definimos arquitectura del sistema. Se le pasa la arquitectura como parametro o la calcula automaticamente si no se indica nada
f_arquitectura() {
   ARCH=$1
   if [ -z "$ARCH" ]; then
     case "$( uname -m )" in
      i?86) export ARCH=i486 ;;
      arm*) export ARCH=arm ;;
         *) export ARCH=$( uname -m ) ;;
     esac
   fi

   if [ "$ARCH" = "i486" ]; then
     SLKCFLAGS="-O2 -march=i486 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "i686" ]; then
     SLKCFLAGS="-O2 -march=i686 -mtune=i686"
     LIBDIRSUFFIX=""
   elif [ "$ARCH" = "x86_64" ]; then
     SLKCFLAGS="-O2 -fPIC"
     LIBDIRSUFFIX="64"
   else
     SLKCFLAGS="-O2"
     LIBDIRSUFFIX=""
   fi

   set -eu
}

# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      INSTALADA="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//"|rev|cut -d'-' -f3-|rev|tail -1)"
      echo ""
      echo ""$AMARILLO"La version del sistema es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 1
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas nueva en su pagina web es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi

}

# Elimina una version anterior
f_eliminaVersion() {
   sleep 1
   if [ $PRGNAM = xampp ]; then
   /opt/lampp/lampp stop
   fi
   if [ $PRGNAM = metasploit ]; then
   /etc/rc.d/rc.metasploit stop
   fi
   echo ""
   echo "$ROJO"Eliminando la version del sistema..."$CIERRE"
   sleep 2
   removepkg /var/log/packages/$PRGNAM-[0-9]*
}

# Crea el directorio temporal de trabajo
f_directorioTemporal() {
   TMP=${TMP:-/tmp/build/$PRGNAM}
   PKG=$TMP/package-$PRGNAM
   OUTPUT=${OUTPUT:-/tmp}
   rm -rf $PKG
   mkdir -p $TMP $PKG $OUTPUT
   cd $TMP
}

# Hace strip al paquete
f_strip() {
   cd $PKG
   stripdir $PKG 2>/dev/null
}

# Creamos xzm , instalamos y salimos
f_tareasFinales() {
   # Si el sistema tiene una version anterior se eliminara
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      f_eliminaVersion
   fi
   echo ""
   echo "$VERDE"Instalando y creando modulo xzm ..."$CIERRE"
   # Liberamos memoria
   sync && echo 3 > /proc/sys/vm/drop_caches
# Guardamos los modulos en carpetas por categoria
   cd ..
   CATEGORIA=`echo $CWD | cut -d "/" -f4`
   if [ ! -d $HOME/Desktop/$CATEGORIA ]; then
   mkdir -p $HOME/Desktop/$CATEGORIA
   fi

#Para sigram nos basamos en el log. Para el resto siempre es igual
if [ $PRGNAM = sigram ]; then
cleandir $PKG &>/dev/null
log2xzm $TMP/sigram.log $HOME/Desktop/$CATEGORIA/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$CATEGORIA/$PRGNAM-${VERSION}-$ARCH-$BUILD$TAG.xzm /
else
cleandir $PKG &>/dev/null
dir2xzm $PKG $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
xzm2dir $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm /
   fi
# Iniciar algun servicio si existe
   if [ -f $PKG/etc/rc.d/rc.teamviewerd ]; then
   /etc/rc.d/rc.teamviewerd start &>/dev/null
   fi
# Variables especiales para renombrar algunos modulos
   if [ $PRGNAM = jre ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/010-$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   if [ $PRGNAM = firefox ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/008-Firefox-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
      if [ $PRGNAM = firefox_multi ]; then
   mv $HOME/Desktop/$CATEGORIA/$PRGNAM2-$VERSION-$ARCH-$BUILD$TAG.xzm $HOME/Desktop/$CATEGORIA/008-Firefox_$LANGUAGE-$VERSION-$ARCH-$BUILD$TAG.xzm
   fi
   rm -Rf $TMP &>/dev/null
   clear
   echo ""
   echo ""$VERDE"Creado modulo del paquete "$AMARILLO"$PRGNAM-$VERSION"$CIERRE""
   echo ""
   echo "$VERDE"Las tareas han finalizado"$CIERRE"
   
   if [ $PRGNAM = metasploit ]; then
       /etc/rc.d/rc.metasploit start &> /dev/null
   fi
   if [ -x /usr/bin/update-desktop-database ]; then
       /usr/bin/update-desktop-database -q /usr/share/applications >/dev/null 2>&1
   fi
   
   if [ -x /usr/bin/update-mime-database ]; then
       /usr/bin/update-mime-database /usr/share/mime >/dev/null 2>&1
   fi
   
   if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
   if [ -x /usr/bin/gtk-update-icon-cache ]; then
       /usr/bin/gtk-update-icon-cache /usr/share/icons/hicolor >/dev/null 2>&1
   fi
   fi
   
   if [ -x /usr/bin/glib-compile-schemas ]; then
       /usr/bin/glib-compile-schemas /usr/share/glib-2.0/schemas >/dev/null 2>&1
   fi
   
   sleep 1
   echo ""
   echo "$VERDE"Bye Bye"$CIERRE"
   echo ""
   sleep 1
# Liberamos memoria
   sync && echo 3 > /proc/sys/vm/drop_caches
# Salimos del script
   exit 0
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 28-02-2015, 11:07 (Sábado)
He reparado esta mañana , angry ip scan , python3 , transmission y he retocado el script funciones

dejo el pack actualizado.


http://www.mediafire.com/download/x53ni8g6idv6fxx/wifislax_updaters-4.0-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-03-2015, 23:34 (Domingo)
jdk_updater

esta es la version full de java , necesaria para compilar codigo en java  ...  ;D

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150301

############################################################
## 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=jdk
WEB=$(curl -s http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html | grep -E i586.tar.gz | grep linux | cut -d ":" -f4- | cut -d "\"" -f2)
ARCHIVO=${WEB##*/}
VERSION=$(echo $ARCHIVO | cut -d "-" -f 2)
DVER=1.8.0_$(printf $VERSION | cut -du -f2)
}

# Si el paquete no existe se descargara de internet
F_download(){
echo ".oracle.com TRUE / FALSE 1906724535 oraclelicense accept-securebackup-cookie">cookie
if [ ! -f $ARCHIVO ]; then
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
aria2c -x 3 --load-cookies=cookie $WEB
fi
}

# Empezamos a crear el paquete
F_crearpaquete(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
LIB_ARCH=i386
LIBDIRSUFFIX=""
SRC_ARCH="i586"
cd $TMP
tar xvf $PRGNAM-$VERSION-linux-$SRC_ARCH.tar.gz
chown -R root.root $PKG
find $PKG \
\( -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 {} \;

mkdir -p $PKG/etc/profile.d
echo "#!/bin/csh
setenv JAVA_HOME /usr/lib/java
setenv MANPATH \${MANPATH}:\${JAVA_HOME}/man
setenv PATH \${PATH}:\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin" >$PKG/etc/profile.d/jdk.csh

echo "#!/bin/sh
export JAVA_HOME=/usr/lib/java
export MANPATH=\"\${MANPATH}:\${JAVA_HOME}/man\"
export PATH=\"\${PATH}:\${JAVA_HOME}/bin:\${JAVA_HOME}/jre/bin\"" >$PKG/etc/profile.d/jdk.sh
chmod +x $PKG/etc/profile.d/jdk.sh
chmod +x $PKG/etc/profile.d/jdk.csh

mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}
( cd $PKG/usr/lib${LIBDIRSUFFIX}
  mv ${TMP}/${PRGNAM}${DVER} java
  ln -sf java ${PRGNAM}${DVER}
)


mkdir -p $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
cd $PKG/usr/lib${LIBDIRSUFFIX}/mozilla/plugins
ln -sf /usr/lib${LIBDIRSUFFIX}/java/jre/lib/${LIB_ARCH}/libnpjp2.so libnpjp2.so

cd $PKG/usr/lib${LIBDIRSUFFIX}
ln -sf ./java/jre/lib/${LIB_ARCH}/server/libjvm.so .

# Entrada a escritorio
mkdir -p $PKG/usr/share/{applications,icons,mime}
cp -a $PKG/usr/lib${LIBDIRSUFFIX}/java/jre/lib/desktop/applications/* \
  $PKG/usr/share/applications/
cp -a $PKG/usr/lib${LIBDIRSUFFIX}/java/jre/lib/desktop/icons/hicolor \
  $PKG/usr/share/icons/
cp -a $PKG/usr/lib${LIBDIRSUFFIX}/java/jre/lib/desktop/mime/packages \
  $PKG/usr/share/mime/

# Si el sistema tiene jre ya no es necesario ya que este paquete incluye jre
if [ -f /var/log/packages/jre-[0-9]* ]; then
echo ""
echo "Se detecto en el sistema el paquete Jre..."
echo "Se eliminara antes de instalar jdk..."
echo ""
sleep 2
removepkg /var/log/packages/jre-[0-9]*
fi

# Ejecutamos l script que define las variables de sistema asi no es necesraio reiniciar
sh $PKG/etc/profile.d/jdk.sh
}

###################################
## 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 script
f_versionInstalada
#Si no existe el fichero se descargara
F_download
# Empezamos a crear el paquete
F_crearpaquete
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 20-04-2015, 18:48 (Lunes)
Dejo aqui un programita para desarrollo en arquitecturas MIPS: MARS

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

# Script by vk496 for www.seguridadwireless.net

SCRIPT_VERSION=20150420

############################################################
## 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=mars
WEB=http://courses.missouristate.edu/KenVollmar//mars/download.htm
VERSION=$(curl -s $WEB | grep "jar archive including" -m1 | grep -Po '<font \K.*(?=</font>)' | grep -Po '>\K.*(?=</font>)' | cut -d, -f1 | cut -c 2-)
LINK=$(curl -s $WEB | grep -Po '<a\K.*(?=>)' | grep "MARS_" | sort -h | tail -1 | grep -Po 'href="\K.*(?=")')
DESCARGAR="$(echo "$WEB"|cut -d/ -f-6)/$LINK"
ARCHIVO=$(echo "$LINK" | rev | cut -d/ -f1 | rev)
}

# Creamos directorios extra
# F_extradirs(){
# }

# Comprobar dependencias
F_dependencias(){
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo ""
DEPENDENCIAS="jre"
CONTINUAR=0

echo "$CYAN"Dependencias de este paquete:""
echo ""
sleep 3

for X in $DEPENDENCIAS; do

if hash java 2>/dev/null ; then
echo ""$AMARILLO"jre :$VERDE Instalada"$CIERRE""
else
echo ""$AMARILLO"jre :$ROJO  No instalada"$CIERRE""
CONTINUAR=1
fi
done

if [ $CONTINUAR -eq 1 ]; then
echo ""
echo ""$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE""
echo ""
sleep 3
exit 1
else
echo ""
echo ""$VERDE"Bien ..podemos continuar"$CIERRE""
echo ""
fi
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
mkdir -p $PKG/usr/bin $PKG/usr/share/pixmaps $PKG/usr/share/applications
mv $ARCHIVO $PKG/usr/bin

#Desktop
echo "[Desktop Entry]
Name=MARS
Comment=Mips Assembly and Runtime Simulator
Exec=java -jar $ARCHIVO
Icon=mars
Terminal=false
X-MultipleArgs=false
Type=Application
Categories=Development;
Path=/usr/bin
" > $PKG/usr/share/applications/mars.desktop

#Icono de FPC
echo "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
rkJggg==" | base64 -d >$PKG/usr/share/pixmaps/mars.png
sleep 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
#Creamos directorios extra
# F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
F_dependencias
#Asignamos o detectamos arquitectura
f_arquitectura i386
#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

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 21-04-2015, 21:38 (Martes)
mañana ya trabajo de noche y podre repasar mas lo que se ha movido.

tengo lunes y martes libres  , y no entro mas que  lo justito.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-05-2015, 22:09 (Sábado)
No se si solo me pasa a mi , pero ...

a veces lanzo varios updaters a la vez , y luego minimizo las ventanas y no se despues cual es cual..tengo que ir leyendo code, para saber a que app pertenece esa ventana shell ...


voy a solventar eso , haciendo que

F_variables

despues del name de programa, cambie el titulo de la shell  ;D

a $PRGNAM

asi sabremos cada shell que esta compilando y si falla sabremos que es....sin necesidad de mirar las lineas de code en busca de pistas de lo que estaba compilando hay.,
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 03-05-2015, 00:48 (Domingo)
No se si solo me pasa a mi , pero ...

a veces lanzo varios updaters a la vez , y luego minimizo las ventanas y no se despues cual es cual..tengo que ir leyendo code, para saber a que app pertenece esa ventana shell ...


voy a solventar eso , haciendo que

F_variables

despues del name de programa, cambie el titulo de la shell  ;D

a $PRGNAM

asi sabremos cada shell que esta compilando y si falla sabremos que es....sin necesidad de mirar las lineas de code en busca de pistas de lo que estaba compilando hay.,
En su momento lo estuve trasteado. Pero no di con la forma de lograrlo para los updaters :(

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 03-05-2015, 01:03 (Domingo)
ejemplo con el aircrac-ng_updater

el  base_updater , ya genera la entrada ..mira debajo del PRGNAM


############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################
# Definicion de variables
F_variables() {
   PRGNAM=aircrack-ng
   echo -ne "\033]2;${PRGNAM}_updater\007"
   WEB=http://svn.aircrack-ng.org/trunk
   VERSION=`echo $(curl -s $WEB/VERSION)-r$(curl -s $WEB/ | grep -i revision | head -1 | cut -d ":" -f 1 | cut -d ' ' -f4)`
   SVN="svn co http://svn.aircrack-ng.org/trunk/"
}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 28-05-2015, 12:59 (Jueves)
IDE de Desarrollo Multiplataforma: codeblocks

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150528

############################################################
## 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() {
WEB=http://sourceforge.net/projects/codeblocks/files/Sources/
VERSION=$(curl -s $WEB | grep -m1 "class=\"folder" | awk '{print $2}' | cut -d "\"" -f 2)
PRGNAM=codeblocks
echo -ne "\033]2;${PRGNAM}_updater\007"
DOWNLOAD=$(curl -s ${WEB}$VERSION/ | grep "class=\"file" | grep tar.gz | cut -d "\"" -f 2)
}

# Comprobar dependencias
F_dependencias(){
if [ -f /usr/bin/wx-config ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi

echo "$ROSA"Comprobando dependencias ..."$CIERRE"
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"wxPython"$CIERRE: $EXIST"
if [ ! -f /usr/bin/wx-config ]; then
echo ""
echo "$ROJO"No se cumplen los requisitos no se puede continuar"$CIERRE"
echo ""
sleep 3
exit 1
fi
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
rm -rf $PRGNAM-$VERSION
tar xvf $DOWNLOAD
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 {} \;

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 3

./bootstrap

CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make
make install DESTDIR=$PKG
}

###################################
## 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
#Comprobamos dependencias necesarias
F_dependencias
#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

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-06-2015, 03:21 (Martes)
tras pelearme un rato ...

pitivi_updater

probado solo en iso desarrollo


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150602
CATEGORIA="Editores de video"

############################################################
## 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=pitivi
ARCH=x86
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=http://pitivi.ecchi.ca/bundles/releases/
FICHERO=`curl -s $WEB | grep $ARCH.tar | head -1 | cut -d '"' -f2`
VERSION=`echo $FICHERO | sed 's/pitivi-//g' | cut -d - -f-2`
SUBVERSION=`echo $FICHERO | sed 's/pitivi-//g' | cut -d - -f-1`
DOWNLOAD=`echo "$WEB$FICHERO"`
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $FICHERO ]; 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(){
mkdir -p $PKG/opt/$PRGNAM/
mkdir -p $PKG/usr/bin/
echo
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 1
tar xpvf $FICHERO
rm -rf *.md5sum
mv -f ${PRGNAM}-$SUBVERSION-$ARCH $PKG/opt/$PRGNAM/${PRGNAM}
ln -sf ../../opt/${PRGNAM}/${PRGNAM} $PKG/usr/bin/${PRGNAM}
rm -rf $FICHERO
}

F_desktop(){
# Icono
mkdir -p $PKG/usr/share/pixmaps/
echo "
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
" | base64 -d > $PKG/usr/share/pixmaps/$PRGNAM.png

# Fichero desktop
mkdir -p $PKG/usr/share/applications
echo "[Desktop Entry]
Type=Application
Name=$PRGNAM
Icon=$PRGNAM
Exec=$PRGNAM
Terminal=false
Categories=AudioVideo;" > $PKG/usr/share/applications/$PRGNAM.desktop
}

###################################
## 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
#Comprobamos version instalada del paquete
f_versionInstalada
#Si no existe el fichero se descargara
F_download
#Descomprimir fichero descargado y compilamos
F_compilar
#Creamos la entrada al menu
F_desktop
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 13-06-2015, 13:35 (Sábado)
hola,el actualizador de ffmpeg me da error en la 4.10.1,creo que es por algo de lib265
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 13-06-2015, 13:54 (Sábado)
hola,el actualizador de ffmpeg me da error en la 4.10.1,creo que es por algo de lib265

pues actualiza x265 ..en slackbuilds tienes chicha.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 17-06-2015, 12:20 (Miércoles)
Hay que retocar wifislax-updaters. Acabo de darme cuenta que ha metido "pitivi" en la categoría de Multimedia, pero no en la subcategoría correspondiente...

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 29-06-2015, 18:10 (Lunes)
Dejo esta libreria: libnfc

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150629

############################################################
## 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=libnfc
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=https://bintray.com/nfc-tools/sources/libnfc
DOWNLOAD=https://bintray.com$(curl -sk $WEB  | grep "download/nfc-tools" -m1 \
| grep -Po 'href="\K.*(?="><span)')
VERSION=$(echo "$DOWNLOAD"| rev | cut -d/ -f1 | cut -d. -f3- | rev | cut -d- -f2)

}

# Creamos directorios extra
#F_extradirs(){

#}

# Comprobar dependencias
#F_dependencias(){

#}

# 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 {} \;
 
# Configuramos paquete
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux \
  --with-readline=no

make -j$NUCLEOS
make install DESTDIR=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}

###################################
## 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
#Creamos directorios extra
#F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
#F_dependencias
#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

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 29-06-2015, 19:08 (Lunes)
pcsc-lite

Este es un servicio de segundo plano. Creo que debería estar en el apartado de Sistema, aunque realmente no sé donde debería estar.

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150629

############################################################
## 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=pcsc-lite
WEB="https://alioth.debian.org/frs/?group_id=30105"
echo -ne "\033]2;${PRGNAM}_updater\007"
DOWNLOAD=https://alioth.debian.org$(curl -ks $WEB | grep pcsc-lite -m1 |grep -Po 'href="\K.*(?=">)')
VERSION=$(echo "$DOWNLOAD" |rev | cut -d/ -f1 | cut -d. -f3- | cut -d- -f1 | rev )

}

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

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
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 {} \;
}

#Configurando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make -j$NUCLEOS
make install DESTDIR=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}


###################################
## 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 script
f_versionInstalada
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 29-06-2015, 19:53 (Lunes)
Y este, a la categoria de Driver  ;D

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150629

############################################################
## 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=acsccid
WEB="http://acsccid.sourceforge.net/"
echo -ne "\033]2;${PRGNAM}_updater\007"
DOWNLOAD=$(curl -s http://acsccid.sourceforge.net/ | grep "acsccid-" | grep -Po 'href="\K.*(?=">)')
VERSION=$(echo "$DOWNLOAD" |rev | cut -d/ -f1 | cut -d. -f3- | cut -d- -f1 | rev )

}

# Comprobar dependencias
F_dependencias(){
echo
if ls /usr/lib/libusb*so* 2>/dev/null >/dev/null; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
SALIR=1
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"libusb"$CIERRE: $EXIST"

if [ $SALIR ]; then
 exit
fi

if hash pcscd 2>/dev/null; then
 EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
 EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$AMARILLO"pcsc-lite"$CIERRE: $EXIST"

if ! hash pcscd 2>/dev/null; then
echo ""
echo ""$ROJO"No se cumplen los requisitos"$CIERRE"... "$VERDE"resolviendo"$CIERRE"..."
sleep 3
cd /opt/wifislax-updaters/Sistema/ && xterm /opt/wifislax-updaters/Sistema/pcscd_updater
fi

echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
}

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

#Descomprime el fichero descargado
F_descomprime() {
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
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 {} \;
}

#Configurando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make -j$NUCLEOS
make install DESTDIR=$PKG

find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
  | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
}


###################################
## 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
#Comprobar dependencias
F_dependencias
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales

EDITADO 1/7/2015 a las 2:04

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-06-2015, 07:54 (Martes)
ya he metido todos.

2 cosillas


1 - sigram  --> hace mucho que la web esta off ...  (meses)  y el updater no va en consecuencia.

creo seria mejor retirarlo temporalmente de la iso


2 - tor-browser  -->  no funciona el updater , o no pilla version o no pilla el fichero , una de dos es.

¿lo miras tu o lo miro yo esta noche?
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: geminis_demon en 30-06-2015, 09:48 (Martes)
Respeto a silgram, se puede grepear la versión desde github: https://github.com/sialan-labs/sigram/blob/master/installer.xml

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-06-2015, 11:00 (Martes)
Respeto a silgram, se puede grepear la versión desde github: https://github.com/sialan-labs/sigram/blob/master/installer.xml



si ,el problema es que no hay installer.run   ...la web esta off desde hace meses, y solo se puede instalar  compilando el code de github, lo cual lleva a re-escribir bastante del updater.  y eso suponiendo que compile ..por que debe tener mil y una dependencias.


Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-06-2015, 14:01 (Martes)

2 - tor-browser  -->  no funciona el updater , o no pilla version o no pilla el fichero , una de dos es.


Cambiar solo esta linea de tor-browser_updater

Citar
VERSION=$(curl -s $WEB | sed -e 's/\(<[^<][^<]*>\)//g' | grep "\." | grep - | awk '{print $1}' | sort -g |tail -1 | cut -d "/" -f1)

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-06-2015, 14:12 (Martes)
@USUARIONUEVO

Hay una linea que hay que cambiar uan linea del driver acsccid


xterm /opt/wifislax-updaters/Sistema/pcscd_updater

por

xterm /opt/wifislax-updaters/Sistema/pcsc-lite_updater

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-06-2015, 22:13 (Martes)
@USUARIONUEVO

Hay una linea que hay que cambiar uan linea del driver acsccid


xterm /opt/wifislax-updaters/Sistema/pcscd_updater

por

xterm /opt/wifislax-updaters/Sistema/pcsc-lite_updater


Salu2


para la prixima usa el  $PRGNAM_updater


ya que el name del script es igual al PRGNAM , en el 99,99 de scripts ... creo que el de ati no comple, pero seria el unico , los demas si ... lo hice con idea de facilitar estas variables volatiles ...


 voy arevisar todo esto.

THX   >:(
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-06-2015, 22:31 (Martes)
Me re-leo   mi respuesta y me auto-collejeo


es otro script el que ejeuctaria al anterior, y la variable PRGNAM , no se puede aplicar aqui.   :(
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 30-06-2015, 23:02 (Martes)
Me re-leo   mi respuesta y me auto-collejeo


es otro script el que ejeuctaria al anterior, y la variable PRGNAM , no se puede aplicar aqui.   :(
;D

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 30-06-2015, 23:07 (Martes)
solo queda sigram

para compilar desde el git, requiere QT5 ....   ^-^


creo que lo quitare , aunque he hecho un updater de qt5 , tarda bastante en compilar y me dio error alguna vez , ...  algo no esta bien en el updater ,por que desde el slackbuild compila siempre bien y mas rapido...esta pendiente de revisar.
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-07-2015, 00:23 (Miércoles)
solo queda sigram

para compilar desde el git, requiere QT5 ....   ^-^


creo que lo quitare , aunque he hecho un updater de qt5 , tarda bastante en compilar y me dio error alguna vez , ...  algo no esta bien en el updater ,por que desde el slackbuild compila siempre bien y mas rapido...esta pendiente de revisar.
He visto que Telegram tiene cliente oficial para Linux con sus sources. Creo que deberíamos tirar de ese antes que de Sigram (debido a su abandono)

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-07-2015, 00:50 (Miércoles)
DE MOMENTO , he eliminado el updater de sigram y qt5


sigram por abandono , y el de qt5 por que falla compilando ...  ???


el resto esta revisado y funcionando , he revisado el de metasploit, que siempre dice version 4.10  y van por 4.11.3   ;D

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-07-2015, 01:37 (Miércoles)
mfoc lo meteria en Auditoria

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150701

############################################################
## 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=mfoc
WEB="https://raw.githubusercontent.com/nfc-tools/mfoc/master/configure.ac"
echo -ne "\033]2;${PRGNAM}_updater\007"
DOWNLOAD="https://github.com/nfc-tools/mfoc.git"
VERSION=$(curl -s "$WEB" | grep AC_INIT | cut -d, -f 2 | cut -d[ -f2 | cut -d] -f1 )

}

# Comprobar dependencias
F_dependencias(){
echo
if ls /usr/lib/libnfc.so* 2>/dev/null >/dev/null; then
 EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
 EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi

echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"libnfc"$CIERRE: $EXIST"


if ! ls /usr/lib/libnfc.so* 2>/dev/null >/dev/null; then
echo ""
echo ""$ROJO"No se cumplen los requisitos"$CIERRE"... "$VERDE"resolviendo"$CIERRE"..."
sleep 3
cd /opt/wifislax-updaters/Librerias && xterm /opt/wifislax-updaters/Librerias/libnfc_updater
fi

echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
}

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
git clone $DOWNLOAD
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
cd $PRGNAM
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 {} \;
}

#Configurando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
autoreconf -vis
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make -j$NUCLEOS
make install DESTDIR=$PKG

}


###################################
## 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
#Comprobar dependencias
F_dependencias
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales

Nota: Este hace uso de github, como novedad.

EDITADO 1/7/2015 a las 2:05

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 01-07-2015, 02:02 (Miércoles)
Acabo de cambiar el source del Driver acscdid y mfoc.

Cuando vas a comprobar las dependencias de una libreria mediante el comando ls, hay que redirigir a null tanto > como 2>

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-07-2015, 23:38 (Miércoles)
estuibe haciendo algunas pruebas con sigram

instale qt5 en mi sistema, y compile las sources del git , pero ...

despues de batallar un rato y conseguir compilarlo , resulta que se queda todo el tiempo en

connecting....

no conecta nunca, y al querer cerrarlo , no se va del area de notificacion , teniendo que tirar del gestor de procesos para matarlo.


total que el tema esta zanjado , lleva un año casi sin movimiento tampoco en el git ...asi que. bye bye.


ademas ,compilar las qt5 en un octocore , me costo casi una hora , y el pasquete ocupa 38 megas ...un sin sentido.  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 01-07-2015, 23:39 (Miércoles)
pfff, para mas inri / guasa / cachondeo

http://slackbuilds.org/repository/14.1/network/telegram/?search=Telegram

______________________________________________________________________________

tema kernel , lo tengo cecidido y cerrado 3.18.17 ,ya tengo el smp y el normal en mi iso

quiero antes crear 3 updaters , el de telegram ...que lo dejo para el final , uno para avidemux,  y otro para un programa de subtitulos que he visto en la seccion modulos y parece interesante.


despues de eso , empiezo con el tema gpu-crack
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 02-07-2015, 01:19 (Jueves)
Antes de cerrar, espera a que haga el de mfcuck.


Libnfc, pscsp-lite, mfoc... Todo son paquetes para poder meterse con el tema de auditorías NFC (@Hwagm guiño guiño guiño)

Mfcuck lo dejé para el final porque resulta que con la última versión de libnfc no es capaz de encontrar la clave correcta, y hay que compilarlo bajo las sources del antiguo libnfc... Vamos, un lío bien bonito.

Una vez acabado, se podría decir oficialmente que nuestra distribución tiene soporte para auditoría de las tarjetas Mifare ;)

Salu2

Enviado desde mi Nexus 5 mediante Tapatalk

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-07-2015, 01:33 (Jueves)
lo que he cerrado es el tema sigram , que le pueden dar por saco  ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: sol666 en 02-07-2015, 20:19 (Jueves)
pfff, para mas inri / guasa / cachondeo

http://slackbuilds.org/repository/14.1/network/telegram/?search=Telegram

______________________________________________________________________________

tema kernel , lo tengo cecidido y cerrado 3.18.17 ,ya tengo el smp y el normal en mi iso

quiero antes crear 3 updaters , el de telegram ...que lo dejo para el final , uno para avidemux,  y otro para un programa de subtitulos que he visto en la seccion modulos y parece interesante.


despues de eso , empiezo con el tema gpu-crack
el programa de subtitulos aegisub lo subi yo a modulos,probe unos cuantos antes pero este es el mas completo,tiene un monton de efectos,asi que pa la iso.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-07-2015, 22:07 (Jueves)
pfff, para mas inri / guasa / cachondeo

http://slackbuilds.org/repository/14.1/network/telegram/?search=Telegram

______________________________________________________________________________

tema kernel , lo tengo cecidido y cerrado 3.18.17 ,ya tengo el smp y el normal en mi iso

quiero antes crear 3 updaters , el de telegram ...que lo dejo para el final , uno para avidemux,  y otro para un programa de subtitulos que he visto en la seccion modulos y parece interesante.


despues de eso , empiezo con el tema gpu-crack
el programa de subtitulos aegisub lo subi yo a modulos,probe unos cuantos antes pero este es el mas completo,tiene un monton de efectos,asi que pa la iso.

por eso estoy haciendole el updater , si  te molestaste en subirlo , es por que es buen programa..y un updater no cuesta nada tenerlo.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-07-2015, 22:09 (Jueves)
Tema kernel , estoy atrapado ...


Opciones ...

La facil es volver a poner el mismo que lleva wifislax 4.10.1 y los modulos de hascat etc segurian siendo validos.


La opcion 2 es subir a un kernel 4.0  o 4.1  ....pero creo que los catalyst 15.5 de amd no van bien con hashcat ,  el  14.12  mas o menos andaba ,pero el 15.5 creo que nanai.
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-07-2015, 23:27 (Jueves)
TELEGRAM


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150702

############################################################
## 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=telegram
SRCNAM=tsetup32
        SRCDIR=Telegram
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=https://desktop.telegram.org/
VERSION=`curl -s $WEB | grep stable | head -1 | cut -d v -f2 | cut -d " " -f2 `
DOWNLOAD=https://updates.tdesktop.com/tlinux32/$SRCNAM.$VERSION.tar.xz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $SRCNAM.$VERSION.tar.xz ]; 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 $SRCDIR
tar xvf $SRCNAM.$VERSION.tar.xz
cd $SRCDIR
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 {} \;

mkdir -p $PKG/opt/$PRGNAM
cp -a * $PKG/opt/$PRGNAM

mkdir -p $PKG/usr/bin
ln -sf /opt/$PRGNAM/Telegram $PKG/usr/bin

mkdir -p $PKG/usr/share/applications
echo "[Desktop Entry]
Name=Telegram Desktop Chat Client
Name[es]=Telegram Cliente de Escritorio
Icon=telegram
Exec=Telegram
Terminal=false
Type=Application
Categories=Network;" > $PKG/usr/share/applications/$PRGNAM.desktop

mkdir -p $PKG/usr/share/pixmaps
echo "
iVBORw0KGgoAAAANSUhEUgAAAOwAAADsCAYAAAB300oUAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdp
bj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6
eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEz
NDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJo
dHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlw
dGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAv
IiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RS
ZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpD
cmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNl
SUQ9InhtcC5paWQ6OTM5RjI4NjQyOEU3MTFFM0JGMjNBQTREQzEzMThENkQiIHhtcE1NOkRvY3Vt
ZW50SUQ9InhtcC5kaWQ6OTM5RjI4NjUyOEU3MTFFM0JGMjNBQTREQzEzMThENkQiPiA8eG1wTU06
RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpGNEU3NEU2NzI4RTYxMUUzQkYy
M0FBNERDMTMxOEQ2RCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpGNEU3NEU2ODI4RTYxMUUz
QkYyM0FBNERDMTMxOEQ2RCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1w
bWV0YT4gPD94cGFja2V0IGVuZD0iciI/PpG5UBMAACzjSURBVHja7J0LcBzVmaj/0zOSrIctW7Zs
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
" | base64 -d > $PKG/usr/share/pixmaps/$PRGNAM.png
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 02-07-2015, 23:39 (Jueves)
Paquete con todos los updaters al dia


http://www.mediafire.com/download/o8rohrp5xx4ce8i/wifislax_updaters-4.11-noarch-1sw.xzm
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 06-07-2015, 00:52 (Lunes)
Vale, ya tengo listo el de mfcuk

He probado compilando desde el git y para mi sorpresa.... FUNCIONA.

Todo compilado desde la ultima version disponible (tanto mfcuk como libnfc) Probado con 2 tarjetas Mifare Classic 1k y saca la clave correcta a la primera... Increible.

En su momento, habia que hacer mucho lio para hacerlo andar. Esto facilita mucho la vida.

De todas formas, si se diese el caso de que da problemas, se puede crear uno mas, de version fija. Mientras tanto, dejo el ultimo de la lista:

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150706

############################################################
## 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=mfcuk
WEB="https://raw.githubusercontent.com/nfc-tools/mfcuk/master/configure.ac"
echo -ne "\033]2;${PRGNAM}_updater\007"
DOWNLOAD="https://github.com/nfc-tools/mfcuk.git"
VERSION=$(curl -s "$WEB" | grep AC_INIT | cut -d, -f 2 | cut -d[ -f2 | cut -d] -f1 )

}

# Comprobar dependencias
F_dependencias(){
echo
if ls /usr/lib/libnfc.so* 2>/dev/null >/dev/null; then
  EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
  EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi

echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"libnfc"$CIERRE: $EXIST"


if ! ls /usr/lib/libnfc.so* 2>/dev/null >/dev/null; then
echo ""
echo ""$ROJO"No se cumplen los requisitos"$CIERRE"... "$VERDE"resolviendo"$CIERRE"..."
sleep 3
cd /opt/wifislax-updaters/Librerias && xterm /opt/wifislax-updaters/Librerias/libnfc_updater
fi

echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
}

# Si el paquete no existe se descargara de internet
F_descargaPaquete() {
echo ""
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 3
git clone $DOWNLOAD
}

#Descomprime el fichero descargado
F_descomprime() {
echo ""
cd $PRGNAM
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 {} \;
}

#Configurando
F_compilar() {
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
autoreconf -vis
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

make -j$NUCLEOS
make install DESTDIR=$PKG

}


###################################
## 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
#Comprobar dependencias
F_dependencias
#Asignamos o detectamos arquitectura
f_arquitectura
#Comprobamos version instalada del script
f_versionInstalada
#Descargamos el paquete si no existe
F_descargaPaquete
#Descomprimimos el paquete descargado
F_descomprime
#Compilamos el paquete
F_compilar
#Hacemos strip sobre el paquete
f_strip
#Creamos xzm , instalamos y salimos
f_tareasFinales

(Si lo comparas con mfoc, son 3 letras las que cambian  ;D )

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 06-07-2015, 15:53 (Lunes)
recibido.


en rc2 , he metido los 5 paquetes referentes a auditar tarjetas mifare


libnfc
mfoc
mfcuk
pcsc-lite
acsiid

 ;D
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 08-07-2015, 22:44 (Miércoles)
tcpdump

Presupongo que va en Auditoria...

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150708

############################################################
## 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() {
WEB=http://www.tcpdump.org/release/
VERSION=$(curl -s  "$WEB" | grep -i tcpdump |grep -Po '">\K.*(?=</a>)' | grep -Po 'href="\K.*(?=")' | grep -v "\.sig" | sort -h | tail -1 | rev | cut -d. -f3- | cut -d- -f1 | rev)
PRGNAM=tcpdump
DESCARGA=${WEB}/${PRGNAM}-${VERSION}.tar.gz
echo -ne "\033]2;${PRGNAM}_updater\007"
}

# Creamos directoprios extra
F_extradirs(){
mkdir -p $PKG/usr/share/applications/wifislax/Redes
}

# Comprobar dependencias
#F_dependencias(){

#}

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

# Descomprimimos el fichero descargado y compilamos
F_compilar(){
echo ""
echo "$VERDE"Descomprimiendo ..."$CIERRE"
sleep 3
tar xvf $PRGNAM-$VERSION.tar.gz
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 {} \;
 
# Configuramos paquete
echo ""
echo "$VERDE"Configurando ..."$CIERRE"
sleep 3
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --sysconfdir=/etc \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux
   
  make -j$NUCLEOS || 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
# Creamos directoprios extra
F_extradirs
#Mostramos el mensaje de presentacion
f_presentacion
#Comprobamos conexion a Internet
f_comprobarConexion
#Comprobamos updates del script
f_comprobarUpdates
#Compronar dependencias
#F_dependencias
#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

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 09-07-2015, 23:04 (Jueves)
recogido ese ultimo de tcpdump  ;)
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-07-2015, 22:15 (Sábado)
libreria gsl ,  se necesita si vas a compilar inkscape

poner  gsl_updater  en   /opt/wifislax-updaters/Librerias


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150711

############################################################
## 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=gsl
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=ftp://ftp.gnu.org/gnu/gsl
VERSION=1.16
DOWNLOAD=$WEB/$PRGNAM-$VERSION.tar.gz
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f $PRGNAM-$VERSION.tar.gz ]; 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.gz
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 {} \;

echo
echo "$VERDE"Configurando ..."$CIERRE"
sleep 1
 
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
 
make -j$NUCLEOS
make install DESTDIR=$PKG
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 11-07-2015, 22:16 (Sábado)
y seguido , claro ...el de inkscape  ;D


resuelve las dependencias numpy  y gsl automaticamente si os falta alguna en el sistema  ;D


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150711

############################################################
## 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=inkscape
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=https://inkscape.org/es/
VERSION=`curl -s $WEB | grep estable | cut -d : -f2 | cut -d '<' -f-1 | sed "s/ //g"`
DOWNLOAD=https://inkscape.global.ssl.fastly.net/media/resources/file/$PRGNAM-$VERSION.tar.bz2
}

# Comprobar dependencias
F_dependencias(){
echo
if [ -f /usr/bin/f2py ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"numpy"$CIERRE: $EXIST"
if [ ! -f /usr/bin/f2py ]; then
echo ""
echo ""$ROJO"No se cumplen los requisitos"$CIERRE"... "$VERDE"resolviendo"$CIERRE"..."
sleep 3
cd /opt/wifislax-updaters/Librerias/ && xterm /opt/wifislax-updaters/Librerias/numpy_updater && cd $TMP
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
fi
if [ -f /usr/bin/gsl-config ]; then
EXIST=`echo "$VERDE"Instalada"$CIERRE"`
else
EXIST=`echo "$ROJO"No Instalada"$CIERRE"`
fi
echo "$ROSA"Comprobando dependencias ..."$CIERRE"
echo
sleep 3
echo "$CYAN"Dependencias de este paquete:""
echo ""
echo "$AMARILLO"gsl"$CIERRE: $EXIST"
if [ ! -f /usr/bin/gsl-config ]; then
echo ""
echo ""$ROJO"No se cumplen los requisitos"$CIERRE"... "$VERDE"resolviendo"$CIERRE"..."
sleep 3
cd /opt/wifislax-updaters/Librerias/ && xterm /opt/wifislax-updaters/Librerias/gsl_updater && cd $TMP
else
echo ""
echo "$VERDE"Bien ..podemos continuar"$CIERRE"
echo ""
sleep 3
fi
}

# 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 {} \;

echo
echo "$VERDE"Configurando ..."$CIERRE"
sleep 1
 
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --libdir=/usr/lib${LIBDIRSUFFIX} \
  --sysconfdir=/etc \
  --localstatedir=/var \
  --mandir=/usr/man \
  --docdir=/usr/doc/$PRGNAM-$VERSION \
  --build=$ARCH-slackware-linux

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1 
 
make -j$NUCLEOS
make install DESTDIR=$PKG
}

###################################
## 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
#Compronar dependencias
F_dependencias
#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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 12-07-2015, 00:01 (Domingo)
devede_updater

crea  DVD/CD  VIDEO , estandard reproducible en reporductores de salon.

la version esta fijada a la 3.23.0 , por que ahora se llama devedeNG version 4.0 ,pro requiere python3 y por no liarme mucho de momento dejo este.


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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150711

############################################################
## 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=devede
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=http://www.rastersoft.com/programas/devede.html
VERSION=3.23.0
#VERSION=`curl -s $WEB | grep -m3 version |tail -1| cut -d ' ' -f2 | cut -d '<' -f-1 `
DOWNLOAD=http://www.rastersoft.com/descargas/$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 {} \;

# Si es version 3.23 necesita patch
if [ $VERSION = 3.23.0 ]; then
echo
echo "$VERDE"Aplicando parche ..."$CIERRE"
sleep 1
echo "LS0tIGRldmVkZS9pbnN0YWxsLnNoCTIwMTEtMDUtMDUgMTk6Mzg6MDEuMDAwMDAwMDAwIC0wMzAw
CisrKyBkZXZlZGVfcGF0Y2hlZC9pbnN0YWxsLnNoCTIwMTEtMDctMTEgMjA6MjM6MDkuMDAwMDAw
MDAwIC0wMzAwCkBAIC02NCw5ICs2NCw2IEBACiAJaW5zdGFsbCAtbSA3NTUgLWQgIiR7REVTVERJ
Un0kezJ9L3BpeG1hcHMiCiAJaW5zdGFsbCAtbSA2NDQgIiR7c2NyaXB0ZGlyfS9kZXZlZGUuc3Zn
IiAiJHtERVNURElSfSR7Mn0vcGl4bWFwcy8iCiAKLQlpbnN0YWxsIC1tIDc1NSAtZCAiJHtERVNU
RElSfSR7Mn0vcGl4bWFwcy9iYWNrZ3JvdW5kcyIKLQlpbnN0YWxsIC1tIDY0NCAiJHtzY3JpcHRk
aXJ9L2RldmVkZS5zdmciICIke0RFU1RESVJ9JHsyfS9waXhtYXBzLyIKLQogCWluc3RhbGwgLW0g
NzU1IC1kICIke0RFU1RESVJ9JHsyfS9hcHBsaWNhdGlvbnMiCiAJaW5zdGFsbCAtbSA2NDQgIiR7
c2NyaXB0ZGlyfS9kZXZlZGUuZGVza3RvcCIJCQlcCiAJCQkJCQkiJHtERVNURElSfSR7Mn0vYXBw
bGljYXRpb25zLyIK" | base64 -d > $TMP/devede.patch

patch -p1 < $TMP/devede.patch
fi


echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
# Patch program to find the help file in our docdir
sed -i "s|usr/share/doc/$PRGNAM|usr/doc/$PRGNAM-$VERSION|" devede.py

./install.sh \
  --prefix=/usr \
  --pkgdocdir=/usr/doc/$PRGNAM-$VERSION \
  --uninstall=no \
  DESTDIR=$PKG
}

###################################
## 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
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 14-07-2015, 23:30 (Martes)
Me ha llamado la atención esta herramienta:

http://www.redinsegura.com/2015/07/nova-network-obfuscation-and.html

Intentaré hacer updater para mañana

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Winxdunero94 en 14-07-2015, 23:49 (Martes)
Me ha llamado la atención esta herramienta:

http://www.redinsegura.com/2015/07/nova-network-obfuscation-and.html

Intentaré hacer updater para mañana

Salu2


Se ve bueno. Incluyélo
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 15-07-2015, 12:52 (Miércoles)
Acabo de intentarlo. Honeyd sin problemas.

Nova imposible compilarlo. Me pide la librería "ann". La compilo, la intento instalar... Y nada. Nova sigue pidiéndome "ann"

Lo que dejaré será updaters de todas las librerías que pide honeyd + el propio honeyd

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: Winxdunero94 en 15-07-2015, 14:43 (Miércoles)
Acabo de intentarlo. Honeyd sin problemas.

Nova imposible compilarlo. Me pide la librería "ann". La compilo, la intento instalar... Y nada. Nova sigue pidiéndome "ann"

Lo que dejaré será updaters de todas las librerías que pide honeyd + el propio honeyd

Salu2


Podrías poner SPARTA, a lo mejor sería útil. 

https://underc0de.org/foro/pentest/sparta-herramienta-de-pentesting/

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 25-07-2015, 04:27 (Sábado)
funciones


ahora suma , uno al BUILD=1

si el paquete esta en sistema y es igual al de internet pero aun asi compilamos

BUILD , pasa a sumarse una a si mismo...por ser el mismo paquete, hay que subir la version del build , para saber que se ha recompilado , y cuantas veces.



Código: [Seleccionar]
# Detecta la version instalada en el sistema
f_versionInstalada() {
   if [ -f /var/log/packages/$PRGNAM-[0-9]* ]; then
      INSTALADA="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//"|rev|cut -d'-' -f3-|rev|tail -1)"
      echo ""
      echo ""$AMARILLO"La version del sistema es..."$CYAN"$PRGNAM-$INSTALADA"$CIERRE""
      sleep 1
      echo ""
      echo "__________________________________________"
      echo ""
      echo ""$AMARILLO"La version mas nueva en su pagina web es..."$CYAN"$PRGNAM-$VERSION"$CIERRE""
      echo ""
      echo ""$BLANCO"Pulsa $ROJO"ENTER" $BLANCO"si deseas actualizarla""
      read junk
      echo ""
   fi
   
# Si el paquete esta instalado y es el mismo se sube el numero de build
if [ $INSTALADA = $VERSION ]; then
BUILDLOCAL="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//" | rev | cut -d- -f1 | grep -o [0-9])"
BUILD=`expr $BUILDLOCAL + 1`
fi

}
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-07-2015, 21:12 (Domingo)
mm , aparece un mensaje molesto cuando no se puede comparar INSTALADA = VERSION

por que si no esta instalada una version previa, entonces INSTALADA = " " , osea, un campo vacio.


entonces pondre un blucle doble..

Código: [Seleccionar]
if [ ! -z $INSTALADA ]; then
if [ $INSTALADA = $VERSION ]; then
BUILDLOCAL="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//" | rev | cut -d- -f1 | grep -o [0-9])"
BUILD=`expr $BUILDLOCAL + 1`
fi
fi

if  [ ! -z $INSTALADA ]; then  -->> SI EL CAMPO INSTALADA NO ESTA VACIO , ENTONCES

solo se compara si ya hay una version previa instalada


como ya he dicho muchas veces mi bash no es precisamente bueno ...seguramente se puede hacer lo mismo en una sola linea.


no se si seria correcto

if [ ! -z $INSTALADA -a $INSTALADA = $VERSION ]; then
BUILDLOCAL="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//" | rev | cut -d- -f1 | grep -o [0-9])"
BUILD=`expr $BUILDLOCAL + 1`
fi
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-07-2015, 21:26 (Domingo)
esta es la que ha valido al final ...


# Si el paquete esta instalado y es el mismo se sube el numero de build
if [ ! -z $INSTALADA ] && [ $INSTALADA = $VERSION ]; then
BUILDLOCAL="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//" | rev | cut -d- -f1 | grep -o [0-9])"
BUILD=`expr $BUILDLOCAL + 1`
fi


en una linea dos comprobaciones y evitamos un doble if
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 26-07-2015, 23:14 (Domingo)


esta es la que ha valido al final ...


# Si el paquete esta instalado y es el mismo se sube el numero de build
if [ ! -z $INSTALADA ] && [ $INSTALADA = $VERSION ]; then
BUILDLOCAL="$(ls /var/log/packages/$PRGNAM-[0-9]*-* 2>/dev/null|cut -d '/' -f5-|sed "s/^${PRGNAM}-//" | rev | cut -d- -f1 | grep -o [0-9])"
BUILD=`expr $BUILDLOCAL + 1`
fi


en una linea dos comprobaciones y evitamos un doble if

Yo a veces me lío con bash y sh, pero dejo dos apuntes por si en el futuro te sirven.

Hacer [ ! -z $INSTALADA ] es lo mismo que hacer [ $INSTALADA ]. Una tontería. Pero viene bien cuando tienes que hacer muchas de estas.

Y la otra.

[ $INSTALADA = $VERSION ]

Es preferible hacer esto:

[[ "$INSTALADA" == "$VERSION" ]]

Si la primera te funciona, no problem. Pero si llega a fallar... Te tiras bastabte tiempo rompiendote la cabeza hasta dar con el motivo del fallo.

No es por decir que lo tuyo esté mal, ni mucho menos. Pero lo dejo aquí por si en un futuro te sirve a ti o a cualquier otro.

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 26-07-2015, 23:35 (Domingo)
la -z se usa para saber si un valor $ o campo o llamalo como quieras, esta vacio

tu despues necesitas encerrar dos veces la confrontacion de versiones por si una esta vacia no aparezca

se esperaba un valor unario ...   ;D

que es lo que me pasaba ami. , me aclaro mas usando argumentos especificos , me lio muchisimo cuando veo cosas del tipo

^#//     //.    y cosas asi ...que aun no manejo.  ;D


os envidio a todos ,los que controlais bash ,   8)

_______________________________________________________

dejo un xzm , con todos los updaters que manejo ahora mismo , hay unos 6 o 7 nuevos y mejoras en otros.

no tardare mucho en sacar wifislax-4.11.1 , por que la 4.11 instalada en maquina virtual NO ARRANCA DESPUES , y creo eso hay que arreglarlo con una version mantenimiento.

updaters
http://www.mediafire.com/download/yc0j90k3k1dbqbh/wifislax_updaters-4.14-noarch-1sw.xzm
Título: Re: Re: Mejorando los scripts wifislax-updaters
Publicado por: vk496 en 27-07-2015, 10:19 (Lunes)


la -z se usa para saber si un valor $ o campo o llamalo como quieras, esta vacio

Claro. Y el ! Indica NOT (negación).

Campo NOT vacío = Campo NOT NOT lleno = Campo lleno :D

Salu2
Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 28-07-2015, 02:19 (Martes)
@vk496

¿puedes mirar el updater de avidemux ? , que vuelve a las andadas con FOSSHUB



bueno , pues ya esta ... simplemente en el grep de tar.gz  he quitado el parametro  -m1 y ya esta , ya descarga otra vez bien.



avidemux_updater

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

# Script by www.seguridadwireless.net

SCRIPT_VERSION=20150728

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

############################################################
## Funciones propias del script. Su nombre empieza por F_ ##
############################################################

F_variables() {
PRGNAM=avidemux
echo -ne "\033]2;${PRGNAM}_updater\007"
WEB=http://fixounet.free.fr/avidemux/download.html
VERSION=`curl -s $WEB | grep .tar.gz | head -1 | cut -d _ -f2 | cut -d t -f1 | sed "s/.$//g"`
}

# Si el paquete no existe se descargara de internet
F_download(){
if [ ! -f ${PRGNAM}_${VERSION}.tar.gz ]; then
echo
echo "$CYAN"Descargando sources de $PRGNAM-$VERSION"$CIERRE"
sleep 1
aria2c -x3 `curl -s http://www.fosshub.com/Avidemux.html/${PRGNAM}_${VERSION}.tar.gz | grep tar\.gz | grep -Po 'src="\K.*(?=">)'`
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.gz
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 {} \;

echo
echo "$VERDE"Compilando ..."$CIERRE"
sleep 1
 
WITH_CLI=${WITH_CLI:-YES}
WITH_QT4=${WITH_QT4:-YES}
WITH_GTK=${WITH_GTK:-NO}

mkdir -p build_core
cd build_core
cmake \
  -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
  -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
  -DCMAKE_INSTALL_PREFIX=/usr \
  -DFAKEROOT="$PKG" \
  ../avidemux_core
make -j 1 || exit 1
make -j 1 install DESTDIR=$PKG
cd ..

if [ "x$WITH_QT4" = "xYES" ]; then
  mkdir -p build_qt4
  cd build_qt4
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DFAKEROOT="$PKG" \
    ../avidemux/qt4
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
  cd ..
fi

if [ "x$WITH_GTK" = "xYES" ]; then
  mkdir -p build_gtk
  cd build_gtk
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DFAKEROOT="$PKG" \
    ../avidemux/gtk
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
  cd ..
fi

if [ "x$WITH_CLI" = "xYES" ]; then
  mkdir -p build_cli
  cd build_cli
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DFAKEROOT="$PKG" \
    ../avidemux/cli
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
  cd ..
fi

mkdir -p build_plugins_common
cd build_plugins_common
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DAVIDEMUX_SOURCE_DIR="$TMP/${PRGNAM}_${VERSION}" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DPLUGIN_UI=COMMON \
    -DFAKEROOT="$PKG" \
    ../avidemux_plugins
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
cd ..

if [ "x$WITH_QT4" = "xYES" ]; then
  mkdir -p build_plugins_qt4
  cd build_plugins_qt4
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DAVIDEMUX_SOURCE_DIR="$TMP/${PRGNAM}_${VERSION}" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DPLUGIN_UI=QT4 \
    -DFAKEROOT="$PKG" \
    ../avidemux_plugins
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
  cd ..
fi

if [ "x$WITH_GTK" = "xYES" ]; then
  mkdir -p build_plugins_gtk
  cd build_plugins_gtk
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DAVIDEMUX_SOURCE_DIR="$TMP/${PRGNAM}_${VERSION}" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DPLUGIN_UI=GTK \
    -DFAKEROOT="$PKG" \
    ../avidemux_plugins
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
  cd ..
fi

if [ "x$WITH_CLI" = "xYES" ]; then
  mkdir -p build_plugins_cli
  cd build_plugins_cli
  cmake \
    -DCMAKE_C_FLAGS:STRING="$SLKCFLAGS" \
    -DCMAKE_CXX_FLAGS:STRING="$SLKCFLAGS" \
    -DAVIDEMUX_SOURCE_DIR="$TMP/${PRGNAM}_${VERSION}" \
    -DCMAKE_INSTALL_PREFIX=/usr \
    -DPLUGIN_UI=CLI \
    -DFAKEROOT="$PKG" \
    ../avidemux_plugins
  make -j 1 || exit 1
  make -j 1 install DESTDIR=$PKG
  cd ..
fi

mkdir -p $PKG/usr/share/applications
mkdir -p $PKG/usr/share/pixmaps
if [ "x$WITH_QT4" = "xYES" ]; then
cat avidemux2.desktop | sed -e 's/avidemux2$/avidemux/' -e 's/2_gtk/3_qt4/' >\
$PKG/usr/share/applications/avidemux_qt.desktop
fi
if [ "x$WITH_GTK" = "xYES" ]; then
cat avidemux2.desktop | sed -e 's/avidemux2$/avidemux/' -e 's/2_gtk/3_gtk/' >\
$PKG/usr/share/applications/avidemux_gtk.desktop
fi
install -m644 avidemux_icon.png $PKG/usr/share/pixmaps/avidemux.png
for sz in 16x16 32x32 48x48 64x64 ; do
  mkdir -p $PKG/usr/share/icons/hicolor/$sz/apps
  convert avidemux_icon.png -resize $sz \
    $PKG/usr/share/icons/hicolor/$sz/apps/avidemux.png
done

}

###################################
## 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

Título: Re: Mejorando los scripts wifislax-updaters
Publicado por: USUARIONUEVO en 29-07-2015, 03:27 (Miércoles)
como este post tiene ya 30 hojas voy a bloquearlo y  abrimos otro donde seguir.