css
html
javascript
python
makefile
Jesús 09d7e8b0de
fix string does not match the pattern
4 months ago
cl-theme fix semantic HTML 6 months ago
content Added figcaption into 'Vulnerabilidad MDS en procesadores Intel' 6 months ago
plugins fix another_read_more_link no procesa los enlaces 8 months ago
scripts Fix Bash Brace Expansion 9 months ago
.gitignore update .gitignore 9 months ago
.gitlab-ci.yml first commit 9 months ago
LICENSE first commit 9 months ago
Makefile.example Fix Bash Brace Expansion 9 months ago
README.md fix lexical into README 6 months ago
new.sh fix lexica name: 'renamed: requeriments.txt -> requirements.txt' 6 months ago
package.json fix string does not match the pattern 4 months ago
pelicanconf.py added of robots.txt 9 months ago
publishconf.py first commit 9 months ago
requirements.txt added markdown-extra 6 months ago

README.md

Descripción

Este repositorio contiene el blog Conocimientos Libres, ubicado en https://conocimientoslibres.tuxfamily.org/.

Generar el blog

Instalación de dependencias

Puedes generar este blog en tu ordenador. Para ello necesitas tener los siguientes programas instalados:

  • Pelican. Es el generador de páginas
  • Python. Es el lenguaje de programación en el que está escrito Pelican.
  • Markdown. Markdown es el lenguaje de marcado ligero en el que están escritos los artículos y páginas.
  • Babel. Para la traducción del tema de la página.
  • BeautifulSoup4. Requerido por el complemento tipue-search.
  • uglifycss. Compresor de código CSS.
  • uglifyjs. Compresor de código JavaScript.
  • nodejs. Node.js® es un entorno de ejecución para JavaScript construido con el motor de JavaScript V8 de Chrome. Se utiliza para ejecutar uglifycss y uglifyjs.
  • npm. Gestor de paquetes de nodejs. Utilizado para instalar uglifycss y uglifyjs.

Para instalar los compresores de CSS y JavaScript primero instala nodejs y npm. Finalmente, ejecuta:

sudo npm install -g uglifycss uglify-es

Opcionalmente podemos instalar virtualenv con:

Distros basadas en Debian:

sudo apt install virtualenv

Distros basadas en Arch:

sudo pacman -S python-virtualenv

No es realmente necesario, pero es muy recomendable instalar GNU Make. En la siguiente sección se asume que tienes Make instalado.

  • En sistemas operativos basados en Arch se puede instalar con la instrucción:

    sudo pacman -S make
    
  • En sistemas operativos basados en Debian se puede instalar con la instrucción:

    sudo apt install make
    

Generar el contenido

Tras instalar las dependencias, puedes generar el blog ejecutando las siguientes órdenes:

  1. git clone https://notabug.org/heckyel/cl
  2. cd cl
  3. virtualenv -p python3 venv
  4. source venv/bin/activate
  5. pip install -U -r requirements.txt
  6. (cd cl-theme && make compile)
  7. cp -v Makefile.example Makefile
  8. make html

Tras completar estos pasos, el blog estará disponible en la carpeta output. Abre el archivo output/index.html con tu navegador favorito para ver el blog.

Colaboración

Escribir un artículo

Si quieres publicar un artículo en Conocimientos Libres, puedes realizar un pull request o mandarme el artículo por correo electrónico. Si el artículo es interesante, puede que lo acepte.

Si no sabes cómo funciona Pelican, puedes mandarme el artículo por correo sin preocuparte por el formato. Si quieres hacer un pull request, debes utilizar los metadatos de Pelican y escribir el artículo en Markdown. A continuación se muestra un ejemplo.

Author: Nombre de la autora
Category: Python
Date: 2017-12-03 10:20
Slug: titulo-del-artículo
Tags: pelican, publishing
Title: Título del artículo

Este es el contenido del artículo. Puedo usar la sintaxis de
[Markdown](https://es.wikipedia.org/wiki/Markdown)

El contenido de Conocimientos Libres se encuentra bajo dominio público (CC0 1.0 Universal). Si quieres publicar tu artículo usando otra licencia, indícalo.

Cuando escribas un artículo intenta utilizar etiquetas y categorías que ya existan, no utilices el nombre de la categoría del artículo también como etiqueta.

Si necesitas alguna funcionalidad especial (como un vídeo, una imagen de cabecera…) intenta utilizar complementos o funcionalidades que ya estén presentes en el blog. Consulta ejemplos de artículos que hacen uso de estos.

Hacer una traducción

Copia el archivo que quieres traducir y añade el código del idioma (por ejemplo .de para el alemán) antes de la extensión .md. Traduce el contenido del artículo o la página. Cuando termines, cambia los metadatos que hagan falta (título, autor, etc.) y añade el metadato Lang con el valor del código del idioma de la traducción. A continuación se muestra un ejemplo.

Author: nameauthor
Date: 2017-02-28 01:11
Lang: de
Slug: reflexión-sobre-los-medios-de-comunicación
Tags: Bücher, Fernsehen, freie Software, Internet, Kommentar, Medien
Title: Kommentar zu der Medien

Heutzutage gibt es viele Medien, die vorher nicht existierten. Das [...]

Mejora de la página

También puedes mejorar la apariencia y funcionalidad de la página. Simplemente crea un pull request. Antes de hacerlo, te recomendamos conocer cómo se organiza la estructura de directorios. También es recomendable comprobar si el código HTML es válido ejecutando make validate en la carpeta del proyecto (debes tener GNU Make y html5validator instalados). También es necesario tener instalado Java para que funcione html5validator:

sudo pacman -S jdk8-openjdk jre8-openjdk-headless

Comprobar versión de Java:

$ java -version
openjdk version "1.8.0_121"
OpenJDK Runtime Environment (IcedTea 3.3.0) (Hyperbola GNU/Linux-libre build 8.u121_3.3.0-1.hyperbola4-x86_64)
OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)

Información de licencias

El contenido de este sitio web se encuentra bajo dominio público, excepto donde se especifique lo contrario.

Todo el código es software libre; se encuentra bajo la licencia AGPLv3, salvo las siguientes excepciones:

  • Licencias de JavaScript. La información sobre las licencias de JavaScript se encuentra en el archivo content/pages/libreJS.md en forma de tabla preparada para ser leída por LibreJS.
  • Todo lo que hay en el directorio cl-theme se encuentra bajo la licencia GPLv3.
  • Los siguientes complementos para Pelican (se encuentran en el directorio plugins):

Preguntas frecuentes

¿Dónde esta alojado el repositorio con el código fuente?

Está alojado en https://libregit.org/heckyel/cl, y hay copias en otros lugares:

¿Y el sistema de comentarios?

Por ahora no existe el sistema de comentarios.

¿Y los vídeos?

Los vídeos que contiene Conocimientos Libres no se encuentran en este repositorio por varias razones:

  • No es nada útil añadir los vídeos al repositorio, pues Git no está hecho para controlar los cambios en los vídeos. Además, normalmente no se suelen modificar los vídeos ya creados.
  • Solo harían que este repositorio fuera más pesado aún.
  • Algunos vídeos no se encuentran alojados en el servidor de Conocimientos Libres.

La siguiente tabla contiene todos los vídeos que se encuentran en Conocimientos Libres:

Título Fuente
Citizenfour https://archive.org/download/libreweb/citizenfour-spanish.webm
¿Cómo generar Freak Spot? https://archive.org/download/libreweb/freakspot.webm
Curso de Hyperbola
Locutus de GNU https://archive.org/download/libreweb/locutus.webm
Montar Android en Hyperbola
Prompt avanzado https://archive.org/download/libreweb/0001-15599.webm
RMS en dominio digital https://archive.org/download/libreweb/StallmanenDominioDigital.webm
Sin parar https://archive.org/download/libreweb/sin_parar.webm