[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: [OT] ¿Songr en Debian?



ALTERNATIVA A SONGR - PYMAXE

Bueno, a ver si al fin consigo refundir todo sin necesidad de añadir más
parches. Este mensaje pretende refundir todo lo dicho en el hilo de la
lista de correo. He puesto una pequeña introducción con índice, espero
que os guste y que os sea útil:

Cuando un usuario novato (como en mi caso) pasa de Windows a Linux, una
de las cosas que puede intentar hacer es buscar para Linux los mismos
programas que usaba habitualmente en Windows. En este caso se trata de
buscar Songr, que es un programa que sirve para buscar y bajarse
canciones.

Lamentablemente para Linux Debian no existe Songr, al menos no
directamente, pero también hay otras alternativas que pueden servir.
Para este caso concreto utilizaremos Pymaxe. Otras opciones disponibles
se pueden encontrar mirando por internet, algunos ejemplos serían éstos:

http://alternativeto.net/software/songr/?platform=linux
http://de-todo-un-poco-computacion-e-ideas.blogspot.com.es/2015/08/como-instalar-songr-en-ubuntu-para.html
http://blog.desdelinux.net/aironux-una-nueva-alternativa-para-descargar-musica/
https://www.youtube.com/watch?v=-Qh_S3Ozn4s

El hecho de tener un programa tipo Songr, en el que en principio te
permite buscar canciones con comodidad, puede tener la desventaja de
acabar con los buscadores que tiene integrados obsoletos, haciendo que
la búsqueda ofrezca menos resultados que los que debería dar, por lo que
otra posible vía puede consistir en ponerse a buscar la canción que sea
manualmente vía google.

Como he dicho en este mensaje voy a explicar cómo instalar pymaxe para
Debian, y como creo que el contenido de este mensaje es bastante
extenso, voy a poner aquí un pequeño índice:

Índice:

- Instalación de Pymaxe en Debian 8 estable usando el paquete fuente
- Instalación de Pymaxe en Debian 8 usando el paquete.deb
	- Cómo añadir el repositorio multimedia de Debian
	- Cómo editar un paquete .deb, cambiando su archivo de control
- Instalación de Pymaxe en Debian 7 estable
- Instalación en Debian 7 sid
- Apunte de la instalación de paquetes con Debian testing
- Configuración de pymaxe
- Convertir formato de vídeo a formato de música

Antes de comenzar a explicar cada parte en detalle, decir que sobre todo
he usado como editor de texto "gedit", pero uno puede usar el editor de
texto que quiera (nano, vim, vi...). Una vez explicado esto, paso a
desarrollar el contenido:


---Instalación de Pymaxe en Debian 8 estable usando el paquete fuente---

1) Ir a la web donde está pymaxe:
www.pymaxe.com

2) Darle al botón "Download"
3) Elegir la opción "Sources".
4) Una vez descargado escribe lo siguiente en el terminal:

	$ cd /home/user/Descargas
	~/Descargas$ tar -xvf pymaxe.tar.gz

	~/Descargas$ sudo ln -s /usr/local/bin/pymaxe /usr/bin/pymaxe

- Con este comando (ln) creamos un enlace simbólico, blando (o acceso
directo) en el directorio /usr/bin. ¿Por qué? Para que pymaxe se pueda
abrir al ejecutar alt + f2 y escribir el comando "pymaxe" sin comillas.

5) Sin embargo, al hacerlo no funcionará, porque hay que modificar
también el propio archivo de texto que hay en /usr/local/bin/pymaxe.
Para eso escribimos en el terminal lo siguiente:

	~/Descargas$ sudo gedit /usr/local/bin/pymaxe

Donde el contenido del archivo es tal que así:

-------------------------------------------
#!/bin/sh
if which python2 >/dev/null; then
    cd /usr/share/pymaxe/
    python2 launcher.py
else
    cd /usr/share/pymaxe/
    python launcher.py
fi
-------------------------------------------

Para que pymaxe funcione como es debido, hay que meter los directorios
correctamente, de tal forma que habría que poner /usr/local/share, en
vez de /usr/share. De esta forma, con gedit el archivo debería quedar
así:

-------------------------------------------
#!/bin/sh
if which python2 >/dev/null; then
    cd /usr/local/share/pymaxe/
    python2 launcher.py
else
    cd /usr/local/share/pymaxe/
    python launcher.py
fi
-------------------------------------------

6) Se guarda el archivo de texto con "control + s" y se cierra.

7) A continuación, nos vamos al programa del Menú principal (o alacarte,
usando alt + f2). Buscamos pymaxe (que está en el apartado de sonido y
vídeo), una vez seleccionado le damos al botón de Propiedades y pulsamos
donde debería estar su icono. Lo buscamos (que está
en /usr/local/share/icons/pymaxe.png).

8) Si uno quiere tener la carpeta de Descargas limpia tras instalar el
programa, es aconsejable hacer un "rm -r" en el terminal sobre los
archivos que nos hemos bajado y descomprimido o directamente irse con el
explorador de archivos y hacer eso mismo gráficamente.

Aquí en concreto el comando sería:

	~/Descargas$ sudo rm -r usr pymaxe.tar.gz


----Instalación de Pymaxe en Debian 8 usando el paquete.deb----

1) Ir a la web donde está pymaxe:
www.pymaxe.com

2) Darle al botón "Download"
3) Elegir la opción "Debian / Ubuntu-compatible".

4) Una vez bajado el paquete, antes de instalarlo, hay que instalar una
serie de paquetes (dependencias), de lo contrario nuestro paquete se
romperá. Para la gente novata como yo, es casi más cómodo usar Synaptic,
que va mostrando lo que vas instalando de forma gráfica, aunque me
imagino que también se puede hacer igual desde la consola o terminal.

Las dependencias del paquete pymaxe.deb son:

	- python2.6 o python2.7
	- python-gtk2
	- python-glade2
	- ffmpeg
	- gstreamer0.10-ffmpeg
	- libavcodec52 o libavcodec53
	- gstreamer0.10-plugins-ugly o bien vlc o bien mp

Las únicas dependencias (o paquetes necesarios para que pymaxe funcione)
que no se pueden encontrar en los repositorios de Debian 8 oficiales
son:
	- gstreamer0.10-ffmpeg
	- libavcodec52 o libavcodec53

Para el paquete gstreamer0.10-ffmpeg se puede bajar en el repositorio de
Debian Multimedia. Si no tienes el repositorio instalado, para
instalarlo debes hacer lo siguiente:

	A) Ir a la consola y escribir lo siguiente:

		$ sudo gedit /etc/apt/sources.list

	B) Una vez abierto el archivo sources.list escribir lo 
	siguiente:
		
		deb http://www.deb-multimedia.org jessie main non-free

	   Guardar y cerrar el archivo.

	C) Ir al terminal y escribir esto:

		$ sudo apt-get update
		$ sudo apt-get install deb-multimedia-keyring
		$ sudo apt-get update

El paquete libavcodec52 o libavcodec53 no existe para Debian Jessie, sin
embargo existe el paquete libavcodec56.	

Posiblemente con el paquete libavcodec56, al ser una edición posterior
sea retrocompatible con las versiones 52 y 53 y que los que hicieron
pymaxe en su día no tuvieron en cuenta el paquete en la versión 56
porque aún no existía y no se han molestado en actualizarlo.

Basándonos en esta posibilidad, vamos a modificar el paquete .deb
(pymaxe.deb) para que sea compatible también con el paquete
libavcodec56, para eso, cambiaremos el archivo de control del
paquete .deb siguiendo estos pasos:

	A) Ir al terminal y escribir esto:

		~$ cd /home/usuario/Descargas

	B) Desempaquetar el paquete .deb

		~/Descargas$ mkdir temporal
		~/Descargas$ sudo dpkg-deb --extract pymaxe.deb temporal

	Lo que hace la primera línea es crear una carpeta temporal donde
	se descomprime el archivo, y la segunda línea descomprime el 
	archivo en sí.

	C) Ahora extraer la parte de control del paquete .deb:

	~/Descargas$ sudo dpkg-deb --control paquete.deb temporal/DEBIAN

	D) Editar el archivo de control, para eso hacer lo siguiente en 
	el terminal:

	~/Descargas$ gedit temporal/DEBIAN/control

	El archivo de texto es tal que así:

------------------------------------------------------------------------

Package: pymaxe
Version: 0.60
Architecture: all
Maintainer: Mamut R. Ghiunhan <venerix@blug.ro>
Installed-Size: 82
Depends: python2.6 | python2.7, python-gtk2, python-glade2, ffmpeg,
gstreamer0.10-ffmpeg, libavcodec52 | libavcodec53,
gstreamer0.10-plugins-ugly | vlc | mplayer
Section: x11
Priority: extra
Homepage: http://code.google.com/p/pymaxe/
Description: A music downloader application
 PYMAXE is an application which provides 
 the ability to download music and video.

--------------------------------------------------------------------------

	Hay que modificar la sección "Depends", añadiendo un "| 
	libavcodec56", que dicho en lenguaje coloquial sería "también
	vale el paquete libavcodec56". Para añadir el carácter "|", se 
	hace con Altgr + 1, quedando el archivo de texto de esta forma:

------------------------------------------------------------------------

Package: pymaxe
Version: 0.60
Architecture: all
Maintainer: Mamut R. Ghiunhan <venerix@blug.ro>
Installed-Size: 82
Depends: python2.6 | python2.7, python-gtk2, python-glade2, ffmpeg,
gstreamer0.10-ffmpeg, libavcodec52 | libavcodec53 | libavcodec56,
gstreamer0.10-plugins-ugly | vlc | mplayer
Section: x11
Priority: extra
Homepage: http://code.google.com/p/pymaxe/
Description: A music downloader application
 PYMAXE is an application which provides 
 the ability to download music and video.

--------------------------------------------------------------------------

	E) Ahora sólo hace falta empaquetarlo todo otra vez en 	    
        formato .deb, escribiendo lo siguiente en el terminal:

		~/Descargas$ sudo dpkg --build temporal

	F) Por último, cambiar de nombre el paquete deb por el nombre
	del paquete original, cosa que hará que el paquete nuevo 
	sustituya al viejo automáticamente, cosa que se hace con el 
	siguiente comando:

		~/Descargas$ mv temporal.deb pymaxe.deb

	El enlace que me ha servido de ayuda para editar el paquete .deb
	lo he encontrado en esta web:
      
http://www.taringa.net/post/linux/17294752/Editar-Paquete-deb.html

	Si uno quiere un script para que sirva de ayuda a la hora de 
	editar un paquete .deb de forma más automática, este enlace
	puede os puede valer. Si uno entiende bien shell-script imagino 
	que se podrá personalizar al gusto que uno quiera:

	https://gist.github.com/chetan/1410666

5) Una vez instaladas todas las dependencias, instalar el paquete
pymaxe:
	~/Descargas$ sudo dpkg -i pymaxe.deb

6) Si uno quiere limpiar la carpeta de Descargas, escribir en el
terminal:
	~/Descargas$ sudo rm pymaxe.deb
		

-----------Instalación de Pymaxe en Debian 7 estable-----------

1) Ir a la web donde está pymaxe:
www.pymaxe.com

2) Darle al botón "Download".
3) Elegir la opción "Debian / Ubuntu-compatible".

4) Una vez bajado el paquete, antes de instalarlo, hay que instalar una
serie de paquetes (dependencias), de lo contrario nuestro paquete se
romperá. Puedes usar Synaptic o hacerlo por la consola o terminal.

Dependencias necesarias:

	- python2.6 o python2.7
	- python-gtk2
	- python-glade2
	- ffmpeg
	- gstreamer0.10-ffmpeg
	- libavcodec52 o libavcodec53
	- gstreamer0.10-plugins-ugly o bien vlc o bien mp

Aparte de esos paquetes, saber que buena parte de las dependencias se
resuelven instalando el paquete "libav-tools", aparte de que sería
aconsejable tener también incluido el repositorio multimedia de Debian,
explicado en la sección anterior.

5) Una vez instaladas las dependencias necesarias, instalamos el paquete
pymaxe:
	~/Descargas$ sudo dpkg -i pymaxe.deb

6) Si uno quiere tener la carpeta de Descargas limpia después de la
instalación, se ejecuta el siguiente comando en el terminal:

	~/Descargas$ sudo rm pymaxe.deb


-------------Instalación en Debian 7 sid------------------

NOTA: Este caso no lo he probado, porque no tengo Debian sid instalado.
Sin embargo esto ha sido sugerido por otros usuarios de la lista de
correos como alternativa válida, por eso lo incluyo también.

Pasos:

1) Ir a la web donde está pymaxe:
www.pymaxe.com

2) Darle al botón "Download".
3) Elegir la opción "Debian / Ubuntu-compatible".

4) Ejecutar este comando en el terminal: 

	~/Descargas$ sudo dpkg -i pymaxe.deb 

Sin embargo, el paquete acaba roto al no tener instaladas sus
dependencias.

Para este caso, en sid se modifican las dependencias, para ello se puede
o bien editar el paquete .deb para que las dependencias de su archivo de
control quede así:

Depends: python2.6 | python2.7, python-gtk2, python-glade2, ffmpeg,
gstreamer0.10-ffmpeg|gstreamer1.0-libav, libavcodec52 | libavcodec53 |
libavcodec56, gstreamer0.10-plugins-ugly | gstreamer1.0-plugins-ugly |
vlc | mplayer

Explicado en la sección "Instalación de Pymaxe en Debian 8 usando el
paquete.deb".

O bien, uno puede usar el script videbcontrol:
https://gist.github.com/chetan/1410666

Si uno entiende bien shell-script.

5) Luego, para arreglar el paquete pymaxe.deb, ejecutaríamos este
comando en el terminal:
	
	~/Descargas$ sudo apt-get -f install

Donde se instalarían las dependencias necesarias a posteriori y
pymaxe.deb acabaría bien instalado.

5) Para limpiar la carpeta de Descargas escribir en el terminal:

	~/Descargas$ sudo rm pymaxe.deb


----- Apunte de la instalación de paquetes con Debian testing ------

En experimental ya se puede usar apt-get con un fichero local, algo
deseado desde 1999 y realizado el año pasado, enlace que lo explica:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=47379

Es decir, que uno podría hacer en Debian testing así por las buenas:

	# apt-get install file:/home/user/Descargas/pymaxe.deb

Y pymaxe quedaría instalado, aunque imagino que previamente habría que
instalar las dependencias necesarias para que el paquete no acabara roto
o ejecutar después el comando "apt-get -f install" para arreglar el
paquete roto. 

No he probado esta opción al no tener instalado Debian testing, sin
embargo, si las dependencias traen problemas por el paquete
libavcodec53, uno puede editar el paquete .deb y modificar su archivo de
control para que admita el libavcodec que uno tiene instalado
(especialmente si es una versión posterior a libavcodec53). 

El cómo editar un paquete .deb se explica en la sección "Instalación de
Pymaxe en Debian 8 usando el paquete.deb"


--------------------Configuración de pymaxe----------------------

Es muy sencilla, con irse al menú Pymaxe/Preferencias, ahí podemos
decidir cómo lo queremos todo. Eso a gusto del usuario.

Si no sabéis qué carpeta elegir para meter los plugins que puedan 
surgir en un futuro con pymaxe, podéis crearos una carpeta
en /home/user/.pymaxe, para tenerlos ahí guardados.

Para eso o bien lo hacemos en nuestro explorador de archivos de forma
gráfica:

- Dentro de nuestra carpeta personal, botón derecho en la ventana,
elegimos la opción de "Nueva Carpeta" y por último renombramos esa 
nueva carpeta como ".pymaxe" (sin las comillas).

O bien podemos escribir en nuestra consola o terminal (sabiendo que
estamos en nuestra carpeta personal):

	~$ mkdir .pymaxe

Después nos vamos a la aplicación pymaxe, le damos al menú
Pymaxe/Preferencias, en la pestaña de "Advanced settings", elegimos en
el campo "Custom Pymaxe plugin folder (restart required):"
/home/user/.pymaxe


-----------Convertir formato de vídeo a formato de música-----------

Con Songr había una opción en el menú contextual (botón derecho sobre el
archivo seleccionado) para extraer el mp3 de los vídeos de youtube que
encontraba.

Con pymaxe, encuentra vídeo y audio igualmente en la lista de búsqueda.
No he encontrado dentro de pymaxe una opción para convertir el vídeo en
audio. La forma que he encontrado para convertir el vídeo en audio es
bajándome el vídeo de pymaxe y después usar el comando ffmpeg en la
consola o terminal para terminar de conseguir el archivo de audio.

A través de esta web nos dice un resumen muy acertado para convertir el
vídeo en audio:
http://www.taringa.net/posts/linux/1341389/Convertir-videos-FLV-a-Avi-o-MP3-Ubuntu-64-Bits.html

En esencia para convertir el vídeo en audio hay que escribir lo
siguiente en el terminal:

	$ ffmpeg -i videofile.flv -f mp3 audiofile.mp3

Concretamente con esto a partir de videofile.flv (que no modificamos)
nos genera un archivo de audio en formato mp3 (audiofile.mp3).

Igualmente esto mismo se puede hacer con archivos .avi:

	$ ffmpeg -i videofile.avi -f mp3 audiofile.mp3

Hay que decir que debemos estar siempre en la carpeta donde se encuentra
el archivo de vídeo para realizar esta operación.

Para más detalles sobre cómo funciona el comando ffmpeg, hacer esto
mismo en el terminal:

	$ man ffmpeg

Aprovecho este último correo para dar las gracias a todos los que me han
ayudado a instalar este programa con éxito, así como aquéllos que me han
dado la información necesaria sobre los casos de Debian sid y testing y
sobre los puntos fuertes y débiles de aplicaciones como pymaxe:

- alparkom
- Javier Barroso
- José Maldonado
- Camaleón

Gracias por toda vuestra ayuda.


Reply to: