El software libre nos falló éticamente

Cuando recién te presentan el software libre te lo venden como lo mejor de la vida. Si, es mucho mejor que el software privativo, por temas de privacidad, libertad y ética (considerando que la vara está muy baja). Aún así, creo que el software libre por diseño no es suficiente en temas éticos.

La libertad 0 del software libre permite usar el software para cualquier propósito. Y lamentablemente hay gente malvada en este mundo. Ya han ocurrido casos donde se le da mal uso al software libre, pero legalmente essas personas tienen respaldo.

Por ejemplo está GAB, un fork de Mastodon creado por una red social del mismo nombre. La red social antigua se caracterizaba por ser una alternativa a Twitter y Facebook dirigida a “fanáticos del discurso libre” (free speech) llena de alt-rights, supremacistas blancos y nazis.

Después de ser creado el fork, GAB pasó a ser parte del fediverso. Todo ese discurso de odio afectó al fediverso, que afortunadamente en su mayoría reaccionó bloqueando a la instancia. Sin embargo, GAB y sus adjacentes siguen existiendo y esparciendo su odio y prejuicios por internet.

Puede que los trozos de código en sí no hagan daño, pero, ¿se puede decir que el software libre es lo suficientemente ético si se permite su uso para hacer daño? Aunque el desarrollador de Mastodon no apoye ni quisiese ayudar a nazis, su código lo hizo. Y no puede hacer nada, porque todo lo que está haciendo GAB en ese aspecto es legal.

Tusky, un cliente de Mastodon para Android, bloqueó el inicio de sesión a GAB y sus adjacentes en su app. Pero se hizo un fork de la app que quita el bloqueo, lo que materialmente usa su código para malos fines.

Otro caso es el de Chef Sugar (un software libre parte de Chef, otro software que maneja infraestructuras) y ICE, el Servicio de Inmigración y Control de Aduanas de los Estados Unidos.

ICE ha detenido a mucha gente inmigrante en la frontera de EEUU. En el proceso esta gente ha sido encerrada en centros de detención (que han incluso sido denominados como campos de concentración) donde se han vulnerado sus derechos humanos. Han sufrido de agresiones, no han recibido atención medica necesaria, niñes han sido separades de sus padres entre otras tragedias.

El desarrollador de Sugar Chef (Seth Vargo) descubrió que ICE estaba usando su software para sus fines, además de que Chef tenía un contrato con ICE. Por esta razón él decidió borrar su repositorio de GitHub y de RubyGems.

Sin embargo, el software libre le falló a Seth. Chef repusó una versión anterior de Sugar en su programa, siguió trabajando con ICE y todo continuó como si nada hubiese pasado. Todo eso es legal, por la licencia de Sugar.

¿Qué podemos hacer entonces?

Ahí es donde está el problema. No tengo idea. Es una lástima que tengan que pagar justos por pecadores, pero el software libre como está diseñado actualmente no es suficiente.

Se sabe que la legalidad no es mismo que la moralidad. Existen leyes que no son morales, lo que la gente mal intencionada aprovecha para sus fines egoístas.

Irónicamente, mucha gente dice que no hay que meter política en el software libre, cuando este es de lo más político que hay. La política es un reflejo de nuestra ética. La libertad nuestra termina donde empieza la de otra persona. Ya no podemos dejar total libertad a la gente que solo quiere hacer daño, ya han hecho daño.

Eso no significa que el movimiento del software libre hay que terminarlo. El software privativo es mucho peor en general. Pero es necesario reexaminar este movimiento. Creo que la pregunta clave es: ¿Hasta dónde llega la libertad 0?

No quiero reprochar a la gente que crea software libre con buenos fines. No es su culpa que llegue cualquiera a usar su software para el mal. Pero me gustaría que analicen esto para que den ideas para enfrentar este tipo de situaciones.

Ya existen ideas. Por ejemplo, la Non-Violent Public License y la Hippocratic License. El concepto de que el producto no pueda ser usado con malos fines esté plasmado en la licencia puede ser una base para otras más avanzadas en el futuro. No sé si esas licencias serán aplicables en el futuro en los casos críticos, pero espero que sí.

Según la definición de RMS las licencias de arriba no son libres. ¿Qué podemos hacer? ¿Redefinir el software libre? ¿Crear un nuevo movimiento de software? No sé la respuesta. Pero dejo la inquietud.

Espero que este escrito despierte ideas en gente con más imaginación que yo.

Muchas gracias por leer.

Instalar Gitea con CentOS 7, Certbot, Nginx y SQLite

En el siguiente post les enseñaré lo del título instalando Gitea, un servicio Git autogestionado, fork de Gogs. ? Asumiré que ya está instalado CentOS. Recuerda reemplazar example.com con tu dominio.

Primero instalaremos los requisitos si no lo están:

sudo yum install epel-release
sudo yum install nginx git sqlite certbot python2-certbot-nginx

Luego activaremos e iniciaremos nginx:

sudo systemctl enable nginx
sudo systemctl start nginx

Usaremos certbot para transformar la conección en HTTPS, siguiendo las instrucciones en inglés.

sudo certbot --nginx -d example.com

(Tendrás que ingresa tu mail, luego a, después 1 si quieres suscribirte a EFF, finalmente 2 para redirigir a HTTPS)

Después modificaremos la configuración del vhost Nginx, suele estar en default.conf.

sudo nano /etc/nginx/conf.d/default.conf

Debe quedar algo así:

server {
    server_name  example.com;
    root /var/www/example.com;
    
#Si se quiere Gitea en el dominio directamente usar esto y no lo del subdirectorio.
    location / {
       proxy_pass http:/localhost:3000
    }

#Si se quiere Gitea en un subdirectorio usar esto y no lo del dominio directo.
     location /git/ {
        proxy_pass http://localhost:3000/;
      }

listen 443 ssl http2; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}
server {
    if ($host = example.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    server_name  example.com;
    return 404; # managed by Certbot

Luego creamos un usuario para instalar Gitea en él.

sudo adduser --system --shell /bin/bash --comment 'Git Version Control' --user-group --home-dir /home/git -m git

Iniciamos sesión con ese usuario.

su - git

Creamos un directorio, descargamos Gitea buscando el link aquí y lo ejecutamos.

mkdir gitea
cd gitea
wget -O gitea https://dl.gitea.io/gitea/1.10.0/gitea-1.10.0-linux-amd64
chmod +x gitea
./gitea web -c custom/conf/app.ini

Vamos al navegador a http://example.com:3000/install, rellenamos con lo siguiente e instalamos (https://example.com/git es la otra opción en URL base si queremos subdirectorio):

Luego de instalar, paramos gitea con Ctrl+C, y cerramos sesión del usuario git con Ctrl+D y crearemos el servicio para su ejecución:

sudo nano /etc/systemd/system/gitea.service

Pegamos esto:

[Unit]
Description=Gitea (Git with a cup of tea)
After=syslog.target
After=network.target
[Service]
RestartSec=2s
Type=simple
User=git
Group=git
WorkingDirectory=/home/git/gitea/
ExecStart=/home/git/gitea/gitea web -c /home/git/gitea/custom/conf/app.ini
Restart=always
Environment=USER=git HOME=/home/git
[Install]
WantedBy=multi-user.target

Iniciamos y habilitamos el servicio:

sudo systemctl enable gitea
sudo systemctl start gitea

Finalmente revisamos si está activo:

sudo systemctl status gitea

Y revisamos el link en el navegador. ¡Y ya está! Sólo queda registrarte como primer usuario.

Espero que esta guía haya sido de ayuda.

#ClimateStrike

Desde el 20 al 27 de septiembre del 2019, es la huelga contra el cambio climático mundial. Puedes encontrar más información y posts en las redes privativas en la página oficial https://es.globalclimatestrike.net/ .

Para ayudar a difundir un poquito, hice un fork del trabajo de Victorhck (que estaba basado en el de Kim). Es una Gitlab Page que sirve para obtener imágenes públicas de Mastodon con el hashtag #ClimateStrike.

Está disponible en https://skrlet13.gitlab.io/climate-strike/ y el código fuente está en https://gitlab.com/skrlet13/climate-strike bajo la GPL.

Si puedes, recuerda cooperar con la huelga. Gracias por leer.

OStatus, el estándar que va diciendo adiós

OStatus es un estándar libre para microblogging federado. Permite a distintos usuaries y distintas instancias comunicarse entre sí.

A OStatus solo le quiere GNU Social. Otras páginas como Pleroma y Mastodon tienen soporte, pero no se introducen cambios ni mejoras en ese código. En el caso de Mastodon, la versión 3.0 planea eliminar este estándar.

Lamentablemente, les usuaries de Mastodon perderían la comunicación con sus contactos de GNU Social cuando esto ocurra, a menos que GNU Social se actualice (lo que es improbable, debido a la fecha del último commit). Existe un plugin para usar ActivityPub en GNU Social, pero tampoco se ha actualizado recientemente. El abandono del estándar y de la red social por parte de GNU le jugó en contra.

ActivityPub es el estándar rey referente a las redes sociales libres y federadas. Aunque no todas las redes lo usan, las principales tienen mayor compatibilidad con este. Mastodon, la red más grande, lo utiliza.

A mi me parece triste que se abandone el estándar, y sé lo difícil que es mantener un proyecto, sin embargo entiendo que con el pasar del tiempo se abren vulnerabilidades y problemas de compatibilidad si no se actualiza el software.

Espero que alguien tome las riendas y actualice GNU Social para que siga siendo compatible con las demás redes federadas. Por mientras, a les usuaries de GNU Social les conviene buscar alternativas para cuando llegue el día.

Update: @Kim@mastodont.cat me avisó esto:

https://mastodont.cat/@kim/102723906571541138/embed

Vueltas de chaqueta en el mundo del software libre

Darse vuelta la chaqueta es sinónimo de cambiarse de bando.

Muchas veces se oyen casos de proyectos privativos que pasan a ser libres o liberan una pequeñita parte de su código.

Aquí hablaremos de webs y software libres que pasaron a ser privativas, de alguna forma u otra.

Openmailbox

Openmailbox nació en 2013 como organización sin fines de lucro ofreciendo una alternativa a los servicio de correo privativo. Usaba software libre (supuestamente, porque nunca lo demostró) y era gratis, aceptando donaciones.

Luego, en 2017, se transformó en empresa y cambió sus términos de servicio. Los clientes gratuitos no podrían usar clientes de correo, solo la webapp y el servicio de pago cuesta $4,99 USD al mes.

Ahora nadie lo pesca ni en bajada, al punto que no se han molestado en renovar el certificado Let’s Encrypt.

Si quieres un correo más libre, puedes intentar con Disroot.

Aseprite

Aseprite es un programa nacido en 2001 para hacer sprites estáticos y animados, es decir, esas imágenes pixeleadas que se suelen usar en videojuegos.

Antes se publicaba bajo la GPLv2 hasta que en agosto de 2016 se cambió a un EULA que prohíbe la redistribución del software compilado. Actualmente el programa se vende en la página oficial a $14,99 USD. El código fuente está disponible, pero bajo las condiciones del EULA.

Si quieres, puedes acceder al código de la última versión bajo la GPLv2 aquí.

Android

¿Se acuerdan de AOSP? La verdad es que todavía existe, pero ni se nota. La gran mayoría de los telefónos corren la versión Google de Android.

Al principio la mayoría del proyecto Android era parte de AOSP (incluyendo algunas apps), así que se debía publicar el código para respetar la licencia de Linux (que está incluido en AOSP). Pero ahora Google ha llenado Android de sus aplicaciones privativas por lo que las últimas versiones de AOSP solo incluyen el sistema operativo básico.

La verdad es que hice trampa con Android porque:

  1. La intención de Google no ha cambiado, aún es la de hacer software privativo y ganar plata con ello.
  2. AOSP sigue siendo libre.

Sin embargo, lo incluí porque es palpable el cambio que hubo en el porcentaje de aplicaciones privativas de Android.

Si quieres un sistema operativo móvil más libre, busca ROMS de tu dispositivo. Muchas veces se encuentran en los foros de XDA.

¿Conoces algún otro caso? ¡Ponlo en los comentarios!

¿Que pasa con Purism en el Fediverso?

Purism es una empresa enfocada en la privacidad y el software y hardware libre. Vende dispositivos lo más libres posibles (en su FAQ confirma la presencia de blobs binarios en la BIOS) y recientemente lanzó servicios online enfocados en la privacidad (redes sociales, e-mail, chat y VPN).
¿Por qué hay tanta discusión en el fediverso por Purism?

Falta de créditos en su aplicación anteriormente

El creador de Tusky (una aplicación de Mastodon para Android), denunció la falta de créditos obvios por parte de Purism, haciendo parecer que las aplicaciones para Librem.one fue creación 100% original de Purism. El código fuente estaba disponible, lo que permitió descubrir esto.

Más tarde, este asunto fue tocado en un artículo de Purism reactivamente.

Tuvo rastreadores

Jason Evangelho descubrió 3 trackers en la aplicación de chat. Purism respondió que intentaron retirarlos pero después se dieron cuenta que seguían allí. En la versión 0.1.4 fueron retirados.

Retiró el sistema de reporte

Un commit en el código de Smilodon (el fork de Mastodon usado en Librem.one) retiró los reportes (contra malas conductas y abuso).
Al final se repusieron debido al backlash en otro commit de un merge request sugerido por @Arlohyena y apoyado por varios admins del fediverso, debido a que usuaries con mala conducta dañaran a usuaries de otras instancias.

Código de conducta insuficiente en Librem.one

Su código de conducta está basado en el Community Convenant 1.0. Sin embargo, fue editado para eliminar todos los ejemplos de acoso (harrasment en inglés) que específicamente trataban temas como racismo, LGBT+fobia, capacitismo, etc, según Purism, para hacerlo más legible.
La eliminación de estos ejemplos dejó al aire que es considerado acoso, lo que preocupó a la población del fediverso por la ambigüedad del código y hacerlos vulnerables al discurso de odio.
Al final, Purism decidió ir por el lado del discurso libre (free speech) y dejar de lado la moderación, dejando la puerta abierta al discurso de odio.
Aquí @brainblasted@social.libre.fi publicó la conversación pública de la sala de Librem.one (#community-librem-one:talk.puri.sm en Riot), :

https://social.libre.fi/objects/e04f14dd-dba0-4f51-b9d8-9aade8649da1
Debido a esto, muchas instancias que usan ActivityPub están bloqueando a Librem.one, para evitar acoso a sus usuaries.
¿Olvidé algo? Siéntete libre de ponerlo en los comentarios.

Viviendo con software propietario y libre.

Nadie es perfecto. Nadie ha vivido 100% libre del software privativo, ni siquiera Stallman.  Cuando nuestra existencia depende de este (casi todos los trabajos lo utilizan) y es la única alternativa que conoces, es difícil hacer un cambio.

Pero nosotres, que algo conocemos del software libre, podemos ayudar a este mundito. ¿Cómo? Aquí hay algunas sugerencias.

Usando software libre

None
Meme: No me digas

Es obvio, que para hacer un cambio tenemos que empezar por nosotres mismes. El tiempo que lo usas es tiempo que no usas el propietario. Además, promueves su utilización, ya que mientras más gente haya, aumentará la comunidad y el soporte.

Evita cuando puedas el software privativo

No te digo que lo dejes totalmente, eso es una utopía en la actualidad para la mayoría de la gente. Pero cuando esté la alternativa a la mano, ¿por qué no?

Creando software libre

None
Meme: Roll safe.

Así se le hace competencia al software privativo. Sólo tienes que ponerle una licencia libre a tu software publicado. Puedes ver las distintas licencias existentes aquí (en GNU). ¡Elige con cuidado!
La verdad es que no he dicho nada nuevo, pero quería tocar cierto tema.

¿Es de mala persona usar o crear software privativo?

En mi humilde opinión, usarlo nunca te hace mala persona. Sólo te hace una víctima de los probables abusos de las compañías que lo crean. Por supuesto, las víctimas no son malvadas ni culpables por serlo. Ahora,si protegerse es una alternativa, hazlo. Es difícil que las grandes empresas cambien sus modos de actuar. Aunque no soy nadie para decir eso, uso mucho software privativo.
Ahora, crear software privativo tiene sus matices. Si tu trabajo o casa te coerciona a crear software privativo porque si no chau jefe, chau plata y/o título, lo entiendo. Las dinámicas de poder son muy grandes como para ser desafiadas por una sola persona. Nada que hacer.
Ahora si estamos hablando de grandes compañías y empresas que podrían hacerlo fácilmente, pero no quieren, entonces sí, son malas. Tienen el poder de cambiar el mundo para bien y no lo harán ’cause money.
Pues nada, si tienes el poder de cambiar el mundo para bien con tu software, hazlo. Y hazlo libre. Podrías cambiar la historia…

Mastodon: Un reemplazo libre de Twitter

A continuación, una introducción a la red social de Mastodon, basándome en lo publicado en joinmastodon.org y https://github.com/tootsuite/mastodon.

¿Qué es Mastodon?


Transcripción en español del video (sacado del .srt del video)
Mastodon es una red social de código abierto
Como en Twitter o Tumblr, se pueden crear perfiles, publicar mensajes, imágenes o vídeos
y por supuesto seguir a otras personas.
Los mensajes tienen un límite de 500 caracteres y se muestran cronológicamente
A diferencia de otras plataformas, Mastodon es descentralizado, es decir,
no hay un único servidor, empresa o persona que lo gestione.
Mientras que otras plataformas sociales son propiedad de una única corporación que tiene
completo control sobre todo, cualquiera puede poner en marcha su propio servidor de Mastodon.
¿Cómo funciona?
Cuando alguien crea su propia versión de Mastodon, se denomina una “instancia”
Como Mastodon es código abierto, cualquiera puede crear su propia instancia de Mastodon con
sus propias reglas.
Por esto, cada instancia es propia, está gestionada y moderada por la comunidad que
la crea, y no por alguna enorme empresa que rastree tus datos para venderlos a anunciantes.
En la mayoría de casos, las instancias de Mastodon están financiadas por las personas, no por empresas
¿Pero cómo se comunican estas instancias entre sí?
Aunque los miembros de una instancia pueden, claro, seguirse entre sí, también pueden decidir
seguir a personas de otras instancias.
Así que, aunque cada instancia de Mastodon se opera de forma privada, sus miembros pueden comunicarse
con los de otros servidores de forma transparente.
Por supuesto, las comunidades que quieran mantenerse aisladas no tienen que comunicarse con otrao
servidores; está en las manos de los usuarios.
Mastodon también ofrece herramientas anti-abuso efectivas para moderar las instancias como los
usuarios crean conveniente.
En resumen, Mastodon es una red social que tiene como prioridad al usuario.
A diferencia de plataformas tradicionales, Mastodon no puede caer en bancarrota, no se puede vender
y no puede ser completamente bloqueado por gobiernos.
Cada persona es libre de unirse a la comunidad que quiera y comunicase con quien
quiera.
Con más de un millón de personas registradas que hablan múltiples idiomas, Mastodon
está creciendo rápido.
¿Es difícil decidirse por una instancia?
Usa el enlace inferior para encontrar la que mejor se adapte a ti.

Buscando una instancia

En joinmastodon.org, cerca del final de la página hay algunas instancias sugeridas.
Si sabes inglés, ve a instances.social. Te recomienda instancias después de hacerte unas preguntas sobre el idioma que hablas, contenido que preferirías ver o no ver y cantidad de usuarios de la instancia preferido.

Preguntas frecuentes (FAQ) en español

Busca a tus amigos de Twitter en Mastodon

Lista de apps (en inglés)

 
En Mastodon soy @skrlet13@mastodon.social
¡Espero que nos veamos allí! Siéntete libre de poner sugerencias para agregar al post en los comentarios.
 

Como instalar Rockbox en iPod Classic (6th, 6.5th, 7th gen) con Windows.

Rockbox es un firmware libre para varios reproductores de música. Aún no soporta oficialmente a los modelos del título, pero se puede usar sin problemas. Puedes buscarlo para otros reproductores en https://www.rockbox.org/
Hoy le explicaré como hacerlo en español, aquí está la página fuente en inglés.
Los pasos son similares para otros dispositivos.

Pasos

1- Revisa que tu iPod sea uno de los siguientes modelos:

Número de Modelo Capacidad Nombre de Modelo (Wikipedia) Nombre de Modelo (freemyipod)
MB029, MB147 80 GB 6th Gen Classic 1G
MB145, MB150, PB145, PB150 160 GB 6th Gen
MB562, PB562, MB565, PB565 120 GB 6.5th Gen Classic 2G
MC293, MC297, PC293, PC297 160 GB 7th Gen Classic 3G

2- Instala los drivers DFU. Para evitar problemas, para esto recomiendo instalar iTunes simplemente. También recomiendo poner el iPod en modo disco duro, el firmware puede leer la música desde allí, y podrás copiarla haciendo drag and drop.
3- Descarga el instalador de Rockbox (windows).
4- Conecta tu iPod al PC.
5- Ejecuta el programa.
6- Selecciona Show disabled targets, luego iPod Classic y después OK.
6
7- Selecciona todo menos Bootloader y pincha Install. (Puedes seleccionar solo Rockbox si quieres una instalación mínima. Además puedes seleccionar temas en Customize). Luego OK.
7
8- Ahora SOLO selecciona bootloader, install.
8.PNG
9- Cuando aparezca este mensaje, mantén presionados los botones MENU y el del centro al mismo tiempo.
9.PNG
10- Cuando salga este mensaje, suéltalos.
10
11- Aprieta OK, sale del programa, expulsa el iPod y podrás usar tu dispositivo.
¡Eso es todo! Espero que sea útil para mucha gente.