|
1
|
+
|
|
2
|
+Aqui se aprendera crear y hacer un repositorio de `APKBUILD` (recetas)
|
|
3
|
+para hacer paquetes para [Alpine linux](../README.md)
|
|
4
|
+tambien para configurar `abuild` para que puedas crear los paquetes
|
|
5
|
+a partir de los `APKBUILD`
|
|
6
|
+
|
|
7
|
+### Como instalar abuild
|
|
8
|
+
|
|
9
|
+Para hacer los paquetes necesitaremos abuild intalado
|
|
10
|
+abriremos una terminal y ejecutaremos el comando ,`doas apk add abuild`, debe tener configurado `doas`
|
|
11
|
+
|
|
12
|
+```bash
|
|
13
|
+doas apk add abuild
|
|
14
|
+```
|
|
15
|
+
|
|
16
|
+**para hacerle la vida más fácil a la hora de empaquetar, es recomendable crear un nuevo usuario**
|
|
17
|
+
|
|
18
|
+`adduser general`
|
|
19
|
+
|
|
20
|
+luego de haber creado dicho usuario, debe darle permiso en `/etc/sudoers`
|
|
21
|
+añada la línea usando el comando `visudo`:
|
|
22
|
+
|
|
23
|
+`general ALL=(ALL) ALL` una línea por debajo de
|
|
24
|
+
|
|
25
|
+User privilege specification
|
|
26
|
+
|
|
27
|
+``root ALL=(ALL) ALL``
|
|
28
|
+
|
|
29
|
+Ahora cierre la sesión de la cuenta de root, e inicie sesión como `general`. A partir de aquí todo se puede hacer en una cuenta de usuario normal, y las operaciones que requieren privilegios de superusuario se pueden hacer con sudo.
|
|
30
|
+
|
|
31
|
+### Configurando git
|
|
32
|
+
|
|
33
|
+Debe configurar git en su nueva sesion de usuario
|
|
34
|
+
|
|
35
|
+`git config --global user.name "tu nombre como esta en gitlab"`
|
|
36
|
+
|
|
37
|
+`git config --global user.email "tuus...@tucorreoelectronico.com"`
|
|
38
|
+
|
|
39
|
+Antes de empezar a crear o modificar archivos APKBUILD, necesitamos darle permisos de `abuild` al usuario creado.
|
|
40
|
+Edite el archivo abuild.conf según sus necesidades, desde la terminal:
|
|
41
|
+
|
|
42
|
+`sudo addgroup general abuild`
|
|
43
|
+
|
|
44
|
+También necesitamos preparar la ubicación donde el proceso de compilación almacena
|
|
45
|
+en caché los archivos que se descargan, por defecto es `/var/cache/distfiles/`, para crear este directorio y asegurarse de
|
|
46
|
+que tiene permisos de escritura, introduzca los siguientes comandos:
|
|
47
|
+
|
|
48
|
+`sudo mkdir -p /var/cache/distfiles`
|
|
49
|
+
|
|
50
|
+`sudo chmod a+w /var/cache/distfiles`
|
|
51
|
+
|
|
52
|
+`sudo chgrp abuild /var/cache/distfiles`
|
|
53
|
+
|
|
54
|
+`sudo chmod g+w /var/cache/distfiles`
|
|
55
|
+
|
|
56
|
+El último paso es configurar las claves de seguridad con el script `abuild-keygen` para abuild con el comando:
|
|
57
|
+
|
|
58
|
+`abuild-keygen -a -i`
|
|
59
|
+
|
|
60
|
+En versiones anteriores de Alpine, teníamos que crear manualmente claves para firmar paquetes e índices. Esto explica cómo, hoy en día se puede usar `abuild-keygen`.
|
|
61
|
+Dado que la clave pública debe ser única para cada desarrollador, la dirección de correo electrónico debe utilizarse como nombre de la clave pública.
|
|
62
|
+
|
|
63
|
+#### Creando una llave privada
|
|
64
|
+
|
|
65
|
+`openssl genrsa -out tucorreoelectronico.priv 2048`
|
|
66
|
+
|
|
67
|
+#### Creando una llave publica
|
|
68
|
+
|
|
69
|
+`openssl rsa -in tucorreoelectronico.priv -pubout -out /etc/apk/keys/tucorreoelectronico`
|
|
70
|
+
|
|
71
|
+La llave pública debe ser distribuida e instalada en /etc/apk/keys la caja de alpine
|
|
72
|
+que instalará los paquetes, esto significa básicamente que las llaves públicas del desarrollador principal
|
|
73
|
+deberían estar en /etc/apk/keys en todas las cajas Alpine.
|
|
74
|
+
|
|
75
|
+### Para crear los paquetes con abuild
|
|
76
|
+
|
|
77
|
+Entraremos en la carpeta donde estan los paquetes con el comando `cd`,
|
|
78
|
+dentro de la carpeta de los paquetes usaremos.
|
|
79
|
+
|
|
80
|
+`cd nombre del paquete`.
|
|
81
|
+
|
|
82
|
+Ya adentro de la carpeta del nombre del paquete ejecutaremos el comando `abuild`.
|
|
83
|
+
|
|
84
|
+# mas informacion
|
|
85
|
+
|
|
86
|
+- Author
|
|
87
|
+ - Sodomon as https://t.me/alpine_linux_espanol/26413
|
|
88
|
+- 🗯 IRC
|
|
89
|
+ - 💬 `##alpine_telegram_english` (roto)
|
|
90
|
+- 📱 Telegram https://t.me/alpine_linux
|
|
91
|
+ - 🇨🇴 https://t.me/alpine_linux_espanol
|
|
92
|
+ - 📡 https://t.me/latam_programadores
|
|
93
|
+- Matrix
|
|
94
|
+ - 👥 https://matrix.to/#/#alpine-linux-espanol:matrix.org
|
|
95
|
+
|
|
96
|
+# LICENSE
|
|
97
|
+
|
|
98
|
+**CC BY-NC-SA** Sodomon 2020 |