¿Cuál es la diferencia entre los repositorios de paquetes 'contrib' y 'non-free'?

17

Aunque me gusta Debian por varias razones, no siempre es fácil encontrar documentación sobre aspectos específicos de esta distribución y sus políticas.

Mi pregunta es: ¿cuál es la diferencia entre los repositorios contriby los non-freepaquetes?

De las pequeñas explicaciones que pude encontrar, si no me equivoco:

  • non-free es para paquetes cuyas licencias no son gratuitas
  • contribpara dependencias de non-freepaquetes (que los hacen no parte de Debian)

Pero me parece extraño tener dos repositorios para, por así decirlo, el mismo propósito, que es poner a disposición software no libre dentro de Debian.

Me gustaría saber si me falta algo aquí.

Paradoja
fuente

Respuestas:

27

los paquetes no libres son paquetes que no cumplen con ladefinición de las Directrices de software libre de Debian P.ej:

nvidia-driver que proporciona un controlador propietario.

Los paquetes contrib son paquetes que cumplen con el DFSG, pero que dependen depaquetes no libres o que dependen de algún software no libre descargado (por el paquete o que tiene que descargarse manualmente) para funcionar correctamente. Para que no terminen adentromain. P.ej:

bumblebee-nvidiaque si bien cumple con DFSG, no es realmente útil sin el paquete no gratuitonvidia-driver , por lo que se coloca en la contribsección, o

vice lo que requiere descargar (respetando los derechos de autor y las leyes) las ROM para funcionar correctamente.

Si alguien no quiere o no puede usar software no libre , es probable que esa persona no necesite o no pueda usar software dependiendo de él, por lo que es más útil ponerlos por separado en una sección de contribución . Esa persona ni siquiera tendrá que descargar la sección contrib .

ACTUALIZACIÓN: el software en contrib , y sus fuentes aún están disponibles para uso gratuito. Las partes interesantes podrían reutilizarse en otro proyecto, o las partes no libres (o no disponibles) de las que depende podrían reemplazarse (por ejemplo: reemplazar gráficos, música, etc., activos para un motor de juego en contrib ). Tenerlo separado de lo no libre ayuda a saber qué partes pueden reutilizarse.

Curiosidades: la definición de código abierto se creó inicialmente eliminando cualquier mención de Debian en DFSG.

AB
fuente
2
Realmente no entiendo el beneficio para Debian o sus usuarios de separar non-freey contrib. ¿Cuál es la ventaja real obtenida? Como un usuario final que no le importa si un programa contiene código que no es libre, tanto non-freey contribson bien por mí. Como usuario final que se preocupa, ambos están fuera de los límites para mí. ¿Cuál es la ventaja real?
MechMK1
1
Al igual que MechMK1, estoy desconcertado por esto y, aunque debería haberlo escrito más claramente en mi pregunta, ese también es un aspecto al que me gustaría responder.
Paradoja el
1
Puede reutilizar y modificar el código de contrib para adaptarlo a otro proyecto, porque la fuente está disponible como cualquier fuente de "main". Probablemente no pueda hacer esto cuando no sea libre, o la licencia fuente no le permite hacer lo suficiente o no hay ninguna fuente. Si el usuario final es un usuario final "normal" que no intenta hacer nada aparte de lo que se distribuye, me imagino que contrib y non-free se verían igual
AB
3
También a veces puede reemplazar las partes no libres por partes libres. El tipo de cosa que se podría hacer en teoría con algunos motores de juego en contrib y sus activos (gráficos, música ...) en forma gratuita o en ninguna parte. La división dejó en claro que era posible hacer esto.
AB
9

Definido en el Manual de Políticas de Debian:

2.2.2. El área de archivo contrib

El área de archivo contrib contiene paquetes suplementarios destinados a trabajar con la distribución Debian, pero que requieren software fuera de la distribución para construir o funcionar.

Cada paquete en contrib debe cumplir con el DFSG.

Además, los paquetes en contrib

  • no debe ser tan defectuoso que nos negamos a apoyarlos, y

  • debe cumplir con todos los requisitos de política presentados en este manual.

Ejemplos de paquetes que se incluirían en contrib son:

paquetes gratuitos que requieren contrib, paquetes no gratuitos o paquetes que no están en nuestro archivo para su compilación o ejecución, y

paquetes de envoltura u otro tipo de accesorios gratuitos para programas no gratuitos.

2.2.3. El área de archivo no libre

El área de archivo no libre contiene paquetes suplementarios destinados a trabajar con la distribución de Debian que no cumplen con el DFSG o tienen otros problemas que hacen que su distribución sea problemática. Es posible que no cumplan con todos los requisitos de la política en este manual debido a restricciones en las modificaciones u otras limitaciones.

Los paquetes deben colocarse en un estado no libre si no cumplen con el DFSG o si están gravados por patentes u otros problemas legales que hacen que su distribución sea problemática.

Además, los paquetes no son gratuitos

  • no debe ser tan defectuoso que nos negamos a apoyarlos, y

  • debe cumplir con todos los requisitos de política presentados en este manual que les sea posible cumplir.

Otras lecturas:

GAD3R
fuente
2

https://www.debian.org/doc/debian-policy/ch-archive#s-contrib

El área de archivo contrib contiene paquetes suplementarios destinados a trabajar con la distribución Debian, pero que requieren software fuera de la distribución para construir o funcionar.

Este software podría muy bien ser un software que no está disponible a mainpesar de ser gratuito. Simplemente no puede obtenerlo de Debian.

Malvin Butterfinger
fuente
No es que "no pueda obtenerlo de Debian", simplemente no es parte de la distribución de Debian per se.
Paradoja