GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo modificar un paquete deb?

El procedimiento que uso es este:

Obtenga la fuente (a través de apt-get src).

Aplica un parche o haz lo que necesites cambiar.

ejecutar debchange --nmu y escriba una descripción del cambio que realizó. Esto aumentará automáticamente el número de versión para que el sistema no intente "actualizar" su paquete personalizado de nuevo al estándar.

Ejecute debuild .

Disfruta de tus archivos deb.


Encontré la siguiente guía en los foros de Ubuntu para reconstruir el paquete del administrador de red aquí

Re:cómo parchear la fuente de un deb

Cita:Publicado originalmente por cable

Básicamente, quiero reconstruir el paquete del administrador de red con una especie de parche personalizado para probar algo. Entonces quiero:1. obtenga el código fuente para la "versión" de ubuntu del administrador de red

Código:

sudo apt-get source network-manager

Cita:2. parchearlo con mi parche Los archivos de origen se descargarán en el directorio de trabajo. Consulte esto para obtener más información.

Cita:3. crear un archivo deb que pueda instalar en lugar del administrador de red actual.

Ejecutar código:

dpkg-buildpackage -rfakeroot -uc -b
en el directorio creado.

También encontré este artículo:Guía para nuevos administradores de Debian Capítulo 6 - Creación del paquete

En cuanto a que sus cambios se hayan perdido por una actualización de los repositorios oficiales, no estoy seguro. Siempre puede enviar su parche nuevamente a los mantenedores del paquete compiz-gnome o crear su propio repositorio para el paquete actualizado.


La respuesta a las preguntas n.º 3 y n.º 4 es que debe poner el paquete en retención. estado una vez que haya instalado su versión. Esto le dice al sistema de administración de paquetes de Debian que "retenga" cualquier cambio futuro en este paquete, en efecto, le permite administrar el paquete manualmente.

De las preguntas frecuentes de Debian:

7.11 ¿Qué significa desconocido, instalar, eliminar, purgar y retener en el estado del paquete?

Estos indicadores de "deseo" indican lo que el usuario quería hacer con un paquete (como lo indican las acciones del usuario en la sección "Seleccionar" de dselect o las invocaciones directas del usuario a dpkg).

Sus significados son:

  • desconocido - el usuario nunca ha indicado si quiere el paquete>

  • install - el usuario quiere que se instale o actualice el paquete

  • eliminar:el usuario desea que se elimine el paquete, pero no desea eliminar ningún archivo de configuración existente.

  • purga:el usuario quiere que el paquete se elimine por completo, incluidos sus>archivos de configuración.

  • hold - el usuario quiere que este paquete no se procese, es decir, quiere mantener la>versión actual con el estado actual sea cual sea.

7.12 ¿Cómo pongo un paquete en espera?

Hay tres formas de retener paquetes, con dpkg, aptitude o con dselect.

Con dpkg, debe exportar la lista de selecciones de paquetes, con:

dpkg --get-selections *> selecciones.txt

Luego edite el archivo resultante selections.txt, cambie la línea que contiene el paquete que desea retener, p. libc6, de esto:

instalación de libc6

a esto:

retención de libc6

Guarde el archivo y vuelva a cargarlo en la base de datos dpkg con:

dpkg --set-selections

Con aptitude, puede retener un paquete usando

aptitude hold nombre_paquete

y elimina la retención con

aptitude liberar nombre_paquete

Con dselect, debe ingresar a la pantalla [S]elect, buscar el paquete que desea mantener en>su estado actual y presionar =' key (or H'). Los cambios se activarán inmediatamente>después de que salgas de la pantalla [S]elect.

Nota: La gente ha encontrado problemas con la retención de aptitud comando, así que en mi humilde opinión, debería preferir el comando dpkg para contener el paquete. Alternativamente, puede retener el paquete a través de la interfaz GUI del administrador de paquetes Synaptic (Paquete> Versión de bloqueo). Prefiero usar dpkg porque me ha funcionado bien.

Ya tienes una buena respuesta para el resto, así que no aventuraré mi opinión al respecto.


Linux
  1. Cómo extraer archivos del archivo de paquetes de Debian DEB

  2. Cómo enumerar los archivos instalados desde un paquete RPM o DEB en Linux

  3. Cómo verificar los detalles de un paquete de software en Ubuntu Linux

  4. ¿Cómo hacer un paquete .deb desde Github?

  5. Debian:Cómo instalar o eliminar paquetes DEB usando dpkg

Cómo instalar el paquete Debian (.deb)

Cómo instalar paquetes Deb en Ubuntu, Debian y Mint

Cómo instalar Deb Package en OpenSUSE Leap o Tumbleweed

¿Cómo crear un paquete en WHM?

¿Cómo modificar los paquetes de cuentas de cPanel en los planes de revendedor de cPanel?

Cómo instalar Yarn en Ubuntu 18.04