Ir al contenido
feiticeiro

[ArchLinux] Cómo instalar un paquete de AUR de manera manual ( versión más simple )

Recommended Posts

Este post va sobre como instalar un paquete de AUR, lo he hecho haciendo pruebas vamos que seguramente se pueda mejorar, aportar más info y agradezco incluso que lo lleguen a editar.

 

Puede incluso que valga para Parabola linux, mas como no lo he probado en parabola, no lo puedo asegurar.

 

Aquí os dejo el post:

 

INSTALAR PAQUETES AUR EN ARCHLINUX

 

En este post explicaré como instalar un paquete de AUR, en este caso necesito instalar el make en su versión 3.81 por temas de compatibilidad para compilar el firefox OS, ya que android usa esa versión de make, y en arch actualmente (noviembre 2015) usan la versión 4.XX .

 

Lo primero es buscar el repo con el paquete que queremos: https://aur.archlinux.org/packages/make-3.81/

 

En la parte derecha veremos el menú:

Package Actions

View PKGBUILD / View Changes
Download snapshot
Search wiki
Flag package out-of-date
Vote for this package
Notify of new comments
File Request

 

 

Copiamos la url de “Download snapshot”: https://aur.archlinux.org/cgit/aur.git/snapshot/make-3.81.tar.gz

 

Creamos un directorio para trabajar con el paquete y lo descargamos con curl


$ mkdir AUR_BUILD
$ cd AUR_BUILD
$ curl -L -O https://aur.archlinux.org/cgit/aur.git/snapshot/make-3.81.tar.gz

 

Una vez descargado lo descomprimimos y accedemos al directorio que nos crea el paquete:


$ tar -xvf make-3.81.tar.gz
$ cd make-3.81

 

Ahora tenemos que ver el código del "PKGBUILD" para evitar que nos "trollen" o que hagan en nuestro sistema cambios que no deseamos...


$ less PKGBUILD

 

Nos debería mostrar algo parecido a esto:

# $Id$
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
 
pkgname=make-3.81
pkgver=3.81
pkgrel=1
pkgdesc="GNU make utility to maintain groups of programs (3.81 version)"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/make"
license=('GPL')
depends=('glibc' 'sh')
install=$pkgname.install
source=(ftp://ftp.gnu.org/gnu/make/${pkgname}.tar.gz)
md5sums=('a4e9494ac6dc3f6b0c5ff75c5d52abba')
 
build() {
cd ${srcdir}/${pkgname}
./configure --prefix=/usr --program-suffix=-$pkgver
make
}
 
package() {
cd ${srcdir}/${pkgname}
make DESTDIR=${pkgdir} install-exec
}
Una vez conformes, revisamos el fichero “<nombre_paquete>.install”$ less make-3.81.install
less nos debería mostrar una salida como esta:infodir=/usr/share/info
filelist=(make.info make.info-1 make.info-2)
 
post_install() {
[ -x usr/bin/install-info ] || return 0
for file in ${filelist[@]}; do
install-info $infodir/$file.gz $infodir/dir 2> /dev/null
done
}
 
post_upgrade() {
post_install $1
}
 
pre_remove() {
[ -x usr/bin/install-info ] || return 0
for file in ${filelist[@]}; do
install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
done
}

Una vez confirmado que esos dos archivos no parecen dañinos, procedemos como usuario normal a ejecutar:


makepkg -sri

 

Donde -sri es:

-s, –syncdeps Instalar as dependencias que faltan con «pacman».

-r, –rmdeps Eliminar as dependencias instaladas tras construír o paquete correctamente.

-i, –install Instalar o paquete despois de construílo correctamente.

 

Comenzará a compilar el paquete y descargar las dependencias necesarias de la red, luego nos pedirá el password para el sudo, para poder instalar el paquete en el sistema.

 

Una vez concluya si todo va bien ( suele ser muy estable el proceso, a mí nunca me ha roto nada ), quedará instalado en nuestro sistema, podemos comprobrarlo con:

make --version
GNU Make 4.1
Compilado para x86_64-unknown-linux-gnu
Copyright (C) 1988-2014 Free Software Foundation, Inc.
Licenza GPLv3+: GNU GPL versión 3 ou posterior <http://gnu.org/licenses/gpl.html>
Isto é software libre: pode modificalo e redistribuílo.
Non hai NINGUNHA GARANTÍA, ata onde o permita a lei.

En mi caso veremos que sigue con el make más reciente el 4.1 que es el que está en mi sistema, mas ahora nos toca crear un enlace blando a la versión de make antigua, como se tiene que hacer para usar python 2 en lugar del 3.

 

Primero comprobramos si el actual make es un enlace o un binario, en mi caso es un binario:


$ ls -l /usr/bin/make*
-rwxr-xr-x 1 root root 211824 Out 6 2014 /usr/bin/make
-rwxr-xr-x 1 root root 170168 Nov 12 12:21 /usr/bin/make-3.81
-rwxr-xr-x 1 root root 2564 Set 6 19:26 /usr/bin/makealias
-rwxr-xr-x 1 root root 44368 Nov 1 10:07 /usr/bin/makeconv
-rwxr-xr-x 1 root root 18992 Set 1 19:09 /usr/bin/makedb
-rwxr-xr-x 1 root root 43432 Ago 20 2014 /usr/bin/makehrtf
lrwxrwxrwx 1 root root 8 Out 21 23:45 /usr/bin/makeinfo -> texi2any
-rwxr-xr-x 1 root root 35480 Nov 6 11:21 /usr/bin/makekdewidgets
-rwxr-xr-x 1 root root 96813 Out 2 13:41 /usr/bin/makepkg
-rwxr-xr-x 1 root root 6352 Out 2 13:41 /usr/bin/makepkg-template

Pues nada, lo que tenemos que hacer ahora es mover el make nuevo, para darle otro nombre

# mv -v /usr/bin/make /usr/bin/make_4.1_original

Creamos el enlace blando para que cada vez que se use make en el sistema se use la vieja versión de make


# ln -sv /usr/bin/make-3.81 /usr/bin/make

comprobramos la versión de make que se nos ejecuta al ejecutar make


# make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
 
This program built for x86_64-unknown-linux-gnu

Y LISTO! :D , con esto ya tenemos nuestro viejo make y podremos continuar con la compilación de firefox OS o Android o Cyanogenmod ;D


---

 

Y ese ha sido mi post, al final tengo el make funcionado y puedo seguir intentado compilar firefox OS en mi arch, mas el proceso de instalación de un paquete AUR en principio sería el mismo para el resto de paquetes.

 

Espero que os funcione y si veis algo que se pueda corregir o mejorar, editar este post o ponerlo en los comentarios para que álguien lo edite.

 

saludos! :reves:

 

Fuente: El post original lo publiqué en http://tuxland.herobo.com/blog/doku.php/blog/2015-11-13/instalar_paquetes_aur_en_arch_linux

 

EDITO:

Como nos sugiere @@megadeth92 , hay una forma de instalarlos automáticamente no la he probado ni la conocía, pero sería esta:

yaourt -S <nombre-del-paquete>
Editado por feiticeiro

Compartir este post


Enlace al post
Compartir en otros sitios

¿Instalar un paquete AUR?

De hecho al principio creí que tratabas de crear un paquete AUR desde un archivo empaquetado.
 
En mi opinión, sería bueno aclarar que el post es para instalar un paquete de manera manual, en el caso de que no quiera usarse algun programa como yaourt.

Yo simplemente me preocupo por escribir:

yaourt -S <nombre-del-paquete>

Compartir este post


Enlace al post
Compartir en otros sitios

 

¿Instalar un paquete AUR?

 

De hecho al principio creí que tratabas de crear un paquete AUR desde un archivo empaquetado.

 

En mi opinión, sería bueno aclarar que el post es para instalar un paquete de manera manual, en el caso de que no quiera usarse algun programa como yaourt.

 

Yo simplemente me preocupo por escribir:

yaourt -S <nombre-del-paquete>

Bueno, ya aclaro que soy novato en arch y tal, vamos que no voy de sobrado... ni soy gurú ni nada por el estilo, lo de yaourt tengo que probarlo en principio me leí la wiki y ponía que no había métodos automáticos para instalar paquetes de AUR que se supone que uno debe saber lo que está haciendo.

 

Lo de crear un paquete AUR, lamento que te haya generado confusión el título del post:

"[HOW-TO][ArchLinux]Cómo instalar un paquete de AUR ( versión más simple )"

 

Si el yaourt te lo instala debería quitar el "más simple" xD mas de la página de la wiki por donde lo vi, me pareció el más simple :/

 

Editaré el título y agregaré lo de manual, gracias por el apunte! :D

 

saludos :reves:

Compartir este post


Enlace al post
Compartir en otros sitios

Muy buen post, no conocía la opción "i" de makepkg, cuando lo he hecho manualmente, siempre he hecho un simple "makepkg -s" y luego "pacman -U paquete", aunque la verdad la tuya es una forma más limpia.

 

En cuanto a Parabola, yo he llegado a usar parabola un tiempo, y el proceso de AUR es exactamente el mismo, es más, creo que ni tienen un repositorio de aur propio, sino que usan el mismo de Archlinux, la única diferencia que había cuando lo usé, es que por defecto se usa packer en vez de yaourt.

 

Saludos.

Compartir este post


Enlace al post
Compartir en otros sitios

 

Este post va sobre como instalar un paquete de AUR, lo he hecho haciendo pruebas vamos que seguramente se pueda mejorar, aportar más info y agradezco incluso que lo lleguen a editar.

 

Puede incluso que valga para Parabola linux, mas como no lo he probado en parabola, no lo puedo asegurar.

 

Aquí os dejo el post:

 

INSTALAR PAQUETES AUR EN ARCHLINUX

 

En este post explicaré como instalar un paquete de AUR, en este caso necesito instalar el make en su versión 3.81 por temas de compatibilidad para compilar el firefox OS, ya que android usa esa versión de make, y en arch actualmente (noviembre 2015) usan la versión 4.XX .

 

Lo primero es buscar el repo con el paquete que queremos: https://aur.archlinux.org/packages/make-3.81/

 

En la parte derecha veremos el menú:

Package Actions

View PKGBUILD / View Changes

Download snapshot

Search wiki

Flag package out-of-date

Vote for this package

Notify of new comments

File Request

 

 

Copiamos la url de “Download snapshot”: https://aur.archlinux.org/cgit/aur.git/snapshot/make-3.81.tar.gz

 

Creamos un directorio para trabajar con el paquete y lo descargamos con curl

$ mkdir AUR_BUILD
$ cd AUR_BUILD
$ curl -L -O https://aur.archlinux.org/cgit/aur.git/snapshot/make-3.81.tar.gz

 

Una vez descargado lo descomprimimos y accedemos al directorio que nos crea el paquete:

$ tar -xvf make-3.81.tar.gz
$ cd make-3.81

 

Ahora tenemos que ver el código del "PKGBUILD" para evitar que nos "trollen" o que hagan en nuestro sistema cambios que no deseamos...

$ less PKGBUILD

 

Nos debería mostrar algo parecido a esto:

# $Id$
# Maintainer: Allan McRae <allan@archlinux.org>
# Contributor: judd <jvinet@zeroflux.org>
 
pkgname=make-3.81
pkgver=3.81
pkgrel=1
pkgdesc="GNU make utility to maintain groups of programs (3.81 version)"
arch=('i686' 'x86_64')
url="http://www.gnu.org/software/make"
license=('GPL')
depends=('glibc' 'sh')
install=$pkgname.install
source=(ftp://ftp.gnu.org/gnu/make/${pkgname}.tar.gz)
md5sums=('a4e9494ac6dc3f6b0c5ff75c5d52abba')
 
build() {
cd ${srcdir}/${pkgname}
./configure --prefix=/usr --program-suffix=-$pkgver
make
}
 
package() {
cd ${srcdir}/${pkgname}
make DESTDIR=${pkgdir} install-exec
}
Una vez conformes, revisamos el fichero “<nombre_paquete>.install”$ less make-3.81.install
less nos debería mostrar una salida como esta:infodir=/usr/share/info
filelist=(make.info make.info-1 make.info-2)
 
post_install() {
[ -x usr/bin/install-info ] || return 0
for file in ${filelist[@]}; do
install-info $infodir/$file.gz $infodir/dir 2> /dev/null
done
}
 
post_upgrade() {
post_install $1
}
 
pre_remove() {
[ -x usr/bin/install-info ] || return 0
for file in ${filelist[@]}; do
install-info --delete $infodir/$file.gz $infodir/dir 2> /dev/null
done
}

Una vez confirmado que esos dos archivos no parecen dañinos, procedemos como usuario normal a ejecutar:

makepkg -sri

 

Donde -sri es:

-s, –syncdeps Instalar as dependencias que faltan con «pacman».

-r, –rmdeps Eliminar as dependencias instaladas tras construír o paquete correctamente.

-i, –install Instalar o paquete despois de construílo correctamente.

 

Comenzará a compilar el paquete y descargar las dependencias necesarias de la red, luego nos pedirá el password para el sudo, para poder instalar el paquete en el sistema.

 

Una vez concluya si todo va bien ( suele ser muy estable el proceso, a mí nunca me ha roto nada ), quedará instalado en nuestro sistema, podemos comprobrarlo con:

make --version
GNU Make 4.1
Compilado para x86_64-unknown-linux-gnu
Copyright (C) 1988-2014 Free Software Foundation, Inc.
Licenza GPLv3+: GNU GPL versión 3 ou posterior <http://gnu.org/licenses/gpl.html>
Isto é software libre: pode modificalo e redistribuílo.
Non hai NINGUNHA GARANTÍA, ata onde o permita a lei.

En mi caso veremos que sigue con el make más reciente el 4.1 que es el que está en mi sistema, mas ahora nos toca crear un enlace blando a la versión de make antigua, como se tiene que hacer para usar python 2 en lugar del 3.

 

Primero comprobramos si el actual make es un enlace o un binario, en mi caso es un binario:

$ ls -l /usr/bin/make*
-rwxr-xr-x 1 root root 211824 Out 6 2014 /usr/bin/make
-rwxr-xr-x 1 root root 170168 Nov 12 12:21 /usr/bin/make-3.81
-rwxr-xr-x 1 root root 2564 Set 6 19:26 /usr/bin/makealias
-rwxr-xr-x 1 root root 44368 Nov 1 10:07 /usr/bin/makeconv
-rwxr-xr-x 1 root root 18992 Set 1 19:09 /usr/bin/makedb
-rwxr-xr-x 1 root root 43432 Ago 20 2014 /usr/bin/makehrtf
lrwxrwxrwx 1 root root 8 Out 21 23:45 /usr/bin/makeinfo -> texi2any
-rwxr-xr-x 1 root root 35480 Nov 6 11:21 /usr/bin/makekdewidgets
-rwxr-xr-x 1 root root 96813 Out 2 13:41 /usr/bin/makepkg
-rwxr-xr-x 1 root root 6352 Out 2 13:41 /usr/bin/makepkg-template

Pues nada, lo que tenemos que hacer ahora es mover el make nuevo, para darle otro nombre

# mv -v /usr/bin/make /usr/bin/make_4.1_original

Creamos el enlace blando para que cada vez que se use make en el sistema se use la vieja versión de make

# ln -sv /usr/bin/make-3.81 /usr/bin/make

comprobramos la versión de make que se nos ejecuta al ejecutar make

# make --version
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
 
This program built for x86_64-unknown-linux-gnu

Y LISTO! :D , con esto ya tenemos nuestro viejo make y podremos continuar con la compilación de firefox OS o Android o Cyanogenmod ;D

---

 

Y ese ha sido mi post, al final tengo el make funcionado y puedo seguir intentado compilar firefox OS en mi arch, mas el proceso de instalación de un paquete AUR en principio sería el mismo para el resto de paquetes.

 

Espero que os funcione y si veis algo que se pueda corregir o mejorar, editar este post o ponerlo en los comentarios para que álguien lo edite.

 

saludos! :reves:

 

Fuente: El post original lo publiqué en http://tuxland.herobo.com/blog/doku.php/blog/2015-11-13/instalar_paquetes_aur_en_arch_linux

 

EDITO:

Como nos sugiere @@megadeth92 , hay una forma de instalarlos automáticamente no la he probado ni la conocía, pero sería esta:

yaourt -S <nombre-del-paquete>

 

El paquete yaourt se instala manualmente, está aprobado como el "administrador de paquetes" oficial de AUR y de hecho, nos descarga primero el PKGBUILD y nos permite leerlo, editarlo y aceptar la instalación del paquete.

Mejor hagamos algo jajaja

Haré un post sobre cómo utilizar yaourt, instalarlo y cómo es el proceso completo :)

Compartir este post


Enlace al post
Compartir en otros sitios

genial aporte, no te voy a engañar, llevo unos años ya en arch, y sabia que esto es una de las "bondades/ventajas" de arch, pero lo desconocia. es muy comodo ejecutar "yaourt" y dejar que compile y haga lo necesario por ti....se nos olvidan todos estos procesos...

Genial el aporte, gracias.

un saludo

Compartir este post


Enlace al post
Compartir en otros sitios

Registra una cuenta o conéctate para comentar

Debes ser un miembro de la comunidad para dejar un comentario

Crear una cuenta

Regístrate en nuestra comunidad. ¡Es fácil!

Registrar una cuenta nueva

Iniciar Sesión

¿Ya tienes cuenta? Conéctate aquí.

Iniciar Sesión

×