Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #----------#
- # Creación #
- #----------#
- # 23 enero del 2022 # NOTA: Última edición 12 marzo 2022
- # ADMIN juanpedro contacto: [email protected]
- #-------------------------#
- # Opciones de compilación #
- # ------------------------#
- # Compilador GCC
- # NOTA: Soporte código C y C ++, para un RYZEN serie ZEN+
- COMMON_FLAGS="-mtune=znver1 -O2 -pipe"
- CFLAGS="${COMMON_FLAGS}"
- CXXFLAGS="${COMMON_FLAGS}"
- FCFLAGS="${COMMON_FLAGS}"
- FFLAGS="${COMMON_FLAGS}"
- #------------------------#
- # Núcleos de compilación #
- #------------------------#
- # 8 núcleos máximo de compilación. NOTA: 2G de RAM por núcleo es necesarias
- # -l16 maximo 16 núcleos + hilos
- MAKEOPTS="-j8 -l16"
- #-------------#
- # Directorios #
- #-------------#
- # NOTA: Ubicaciones
- # Repositorio de Gentoo
- PORTDIR="/var/db/repos/gentoo"
- # Ubicación de descarga de Portage. NOTA: Se puede borrar el contenido del directorio
- DISTDIR="/var/cache/distfiles"
- # Ubicación de binarios comprimidos. NOTA: Es un copia de seguridad de cada versión compilada, para restaurar o creación de un BINHOST
- PKGDIR="/var/cache/binpkgs"
- # Ubicación de guardado de los logs
- PORT_LOGDIR="/var/log/portage"
- #--------#
- # Idioma #
- #--------#
- # Reporte de logs en inglés. NOTA: Siempre han de reportarse en inglés
- LC_MESSAGES=C
- # Idioma de las aplicaciones. NOTA: Siempre en castellano y catalán si lo soporta, si estos idiomas no están soportados usara el idioma predeterminado de la aplicación
- L10N="es es-ES ca ca-ES"
- #-----------------------#
- # Versión de paquetería #
- #-----------------------#
- # Gentoo rama estable
- ACCEPT_KEYWORDS="amd64"
- #-----------#
- # Licencias #
- #-----------#
- # Soporte de las licencias de programas instalados en el sistema. NOTA: Principalmente libre, luego si quieres algo privativo, añádelo en el package.license en la ruta, /etc/portage/package.license
- ACCEPT_LICENSE="-* @FREE-SOFTWARE @FSF-APPROVED-OTHER"
- #---------------------------#
- # Algoritmos de Compressión #
- #---------------------------#
- # Compresión de binarios
- BINPKG_COMPRESS="zstd"
- BINPKG_COMPRESS_FLAGS="-9"
- # -------------#
- # Cuenta atrás #
- # -------------#
- # Una cuenta atrás cuando utilizamos --depclean o --unmerge
- CLEAN_DELAY="-8"
- #------------#
- # Colisiones #
- #------------#
- # Ignorar una colisión. NOTA: Se pude poner una colisión para que la ignore, pero ha de reportarse a Gentoo BUG cada colisión
- COLLISION_IGNORE=""
- #-----------------#
- # Configuraciones #
- #-----------------#
- # Proteger configuraciones. NOTA: Se protege archivos o directorios para que Portage no los sobre-escriba
- CONFIG_PROTECT="/etc/locale.gen /etc/conf.d/keymaps"
- CONFIG_PROTECT_MASK=""
- #---------------------#
- # Opciones de Portage #
- #---------------------#
- # Cuando ejecutamos emerge siempre ejecutamos estas variables
- # --alert NOTA: Avisos interactivos en la terminal, Suceden cuando la resolución de dependencias tarda mucho, y quiere que emerge le avise cuando haya terminado
- ALERTA="${EMERGE_DEFAULT_OPTS} --alert"
- # --alphabetical NOTA: Al mostrar la salida de USE y otras banderas, combina las listas de activados y desactivados en una sola lista y ordena toda la lista por orden alfabético.
- ALFABETICO="${EMERGE_DEFAULT_OPTS} --alphabetical"
- # --ask-enter-invalid NOTA: Cuando se utiliza junto con la opción --ask, interpreta una sola pulsación de la tecla "Enter" como una entrada no válida. Esto ayuda a evitar la aceptación accidental de la primera opción.
- ENTER="${EMERGE_DEFAULT_OPTS} --ask-enter-invalid"
- # --autounmask NOTA: Desenmascarar automáticamente los paquetes y generar configuraciones package.use según sea necesario para satisfacer las dependencias.
- DESESMASCARADO="${EMERGE_DEFAULT_OPTS} --autounmask=n"
- # --autounmask-keep-keywords NOTA: Deja de funcionar --autounmask se esta utilizando, pero con --autounmask-keep-masks puede crear cambios en package.unmask
- KEYWORDS="${EMERGE_DEFAULT_OPTS} --autounmask-keep-keywords=y"
- # --autounmask-keep-masks NOTA: Si se activa --autounmask, no se creará ningún cambio en package.unmask o en la palabra clave **. Esto conduce a dependencias insatisfechas dependencias insatisfechas si no existe otra solución.
- KEEPMASK="${EMERGE_DEFAULT_OPTS} --autounmask-keep-masks=y"
- # --autounmask-license NOTA: Permitir los cambios de autoenmascaramiento del paquete.license
- LICENCIAS="${EMERGE_DEFAULT_OPTS} --autounmask-license=y"
- # -autounmask-write NOTA: Si --autounmask está activado, los cambios se escriben en los archivos de configuración, respetando CONFIG_PROTECT y --ask. Si el paquete correspondiente es un fichero, los cambios se añaden a él, si es un directorio, los cambios escritos en el último archivo lexicográficamente. De esta manera se asegura siempre que los nuevos cambios tienen precedencia sobre los cambios existentes.
- CONFIGURA="${EMERGE_DEFAULT_OPTS} --autounmask-write=y"
- # --buildpkg NOTA: Indica a emerge que construya paquetes binarios para todos los ebuilds procesados además de fusionar los paquetes paquetes.
- BINARIOS="${EMERGE_DEFAULT_OPTS} --buildpkg"
- # --changed-deps NOTA: Indica a emerge que reemplace los paquetes instalados para los que las dependencias correspondientes de ebuild han cambiado desde que se construyeron los paquetes. Esta opción también implica la opción --selective. El comportamiento con respecto a dependencias cambiadas en tiempo de compilación se controla con la opción --with-bdeps.
- CAMBIOS="${EMERGE_DEFAULT_OPTS} --changed-deps=y"
- # --changed-use NOTA: Indica a emerge que incluya los paquetes instalados en los que las banderas USE han cambiado desde la instalación. Esta opción también implica la opción --selective. A diferencia de --newuse, la opción --changed-use no activa la re-instalación cuando se añaden o eliminan banderas que el usuario no ha habilitado.
- CAMBIOSUSE="${EMERGE_DEFAULT_OPTS} --changed-use"
- # --complete-graph NOTA: Esto hace que emerge considere las dependencias profundas de todos los paquetes del conjunto mundial. Con esta opción activada, emerge se retirará si determina que la operación dada romperá cualquier dependencia de los paquetes que se han añadido al gráfico. Al igual que la opción --deep, la opción --complete-graph aumentará significativamente el tiempo de cálculo de las dependencias. Tenga en cuenta que, a diferencia de la opción --deep, la opción con la opción desactivada. El uso de --with-bdeps=y junto con --complete-graph hace que el gráfico sea lo más completo posible.
- GRAFICO="${EMERGE_DEFAULT_OPTS} --complete-graph=y"
- # --fail-clean Limpia los archivos temporales después de un fallo de compilación
- LIMPIEZA="${EMERGE_DEFAULT_OPTS} --fail-clean=y"
- # --jobs NOTA: Especifica el número de paquetes a construir simultáneamente.
- TRABAJOS="${EMERGE_DEFAULT_OPTS} --jobs=4"
- # --keep-going NOTA: Continuar en la medida de lo posible después de un error. Cuando se produce un error, las dependencias se re-calculan para los paquetes y los que tienen dependencias insatisfechas se eliminan automáticamente. Véase también la opción --skipfirst.
- CONTINUA="${EMERGE_DEFAULT_OPTS} --keep-going=y"
- # --load-average[=LOAD] NOTA: Especifica que no deben iniciarse nuevas construcciones si hay otras en ejecución y el promedio de carga es al menos LOAD (un número de punto flotante).menos LOAD (un número de punto flotante). Sin argumento, elimina un límite de carga anterior. Esta opción es recomienda su uso en combinación con --jobs para evitar el exceso de carga
- LEER="${EMERGE_DEFAULT_OPTS} --load-average=16"
- # -with-bdeps NOTA: En los cálculos de las dependencias, se introducen las dependencias del tiempo de compilación que no son estrictamente necesarias.
- DEPENDE="${EMERGE_DEFAULT_OPTS} --with-bdeps=y"
- # Siempre están activas NOTA: Siempre están activas por defecto
- ACTIVAS="${EMERGE_DEFAULT_OPTS} --autounmask-use=y --autounmask-use=y --binpkg-respect-use=y --color=y --complete-graph-if-new-use=y --complete-graph"
- # --autounmask-use < y | n > NOTA: Permitir los cambios de autounmask package.use. Esta opción está activada por defecto (cualquiera de las opciones --autounmask=n, --autoun-mask-use=n, o --binpkg-respect-use=y la desactiva).
- # --binpkg-changed-deps [ y | n ] NOTA: Indica a emerge que ignore los paquetes binarios para los que las dependencias correspondientes de ebuild han cambiado desde que se construyeron los paquetes. Para ayudar a evitar problemas con la resolución de dependencias inconsistentes, esta opción se habilita automáticamente a menos que esta opción se activa automáticamente a menos que la opción --usepkgonly esté activada. El comportamiento con respecto a las dependencias cambiadas en el tiempo de compilación se controla con la opción --with-bdeps.
- # --binpkg-respect-use [ y | n ] NOTA: Indica a emerge que ignore los paquetes binarios si sus banderas USE no coinciden con la configuración actual. Para ayudar a evitar problemas con la resolución de configuraciones de banderas USE inconsistentes, esta opción se activa automáticamente a menos que la opción --usepkgonly esté activada. Si se indica explícitamente --binpkg-respect-use, implica --autounmask-use=n, porque estas opciones se oponen naturalmente.
- # --color < y | n > NOTA: Activa o desactiva la salida de color
- # --complete-graph-if-new-use Activa el comportamiento --complete-graph si USE o IUSE cambian para un paquete instalado.
- # --complete-graph si la versión de un paquete instalado va a cambiar (upgrade o downgrade).
- # --depclean-lib-check [ y | n ] Tiene en cuenta las dependencias a nivel de enlace de las bibliotecas durante las acciones --depclean y --prune. Esta opción está activada por defecto. Si FEATURES="preserve-libs" está activado en make.conf, y preserve-libs no está restringido para cualquiera de los paquetes seleccionados para ser eliminados, entonces esta opción se ignora porque cualquier biblioteca que tenga con los que se ha hecho un seguimiento, simplemente se conservarán.
- # --implicit-system-deps < y | n > Asume que los paquetes pueden tener dependencias implícitas de paquetes que pertenecen al conjunto @system.
- # ALIAS : ZSH alias NOTA: Opciones a ejecutar con emerge que son opcionales, están con atajo de alias en .zshrc
- # --autounmask-continue [ y | n ] Aplicar automáticamente los cambios de autoenmascaramiento a los archivos de configuración, y continuar ejecutando el comando especificado. Si el cálculo de la dependencia no es totalmente exitoso, entonces emerge simplemente abortará sin modificar ningún archivo de configuración.modificar ningún archivo de configuración. NOTA: Esta opción debe usarse con mucha precaución, ya que es posible que haga cambios de configuración sin sentido cambios de configuración sin sentido que pueden llevar a la ruptura del sistema. Por lo tanto, es aconsejable utilizar --ask junto con esta opción.
- # --autounmask-only [ y | n ] En lugar de hacer cualquier construcción de paquetes, simplemente desenmascarar los paquetes y generar la configuración de package.use según sea necesario
- # --changed-deps-report [ y | n ] Indica a emerge que informe de los ebuilds cuyas dependencias han cambiado desde que la instancia instalada. El comportamiento con respecto a las dependencias cambiadas en tiempo de compilación se controla con la opción --with-bdeps con dependencias
- EMERGE_DEFAULT_OPTS="${ACTIVAS} ${ALERTA} ${ALFABETICO} ${BINARIOS} ${CANBIOS} ${CANBIOSUSE} ${CONFIGURA} ${CONTINUA} ${DEPENDE} ${DESESMASCARADO} ${EMERGE_DEFAULT_OPTS} ${GRAFICO} ${ENTER} ${KEEPMASK} ${KEYWORDS} ${LEER} ${LIMPIEZA} ${LICENCIAS} ${TRABAJOS}"
- #---------------------#
- # Acciones de Portage #
- #---------------------#
- # Las acciones de trabajo de Portage
- BINPORT="${FEATURES} buildpkg binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live"
- # buildpkg NOTA: Se crearán paquetes binarios para todos los paquetes que se fusionen.
- # binpkg-docompress NOTA: Realiza docompress (compresión de archivos controlable) antes de crear el paquete binario. Cuando esta opción está activada (por defecto), los archivos de documentación ya están comprimidos dentro de los paquetes binarios. Cuando está desactivada, los paquetes binarios contienen documentación sin comprimir y Portage la comprime antes de instalar.
- # binpkg-dostrip NOTA: Realiza la extracción de archivos antes de crear el paquete binario. Cuando esta opción está activada (por defecto) los ejecutables ya son despojados dentro de los paquetes binarios. Cuando se desactiva, los paquetes binarios contienen binarios contienen ejecutables sin despojar y Portage los despoja (o divide) antes de instalarlos.
- # binpkg-logs NOTA: Guarda los registros de las fusiones de paquetes binarios realizadas con éxito. Esto es relevante sólo cuando PORTAGE_LOGDIR está establecido.
- # buildpkg-live NOTA: Cuando esta opción está activada (por defecto), buildpkg mostrará el comportamiento por defecto de construir caché binario para todos los paquetes. Cuando está deshabilitada, los paquetes binarios no se crearán para los ebuilds.
- SIEMPREPORT="${FEATURES} candy cgroup clean-logs config-protect-if-modified fail-clean merge-sync multilib-strict parallel-fetch parallel-install preserve-libs split-elog"
- # candy NOTA: Habilitar un indicador de progreso especial cuando emerge está calculando las relaciones.
- # cgroup NOTA: Utiliza el grupo de control de Linux para controlar los procesos generados por los ebuilds. Esto permite a emerge matar de forma segura todos los sub-procesos cuando la fase de ebuilds se termina.
- # clean-logs NOTA: Activa la ejecución automática del comando especificado por la variable PORTAGE_LOGDIR_CLEAN. El ajuste de error PORTAGE_LOGDIR_CLEAN eliminará todos los archivos de PORTAGE_LOGDIR que fueron modificados por última vez hace al menos 7 días.
- # config-protect-if-modified NOTA: Esto hace que el comportamiento de CONFIG_PROTECT sea omitido para los archivos que no han sido modificados desde que fueron instalados
- # fail-clean NOTA: Limpia los archivos temporales después de un fallo de construcción. Esto es particularmente útil si tiene PORTAGE_TMPDIR en tmpfs.
- # merge-sync NOTA: Después de fusionar o des-fusionar un paquete, sincronice los archivos relevantes con el disco para evitar la pérdida de datos en en caso de un corte de energía.
- # multilib-strict NOTA: Muchos Makefiles asumen que sus bibliotecas deben ir a /usr/lib, o $(prefijo)/lib. Esta suposición puede causar un grave problema si /usr/lib no es un enlace simbólico a /usr/lib64. Para encontrar los paquetes malos, tenemos tenemos una característica de portage llamada multilib-strict. Evitará que emerge ponga bibliotecas de 64 bits en cualquier cosa que no sea (/usr)/lib64.
- # parallel-fetch NOTA: Fetch en segundo plano mientras se compila. Ejecute `tail -f /var/log/emerge-fetch.log` en un terminal para ver el progreso de parallel-fetch.
- # parallel-install NOTA: Utiliza bloqueos más finos al instalar paquetes, lo que permite una mayor paralelización. Para una paralelización paralelización adicional, desactive los bloqueos ebuild.
- # preserve-libs NOTA: Preservar las bibliotecas cuando los nombres de los hijos cambian durante la actualización o el downgrade. Las bibliotecas se conservan sólo si se detectan consumidores de esas bibliotecas. Las bibliotecas preservadas se eliminan automáticamente cuando no quedan consumidores. Ejecute `emerge @preserved-rebuild` para reconstruir todos los consumidores de las bibliotecas conservadas.
- # split-elog NOTA: Almacena los registros creados por PORTAGE_ELOG_SYSTEM="save" en subdirectorios de categoría de PORTAGE_LOGDIR/elog, en lugar de usar PORTAGE_LOGDIR/elog directamente.
- EXPERIMENTALPORT="${FEATURES} fixlafiles protect-owned"
- # fixlafiles NOTA: Modifica los archivos .la para no incluir otros archivos .la y algunas otras correcciones (orden de las banderas, entradas duplicadas entradas, ...)
- # protect-owned NOTA: Es idéntica a la función de protección contra colisiones, salvo que los archivos pueden sobrescribirse si no están explícitamente en el contenido de un paquete actualmente instalado. Esto es particularmente útil en sistemas que tienen muchos archivos huérfanos que han sido dejados por versiones anteriores de portage que no soportaban la función unmerge-orphans. Al igual que collision-protect, la variante COLLISION_IGNORE quede utilizarse para desactivar selectivamente esta función. Se recomienda dejar tanto protect-owned o collision-protect activados en todo momento, ya que de lo contrario las colisiones de archivos entre paquetes pueden de archivos entre paquetes puede resultar en que los archivos se sobrescriban o se desinstalen en momentos inapropiados. Si se activa la protección contra colisiones, ésta tiene prioridad sobre la protección propia.
- PROTECCIONPORT="${FEATURES} collision-protect ipc-sandbox mount-sandbox network-sandbox pid-sandbox sandbox userfetch"
- # collision-protect NOTA: Una función de control de calidad para garantizar que un paquete no sobrescriba archivos que no posee. La variable COLLISION_IGNORE puede utilizarse para desactivar esta función de forma selectiva. Vea también la función protect-owned relacionada.
- # ipc-sandbox NOTA: Aísla las funciones de la fase ebuild del espacio de nombres IPC del host. Sólo se admite en Linux. Requiere que el espacio de nombres IPCen el kernel
- # mount-sandbox NOTA: Aísla las funciones de la fase de ebuild del espacio de nombres del host mount. Esto hace posible que ebuild altere los puntos de montaje sin afectar al sistema anfitrión. Sólo se admite en Linux. Requiere soporte de espacio de nombres de montaje en el kernel.
- # network-sandbox NOTA: Aísla las funciones de la fase ebuild de las interfaces de red del host. Sólo se admite en Linux. Requiere soporte de espacio de nombres de red en el kernel.
- # pid-sandbox NOTA: Aísla el espacio de procesos para los procesos de ebuild. Esto hace posible matar limpiamente todos los procesos generados por el ebuild. Sólo se admite en Linux. Requiere soporte de PID y espacio de nombres de montaje en kernel. /proc se vuelve a montar dentro del espacio de nombres de montaje para tener en cuenta el nuevo espacio de nombres PID.
- # sandbox NOTA: Activar el sandbox al ejecutar emerge y ebuildPORT_LOGDIR="/var/log/portage"
- # userfetch NOTA: Cuando portage se ejecuta como root, deja de lado los privilegios de portage:portage durante la obtención de fuentes de paquetes fuentes.
- FEATURES="${BINPORT} ${EXPERIMENTALPORT} ${FEATURES} ${PROTECCIONPORT} ${SIEMPREPORT}"
- #-----------------#
- # Logs de portage #
- #-----------------#
- # INFO muestra información
- # WARM muestra cambios a realizar por el usuario
- # ERROR muestra el error
- # LOG muestra el log
- # QA Muestra errores pero compila. NOTA: Reportar los QA a Gentoo bug
- PORTAGE_ELOG_CLASSES="info warn error log qa"
- # Logs de emerge
- # ECHO utilza echo para guardar los logs en iun archivo
- # SAVE guarda el log
- PORTAGE_ELOG_SYSTEM="echo save"
- # Borra los logs cada 7 días
- PORTAGE_LOGDIR_CLEAN="find \"\${PORTAGE_LOGDIR}\" -type f ! -name \"summary.log*\" -mtime +7 -delete"
- #---------#
- # 32 y 64 #
- #---------#
- # Arquitecturas de binarios creados
- ABI_X86="32 64"
- #------------------#
- # Compilar en TMPS #
- #------------------#
- # Compilación en RAM
- PORTAGE_TMPDIR="/tmp"
- #----------------#
- # USES de RYZEN+ #
- #----------------#
- # Variables soportadas por la CPU
- CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sha sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3"
- #---------------#
- # USES GLOBALES #
- #---------------#
- # NOTA: no uar euse
- ALGORITMOS="${USE} lzo zstd"
- DOCUMENTOS="${USE} eps epub odf office pdf pdfimport"
- HARDWARE="${USE} bluetooth bluray cryptsetup cups frei0r hwaccel jumbo-build lm-sensors mtp nvenc opencl opengl opengl pipewire pulseaudio scanner usb v4l vdpau"
- MULTIMEDIA="${USE} a52 aac ao apng cdda cddb cdr dav1d dts dv dvb dvd exif fdk fftw flac gif gstreamer heif imagemagick jpeg jpeg2k lame modplug multimedia ogg openh264 png quicktime raw sound svg theora twolame vcd video vlc vorbis vpx wavpack webp x264 x265 xvid"
- NOSOPORTE="${USE} -zerconf"
- PLASMA="${USE} declarative designer dri elogind gpg kde kipi kwallet networkmanager phonon plasma policykit qml qt5 semantic-desktop share udev widgets xcomposite xinerama xscreensaver"
- RED="${USE} ipv6 nfs openssl samba sftp ssh"
- SOFTWARE="${USE} ffmpeg inkjar java jit lua luajit npm openexr perl rar ruby sdl2 sudo vim-pager webengine"
- SOPORTE="${USE} archive encode gui handbook harfbuzz libass logrotate postproc speech tiff truetype utils xcb xml xpm"
- USE="${ALGORITMOS} ${DOCUMENTOS} ${HARDWARE} ${MULTIMEDIA} ${NOSOPORTE} ${PLASMA} ${RED} ${SOFTWARE} ${SOPORTE} ${USE}"
- #----------------------#
- # Conexión de hardware #
- #----------------------#
- # Hardware conectado al host
- #-------------#
- # Un escáner #
- #-------------#
- # Scanner marca cannon por usb y wi-fi
- SANE_BACKENDS="pixma net"
- #--------------------#
- # Conexiones por usb #
- #--------------------#
- INPUT_DEVICES="keyboard mouse libinput"
- #---------------------#
- # Espejos de descarga #
- #---------------------#
- # De Francia NOTA: utilizar los mas cercanos
- GENTOO_MIRRORS="http://ftp.free.fr/mirrors/ftp.gentoo.org/ https://mirrors.ircam.fr/pub/gentoo-distfiles/ http://gentoo.mirrors.ovh.net/gentoo-distfiles/"
- #------------------#
- # Drivers gráficos #
- #------------------#
- VIDEO_CARDS="nvidia"
- #-----------#
- # Programas #
- #-----------#
- # Para activar soporte a emerger con Portage
- #-----------#
- # Emulación #
- #-----------#
- # Qemu NOTA: soporte de emulación para Qemu
- QEMU_SOFTMMU_TARGETS="aarch64 arm i386 x86_64"
- QEMU_USER_TARGETS="x86_64 i386 aarch64"
- #------#
- # Grub #
- #------#
- # soporte de placa base
- GRUB_PLATFORMS="efi-64 pc"
- #--------------------#
- # Suite de ofimática #
- #--------------------#
- CALLIGRA_FEATURES="karbon sheets stage words"
- LIBREOFFICE_EXTENSIONS="nlpsolver scripting-beanshell scripting-javascript wiki-publisher"
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement