conio.h y Ncurses

11 respostas [Última entrada]
etern00b
Desconectado
Joined: 05/02/2022

Hola,
estoy mirando los ejercicios del libro "Aprender a programar en C de 0 a 99 en un solo libro" y en uno de ellos usa conio.h y dicen en stackoverflow que un sustituto puede ser usar Ncurses. Me disponia a seguir estas instrucciones:

Installing the ncurses library in Debian/Ubuntu Linux

- You need to install the following two packages:
libncurses5-dev : Developer’s libraries for ncurses
libncursesw5-dev : Developer’s libraries for ncursesw
- Open the Terminal application.
- Type the following [apt-get command](https://www.cyberciti.biz/tips/linux-debian-package-management-cheat-sheet.html?utm_source=Linux_Unix_Command&utm_medium=faq&utm_campaign=nixcmd) to install ncurses header and libs:
sudo apt-get install libncurses5-dev libncursesw5-dev

Pero esta clausula:
Cuando el acuerdo se realizó, para pasar los derechos de la FSF, se incluyó la siguiente cláusula:

> «La fundación promete que toda distribución del paquete, o de cualquier trabajo “basado en el paquete”, que tome lugar bajo el control de la Fundación o sus agentes o asignados, deberá ser en los términos que explícitamente y perpetuamente permiten a cualquiera poseer una copia del trabajo en los cuales se apliquen los términos, y poseer notificación exacta de los mismos, para redistribuir copias del trabajo a cualquiera en los mismos términos».

De acuerdo con el actualizador Thomas E. Dickey, esto excluye el relicenciamiento a la GPL en cualquier versión, ya que impondría restricciones en los programas que serían capaces de enlazar las bibliotecas.

me ha hecho parar y venir a comentarlo.
PD: si sabes C y no lo aprendiste en la universidad, ¿que camino seguiste? Gracias.

Per aspera ad astra.

avrtm
Desconectado
Joined: 11/22/2019

Yo entiendo que se acordó mantener ncurses bajo la licencia MIT, que es más permisiva que la GPL permitiendo que se pudiera usar ncurses en programas con todo tipo de licencias, incluyendo programas privativos. Pero esto no quiere decir que ncurses no sea software libre ni que un programa que se valga de la biblioteca ncurses no pueda ser distribuido bajo la licencia gpl o cualquier otra, luego no veo ningún problema para instalarlo y usarlo en tus prácticas y proyectos.

iShareFreedom
Desconectado
Joined: 12/20/2021

Las licencias débiles, no son permisivas, disculpa pero a qué licencia te refieres, ya que no existe la licencia MIT, sino la Expat o x11 para software libre, de todas maneras estas no son buenas licencias ya que no defienden la libertad del usuario de informática, por esta razón se le conocen como licencias débiles. Al contrario de la licencia GNU GPLv3+ que es una licencia de software libre que incluye copyleft haciendo así una defensa en contra del Estado para defender la propiedad privada y la transferencias de derechos de propiedad a los usuarios de informática permitiendo así que cada usuario tome el control sobre su propia informática.

Dejando esto último atrás ya explicado quiero decir que decir que ncurses no sea software libre, es caer en un gran error, es como decir que GNU sea privativo. ¿Por qué digo esto? Porque ncurses es software de GNU: https://www.gnu.org/software/ncurses/

avrtm
Desconectado
Joined: 11/22/2019

Sí que existe la licencia MIT https://es.wikipedia.org/wiki/Licencia_MIT

iShareFreedom
Desconectado
Joined: 12/20/2021

No tengo ganas de convencerte de lo contrario, incluso en este asunto no tengo ganas de ayudarte.

avrtm
Desconectado
Joined: 11/22/2019

Yo solo me limito a constatar que existen multitud de programas que afirman estar distribuidos bajo la "Licencia MIT" (adjunto capturas de dos ejemplos de ello) y por tanto no se puede negar que dicha licencia existe. Si el nombre es más o menos apropiado es una cuestión que ya no me meto a valorar.

Captura.PNG Captura2.PNG
noblob
Desconectado
Joined: 02/08/2018

Yo no entiendo de licencias, para mi el derecho es un rollako impresionante, pero si desde "gnu.org" o "fsf.org" recomiendan usar f-droid de mercado de apks para android, aunque sea como mal menor, ya que en efecto lo suyo es no usar un procesador de comunicaciones que solo debe entender algun departamento importante de algun gobierno de algun pais importante, o directamente no es de este mundo, vereis que f-droid esta lleno de mit, bsd, apache y otras, las licencias de software libre, mientras respeten las 4 libertades deven de ser libres, digo yo... no tiene porque ser gplv3, creo yo.

vita_cell
Desconectado
Joined: 07/19/2015

GPL3 es muy restrictiva, y la que mas protege contra el software. No permite hacer static linking para bibliotecas con esta licencia, en un software privativo. Por eso algunos desarrolladores prefieren licencias mas permisivas.

iShareFreedom
Desconectado
Joined: 12/20/2021

la GPLv3+ no es una licencia restrictiva, estás usando propaganda del movimiento anti-libertad del código abierto. Lo que sí hace la GPLv3+ a diferencia de licencias laxas, o licencias débiles es defender la libertad de los usuarios.

Aquí puedes leer algunos detalles a cerca de esto https://es.wikipedia.org/wiki/GNU_General_Public_License#Versi%C3%B3n_3

vita_cell
Desconectado
Joined: 07/19/2015

Por eso GPL3 es restrictiva, porque protege el software libre. En cierto software podria crear conflictos.
Si yo por ejemplo escribo un toolkit grafico para proposito general (creacion de GUI para programas), GPL3 no siempre es la mejor opcion, porque obligaria a no usar mi biblioteca para alguien que quiere escribir un programa privativo y hacer un link estatico con mi biblioteca. O si programamos un juego online y lo licenciamos con GPL3, la licencia no permitiria mods/addons sin licencia o con licencia privativa. GPL3 protege el software libre del privativo, a cambio de ser mas estricta y restrictiva.

iShareFreedom
Desconectado
Joined: 12/20/2021

Pues entonces, es la mejor licencia entonces, puesto que su utilización promueve el objetivo del movimiento del software libre, es decir: Acabar con la utilización del software privativo.

iShareFreedom
Desconectado
Joined: 12/20/2021

Además me gustaría añadir el siguiente enlace donde se explica qué es una licencia compatible con la GPL https://www.gnu.org/licenses/gpl-faq.html#WhatIsCompatible