Filtra per genere
Disfruta conmigo de Linux y del Open Source. Aquí encontrarás como sacarle el máximo partido a tu entorno de escritorio Linux, hasta como montar un servidor web, un WordPress, un proxy inverso, una base de datos o cualquier otro servicio que puedas imaginar. Y todo ello, lo puedes montar en una Raspberry Pi, en un VPS, en tu propio ordenador o en cualquier servidor. Vamos, cualquier cosa que quieras hacer con Linux, seguro, seguro, que la encontrarás aquí.
- 834 - ATA 833 Workflows de IA, automatiza tu día con Ollama y Docker
Hoy en el episodio 833 te traigo algo que llevaba tiempo queriendo hacer: montar workflows de IA que funcionen de verdad en tu Linux, sin depender de servicios externos, sin GPUs, y sobre todo, sin malgastar tokens en tonterías.
Hasta ahora hemos hablado de piezas sueltas: Ollama, skills, MCPs, agentes... pero todo eso suelto no te sirve para nada. La gracia está en combinarlo. En este episodio te enseño 4 workflows completos implementados en Rust que he puesto a funcionar en mi propio equipo, y que puedes adaptar al tuyo sin necesidad de ser un experto.
La base del sistema es sencilla: Llama 3.2 3B para generación de texto (~2 GB, funciona en CPU), bge-m3 para embeddings multilingües (~1.2 GB), y binarios Rust compilados estáticamente que no necesitan ninguna dependencia del sistema. Con 8 GB de RAM tienes de sobra.
Workflow 1 — noticias-bot: un bot que monitoriza feeds RSS, los filtra por palabras clave, los resume con Llama 3.2 local, y los publica automáticamente en Telegram. Funciona como servicio persistente 24/7, no como un script que ejecutas a mano. Cada feed tiene su propio intervalo de actualización y sus propias keywords. Lleva deduplicación con SHA256 y SQLite para no repetir artículos.
Workflow 2 — tareas-bot: un gestor de tareas GTD vía Telegram. Le escribes un mensaje al bot, y la IA lo clasifica al instante: decide si es una tarea, le asigna prioridad y categoría, lo guarda en SQLite, y te confirma en el chat. Sin abrir ninguna app de tareas, sin salir de Telegram.
Workflow 3 — monitor-bot: un monitor de sistema inteligente con 5 tipos de chequeo: disco, servicios, memoria, logs del sistema y contenedores Docker. Y aquí viene lo interesante: solo usa la IA cuando realmente hace falta, para analizar logs. Los checks normales son deterministas, sin LLM. Así no malgastas recursos ni tokens. Incluye rate limiting y remediación automática.
Workflow 4 — investigador RAG: un asistente de investigación con RAG local. Le haces una pregunta, genera consultas de búsqueda, las lanza contra SearXNG, descarga las páginas en paralelo con tokio, las procesa con embeddings de bge-m3, y te da una respuesta con sus fuentes. Todo en un solo binario Rust, sin Python, sin dependencias del sistema.
Todo esto desplegado con systemd o Docker, como servicios que arrancan solos y se mantienen funcionando. Y lo mejor: con modelos que caben en cualquier máquina con 8 GB de RAM y sin GPU.
Capítulos del episodio:
0:00 — Introducción: del caos de herramientas a los workflows IA
2:30 — ¿Qué es un workflow de IA? Skills, MCPs y prompts combinados
5:00 — Arquitectura: Rust, Ollama y Docker como base del sistema
8:00 — Ejemplo 1: noticias-bot — RSS filtrado a Telegram
11:30 — Demo del noticias-bot: publicación automática de noticias
14:30 — Ejemplo 2: tareas-bot — clasificación GTD vía Telegram
17:30 — Demo del tareas-bot: "hola" vs "comprar ciruelas"
20:00 — Ejemplo 3: monitor-bot — alertas de sistema con IA
22:30 — Ejemplo 4: investigación asistida con RAG local
26:00 — Demo del investigador: consulta sobre Podman 6
29:00 — Ventajas, conclusiones y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 21 Sep 2026 - 29min - 833 - ATA 832 Watchbit, el monitor de uptime ultraligero hecho en Rust
¿Cansado de que tu monitor de uptime consuma más recursos que los propios servicios que monitoriza? Llevaba años usando Uptime Kuma, una herramienta fantástica, potente y muy fácil de configurar. Pero cuando miras el docker stats y ves 150 MB de RAM, 900 MB de disco y un 2% de CPU para monitorizar solo seis páginas, algo no cuadra. Sobre todo cuando lo único que quieres es que te llegue una notificación si algo falla, no tener un mini-Netflix corriendo en tu servidor.
Por eso creé Watchbit: un monitor de uptime escrito en Rust con frontend en React, base de datos SQLite embebida y autenticación OIDC con Pocket ID. El resultado: 7 MB de RAM, 20 MB de disco y 0,2% de CPU. Sí, has leído bien. Estamos hablando de reducir el consumo de memoria a una vigésima parte, el de disco a una cuadragésima parte y el de CPU a una décima parte. Y todo esto sin perder funcionalidad: monitores HTTP, TCP, Ping, heartbeats, notificadores vía Telegram, Matrix, NTFY, Gotify, Discord, Email, y páginas de estado públicas.
En este episodio te cuento cómo migré de Uptime Kuma a Watchbit, te enseño el dashboard por tarjetas, los heartbeats, los monitores, los notificadores y las 7 razones por las que no pienso volver atrás. También te explico el stack técnico: Rust con Axum y Tokio en el backend, React con TypeScript en el frontend, SQLite como base de datos embebida (adiós a PostgreSQL y MariaDB), y OIDC con Pocket ID para olvidarte de gestionar usuarios y contraseñas. Todo en un solo binario, sin dependencias externas, con una imagen Docker que apenas ocupa 20 MB.
Además te muestro cómo configurar los monitores con intervalos personalizados, las plantillas de notificación para eventos de down, up, latencia y expiración de certificados, y el sistema de backup integrado que te permite exportar e importar toda la configuración en un solo clic. También te cuento el proceso de optimización que seguí: inicialmente hacía un bucle que recorría todos los monitores, pero después los separé en tareas independientes con Tokio para maximizar la eficiencia.
Si tienes un VPS ajustado, una Raspberry Pi Zero, o simplemente quieres ser racional con los recursos de tu servidor, este episodio te interesa. Porque al final, de esto va el self-hosting: de tener herramientas que hagan su trabajo sin que el servidor se resienta. Como siempre, te dejo el docker-compose, las variables de entorno y las instrucciones en las notas del episodio para que puedas probarlo tú mismo en cinco minutos.
Capítulos:
0:00 - Introducción: la necesidad de monitorizar páginas web
1:54 - Uptime Kuma: características y panel de control
4:45 - Ventajas e inconvenientes de Uptime Kuma
5:36 - El problema del consumo: CPU, RAM y disco
7:05 - Watchbit: OIDC, dashboard y diseño por tarjetas
8:43 - Comparativa de consumo: Watchbit vs Uptime Kuma
10:53 - Heartbeats y monitores en Watchbit
12:37 - Configuración de monitores, notificadores y plantillas
14:31 - Ajustes, backup y stack técnico (Rust + React + SQLite)
17:26 - 7 razones para migrar e instalaciónMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 17 Sep 2026 - 20min - 832 - ATA 831 Esto es lo que le faltaba a tu IA para ser útil de verdad
Hoy te traigo un episodio que llevaba tiempo queriendo grabar. En el episodio 829 te hablé sobre skills, pero me quedé con la sensación de haberme enrollado sin mostrar nada concreto. Así que le he dado la vuelta a la tortilla y en esta ocasión te traigo siete MCPs que he seleccionado uno a uno para que veas de qué va esto del Model Context Protocol y, sobre todo, para que compruebes cómo transforman lo que puede hacer tu inteligencia artificial.
Porque hay que decirlo claro: la IA es tonta. Literalmente. No sabe qué hora es, no sabe leer un archivo, no sabe si tienes issues abiertos en GitHub, no sabe cómo te llamas. Cada vez que empiezas una conversación con cualquier modelo de lenguaje, empiezas de cero. Y aquí es donde entran los MCPs, que no son ni más ni menos que herramientas: manos, ojos y oídos para que la IA pueda hacer cosas útiles de verdad.
El Model Context Protocol es un estándar abierto creado por Anthropic que funciona como un *USB-C para la IA*. Un conector universal que permite que cualquier aplicación de IA se conecte con cualquier fuente de datos o herramienta externa. Y lo mejor es que no es propietario, al contrario que los plugins de ChatGPT. Cualquiera puede crear un MCP, y de hecho te cuento cómo hacerlo con Python o Rust.
En este episodio repaso siete MCPs que uso en mi día a día. Empiezo por el Filesystem, que permite a la IA leer, escribir, buscar y editar archivos en tu sistema, con control de acceso para que no haga tonterías. Sigo con el SQLite, ideal para consultar bases de datos locales de agenda, finanzas o cualquier aplicación que uses. Después llega el GitHub, el servidor oficial de GitHub escrito en Go, que te permite gestionar issues, pull requests, repositorios y mucho más sin salir del chat.
También te hablo del Web Fetch, que permite a la IA leer páginas web y convertirlas a Markdown ahorrando una barbaridad de tokens. Y del Time, que es una tontería pero imprescindible: la IA puede saber la hora en cualquier huso horario del mundo. Luego está el Memory, que construye un grafo de conocimiento persistente para que la IA recuerde quién eres, qué prefieres y qué proyectos tienes entre manos, incluso entre sesiones. Y por último, el Sequential Thinking, una herramienta de razonamiento paso a paso que obliga a la IA a pensar de forma estructurada cuando se enfrenta a problemas complejos.
También hablo de cómo configurar estos MCPs en OpenCode, Claude Desktop y VS Code, y cuánto consumen de RAM y tokens. Porque no es lo mismo activar veinte servidores que tener solo los que necesitas. Y para rematar, comparo MCPs con skills: las skills le dicen a la IA cómo comportarse, los MCPs le dan capacidades para actuar.
Y si te pica la curiosidad por crear tu propio MCP, también te cuento las diferencias entre usar el SDK de Python (súper rápido de prototipar) y el de Rust (más rendimiento, menos consumo de RAM).
Capítulos del episodio:
0:00 - Introducción: la IA necesita herramientas para ser útil
2:30 - ¿Qué es MCP? Arquitectura host-cliente-servidor y JSON RPC 2.0
5:30 - Cinco razones para adoptar MCPs
8:00 - MCP Filesystem: leer, buscar y crear archivos
11:00 - MCP SQLite: consultar bases de datos y el no-determinismo
14:00 - MCP GitHub: issues, pull requests y repositorios
17:00 - MCP Web Fetch: búsquedas en internet con ahorro de tokens
19:30 - MCP Time: la hora en cualquier huso horario
21:30 - MCP Memory: grafo de conocimiento persistente
23:30 - MCP Sequential Thinking: razonamiento paso a paso
25:30 - Configuración en OpenCode, consumo de tokens y RAM
27:30 - Crear tu propio MCP: Python SDK vs Rust
28:30 - Cierre y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 14 Sep 2026 - 35min - 831 - ATA 830 Popuplatrs, publica en redes desde tu propio RSS
Este es el primer episodio de una serie de cuatro que voy a dedicar a herramientas que he implementado y que uso en mi día a día. Las cuatro comparten stack: Rust en el backend y React con TypeScript en el frontend. Y la primera es, sin duda, una de las que más me facilitan la vida: Popuplatrs.
¿Te suena el ritual de publicar un artículo y tener que abrir Telegram, luego Mastodon, luego X, luego LinkedIn, luego Bluesky, y encima personalizar el texto para cada plataforma? Pues eso es exactamente lo que Popuplatrs elimina de tu día a día. Le das uno o varios feeds RSS, Atom o YouTube, y él se encarga de leer las novedades y publicarlas automáticamente en las redes que le configures. Con plantillas personalizables, programación de horarios, reintentos automáticos y un panel web desde el que controlarlo todo.
En este episodio te cuento por qué me decidí a crear esta herramienta, qué alternativas existen (Buffer, Hootsuite, IFTTT, Zapier) y por qué ninguna me convencía al ser SaaS o no estar pensadas para funcionar a partir de feeds. También te explico la arquitectura técnica: Rust con Axum, SQLite en modo WAL, autenticación OIDC con Pocket ID, y un sistema de plantillas con MiniJinja que te permite personalizar el mensaje para cada red social.
Popuplatrs soporta hasta nueve publicadores diferentes: Telegram, X (Twitter), Mastodon, Bluesky, LinkedIn, Threads, Discord, Matrix y OpenObserve para logging. Cada uno con su propia configuración de autenticación y límites de caracteres. Por ejemplo, en Bluesky publica respetando el límite de 300 caracteres, en X primero lanza el título y luego un reply con el enlace para aprovechar mejor el espacio, y en Discord usa webhooks que se configuran en segundos.
El sistema de plantillas es una de las partes que más me gustan. Usa MiniJinja, un motor compatible con Jinja2, y te permite definir plantillas distintas para cada plataforma. Puedes truncar el texto a un número de caracteres, limitar las palabras, eliminar HTML, y combinar el título con la descripción como más te convenga. Todo desde el panel web, sin tocar código.
Y por supuesto, te cuento cómo tenerlo corriendo en tu servidor en cinco minutos con Docker. Porque si algo me gusta es que las herramientas sean fáciles de desplegar.
Capítulos:
0:00 - Introducción: el problema de publicar en redes sociales
1:45 - Alternativas existentes y sus limitaciones
3:00 - Qué es Popuplatrs: origen, nombre y características principales
4:15 - Arquitectura técnica: Rust, Axum, SQLite y Pocket ID
5:45 - Fuentes soportadas: RSS, Atom y YouTube
7:00 - Publicadores: hasta nueve plataformas sociales
8:30 - Panel web: dashboard, logs y republicación de errores
10:30 - Programación, reintentos y control anti-spam
12:00 - Motor de plantillas y personalización por plataforma
13:30 - Despliegue con Docker Compose, Pocket ID y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 10 Sep 2026 - 18min - 830 - ATA 829 Skills imprescindibles para tu agente IA
Hoy te traigo un episodio que llevaba tiempo queriendo grabar. Y es que muchos estáis usando agentes de IA, pero los tenéis desnudos. Sin skills. Y un agente sin skills es como un Linux sin comandos: técnicamente funciona, tienes el kernel, tienes la shell, pero sin ls, sin grep, sin systemctl, no puedes hacer nada útil. El mejor modelo del mundo sin herramientas solamente es texto bonito.
En este episodio te cuento qué son exactamente las skills, por qué transforman un modelo de lenguaje en un asistente que hace cosas, y cuáles son las tres skills imprescindibles que todo agente debería tener. Una skill no es ni más ni menos que un prompt. Un conjunto de instrucciones que le dice a tu agente cómo tiene que hacer algo. No es un programa ni un script, es una receta de comportamiento. Y no necesitas ser programador para crearlas.
Te hablo de skills del sistema: leer archivos, ejecutar comandos, navegar por tu equipo. Skills de búsqueda: búsqueda web con SearXNG (que tengo montado en un Slimbook One y devuelve resultados en JSON que es una maravilla), búsqueda local con RipGrep que es increíblemente rápida, y búsqueda semántica con SQLite. Y skills de automatización: tareas programadas, webhooks que responden a eventos como un git push, o scripts orquestados que pueden hacer casi cualquier cosa.
Pero no me quedo ahí. Te doy las tres reglas de oro para crear tus propias skills. Porque los mejores skills son los que escribes para ti mismo. Primera regla: no digas "revisa el sistema", sino "ejecuta systemctl status --failed". Cuanto más específico, mejor. Segunda: define los límites. Qué puede hacer y qué no. Lo que no puede hacer es casi tan importante como lo que puede hacer. Tercera: ponle ejemplos. Cómo tiene que quedar el resultado, qué formato tiene que usar. Con estas tres cosas todo rueda mucho mejor.
También te cuento cómo organizar tus skills. Cada agente guarda los skills donde le da la gana: OpenCode en .config/opencode/skills, Hermes en .hermes/skills. Yo cada vez los guardo más en .agents/skills porque la mayoría de los agentes ya saben encontrarlos ahí. Y te hablo de los hubs de skills, donde puedes instalar skills creados por la comunidad con un solo comando.
Si usas OpenCode, Hermes Agent u Open Web y sientes que tu agente responde preguntas pero no hace cosas, este episodio te va a cambiar el día a día. Vamos directos al turrón.
Capítulos del episodio:
0:00 - Introducción: tu agente está desnudo
1:45 - ¿Qué es una skill? De un prompt a un asistente que hace cosas
4:15 - Skills del sistema: leer archivos, ejecutar comandos, navegar
7:30 - Skills de búsqueda: web con SearXNG, local con RipGrep, semántica con SQLite
11:00 - Skills de automatización: tareas programadas, webhooks, scripts orquestados
13:45 - Las 3 reglas de oro para crear tus propias skills
18:30 - El ecosistema de skills: dónde guardarlas y cómo organizarlas
21:00 - Ejemplo práctico: la skill del tiempo meteorológico
23:15 - Conclusión: un agente sin skills es Linux sin comandos
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 07 Sep 2026 - 20min - 829 - ATA 828 De Docker a tu Cerebro Digital, el roadmap de IA para Linuxeros
Este episodio 828 es la carta de presentación de la Temporada 9 de atareao con Linux. Treinta y cuatro episodios ya guionizados, siete etapas, y un objetivo claro: construir tu cerebro digital sobre Linux con herramientas locales, sin depender de nubes ni suscripciones.
Pero antes de mirar adelante, toca hacer balance. La T08 empezó prometiendo Docker, selfhosting y Android, y sí, hablé de todo eso. Pero en abril de 2025 la IA local irrumpió con fuerza y la temporada viró hacia Ollama, modelos locales, RAG, MCP. Fue un giro desordenado, lo reconozco. Pero también fue el germen de todo lo que viene ahora.
De eso va esta T09: de poner orden al caos. Siete etapas, de menos a más, para que sigas el hilo hagas el nivel que hagas.
Etapa 1 — Recursos básicos: los cimientos de tu laboratorio de IA. Skills para tu agente, herramientas de publicación, el botiquín del explorador.
Etapa 2 — Skills y MCPs: el pegamento. El Model Context Protocol ha madurado hasta ser un estándar abierto — lo soportan Claude, ChatGPT, VS Code, Cursor. Ya no es un experimento, es el USB-C de la IA. Y de paso, herramientas del ecosistema atareao como watchbeat (monitor de uptime en Rust) y alloy (dashboard Docker con OIDC).
Etapa 3 — GraphRAG, el gran hito: de RAG vectorial a grafos de conocimiento. Mientras el RAG clásico devuelve fragmentos sueltos y tú unes los puntos, GraphRAG construye un grafo con entidades y relaciones. Preguntas como "qué contenedores están detrás de Traefik" pasan a ser una consulta directa a tu mapa de conocimiento. Usaremos LightRAG, que con 39.000 estrellas ya superó al Microsoft GraphRAG original. Esto ocupa tres episodios.
Etapa 4 — Multimedia: Whisper para speech-to-text, TTS local, ffmpeg, visión artificial, y el pipeline de YouTube a conocimiento con yt-dlp. Rematamos con RAG multimodal.
Etapa 5 — Orquestación: systemd timers, asyncio, just, y CrewAI para montar equipos de agentes.
Etapa 6 — Proyecto final: dos episodios para construir El Asistente que te Conoce y ponerlo en producción con Quadlets.
Etapa 7 — El futuro: mantenimiento de tu cerebro digital y hacia dónde va todo esto.
Entre medias, herramientas Linux: shuul, sqlite-utils, yq + jq, Rust en el kernel, Wayland vs X11, la guerra de los filesystems.
No necesitas una GPU de 3000 euros ni un doctorado. Con 16 GB de RAM y un CPU decente ejecutas modelos de 7B a 14B. Esto es IA local, en tu máquina, con tus datos.
Capítulos del episodio:
00:00 — Introducción y bienvenida a la Temporada 9
01:47 — Balance T08: de Docker y Selfhosting al boom de la IA
04:37 — El momento adecuado para cada tecnología
06:46 — El gran objetivo: tu cerebro digital
08:44 — Roadmap T09: 30 episodios ya guionizados
11:28 — Skills y MCPs imprescindibles
12:43 — GraphRAG: de RAG a grafos de conocimiento
14:01 — RAG vs GraphRAG: el mapa de tu conocimiento
17:28 — Herramientas del ecosistema: alloy, populater, watchbeat
20:08 — ¿Para quién es esto? De veteranos a escépticos
22:08 — No es hype: es un cambio de paradigma
24:30 — El momento perfecto para el linuxeroToda la info y el roadmap completo en atareao.es/828.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 03 Sep 2026 - 31min - 828 - ATA 827 No Necesitas una GPU de 3000€ para IA Local
Cerramos la octava temporada con un episodio que me apetecía grabar desde hace meses. Igual te ha pasado como a mí: empecé hablando de un laboratorio de IA para cualquiera, y terminé recomendando GPUs de 3000 euros. Me fui creciendo, pero no hace falta. Te cuento cómo montar un laboratorio de IA local con el equipo que ya tienes. Da igual si tienes 8 GB de RAM o 16, CPU modesta o sin GPU. La clave está en elegir los modelos adecuados. Muchas veces nos perdemos buscando el modelo más grande, cuando con uno pequeño y bien cuantizado tenemos de sobra para el 80% de las tareas.
Te hablo de Ollama, el gestor de modelos estándar para ejecutar modelos locales. Más de 180.000 estrellas en GitHub, API compatible con OpenAI, modelos para todos los presupuestos: desde Phi 3.5 con 3.8B parámetros hasta Qwen 1.5B que ocupa 1 GB. También la cuantización: reduces la precisión numérica de los pesos para que ocupen menos y vayan más rápido. El punto dulce es Q4_K_M, que reduce el tamaño a menos de un tercio. Para 8 GB de RAM, Q3_K_S puede ser tu salvación.
También te hablo de Open WebUI, la interfaz que le da mil vueltas a ChatGPT. No solo chateas: tiene RAG local, Whisper integrado para transcribir voz (75 MB en CPU), TTS con Kokoro-82M para que el modelo te hable en tiempo real, búsqueda web, plugins y memoria persistente. Todo en un contenedor Docker que levantas con un solo comando.
Y de SQLite Vec, extensión de SQLite sponsorizada por Mozilla para búsqueda semántica sin servidores vectoriales. Ni ChromaDB, ni Qdrant, ni Milvus. C puro que funciona hasta en Raspberry Pi. Creas tablas virtuales para vectores de 768 dimensiones, generas embeddings con nomic-embed-text, y buscas por similitud coseno en milisegundos. RAG local sin complicaciones.
Y te explico cómo organizarlo todo con Docker o Podman. Un docker-compose.yml que levanta Ollama y Open WebUI en segundos, con healthchecks, redes separadas y volúmenes persistentes. También a limitar recursos con --memory y --cpus. He preparado scripts: inicialización que comprueba requisitos, crea directorios y descarga modelos; otro para descargar por niveles según tu hardware (nivel 1 para 8 GB, nivel 2 para 16 GB, nivel 3 para 32 GB); y uno de respaldo.
Y la estrategia híbrida local + nube, que es lo que realmente tiene sentido. El enfoque Minions del Stanford Hazy Research Lab: el modelo local hace el trabajo pesado, y solo consulta al grande en la nube para tareas complejas. El 90% de las consultas se resuelven localmente. Ahorras dinero, mantienes privacidad de tus datos, y cuando necesitas potencia, la tienes.
Con 16 GB de RAM y un SSD te sobra para el 80% de las tareas: traducciones, resúmenes, código, asistentes, RAG, transcripción de audio, texto a voz... Todo en tu máquina, sin enviar datos a servidores, sin suscripciones, sin depender de internet. Con 8 GB también puedes, con modelos más pequeños. Cerramos temporada, la novena arranca en el episodio 828.
Capítulos del episodio:
0:00 - Introducción — cierre de temporada 8 y replanteamiento
2:30 - Hardware mínimo: 8-16 GB RAM + SSD obligatorio
5:00 - Software base: instalar Ollama en tu distribución
7:30 - Contenedores: Docker vs Podman para el laboratorio
10:00 - Modelos pequeños: Phi 3.5, Qwen 1.5B y cuantización
13:00 - Herramientas complementarias: SQLite Vec, Whisper, TTS
16:00 - Organización del laboratorio: script y estructura de directorios
19:00 - Demo: probando Ollama en local con modelos ligeros
22:00 - Combinación local + nube: lo mejor de ambos mundos
24:30 - Cierre, avance temporada 9 y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 31 Aug 2026 - 22min - 827 - ATA 826 Nushell, la shell que entiende tus datos y tu IA
Si llevas años usando Bash, Zsh o Fish y piensas que los pipes de Unix son lo más parecido a la perfección, este episodio te va a hacer tambalear los cimientos. Porque existe un shell que no pasa texto entre comandos: pasa estructuras de datos. Tablas, listas, registros, fechas, tamaños de archivo con tipo real. Y encima habla con Ollama sin que tengas que escribir ni una línea de Python.
Ese shell es Nushell. Está escrito en Rust, tiene más de 40.000 estrellas en GitHub, y su filosofía es sencilla: los pipes deberían transportar datos con tipo, no texto que luego parseas con awk, sed o jq.
En este episodio te cuento mi experiencia pasando de Fish a Nushell con ejemplos reales. Cuando escribes ls no obtienes texto: obtienes una tabla con columnas tipadas. Puedes hacer ls | where size > 1mb | sort-by size sin recurrir a awk ni números mágicos. El shell entiende qué es un filesize, qué es una fecha, qué es un número.
Y luego está open, que entiende el formato por la extensión: JSON, YAML, TOML, CSV, SQLite... todo se convierte en datos estructurados. Abres un SQLite y ejecutas consultas con query db. Y todo combinable: http get a una API, filtrar con where y guardar con save — en un solo pipeline, sin archivos temporales.
La guinda es la integración con IA. Como Nushell entiende JSON y Ollama habla JSON, se entienden a la perfección. Te enseño un pipeline que lista procesos, filtra los que consumen más de 100MB de RAM, se los manda a un modelo local, y mata el que más memoria usa. Todo en una línea. También te hablo de ai.nu, un módulo que envuelve Ollama, OpenAI y DeepSeek, con function calling desde el shell.
También hago una comparativa: Bash, Zsh, Fish y Nushell cara a cara. Bash funciona en cualquier sitio pero el manejo de datos es arcaico. Zsh es Bash con esteroides pero los pipes siguen siendo texto. Fish es moderno pero no entiende de tipos. Nu es el único con estructuras de datos de verdad. PowerShell fue el primero en pasar objetos, pero Nu es lo que PowerShell debería haber sido.
Capítulos del episodio:
0:00 — Introducción: de Bash a Fish, la evolución de las shells
2:30 — El problema del texto plano: por qué Nushell es diferente
5:00 — La trifecta: ls, where y select, SQL en tu terminal
7:30 — Tipos reales: la shell entiende fechas, tamaños y números
10:00 — Open: abrir JSON, CSV, YAML y SQLite sin herramientas externas
13:00 — Procesamiento avanzado: $in, save, append y par-each
15:30 — HTTP GET: APIs de GitHub y meteorología desde la shell
18:00 — Comparativa de shells: Bash vs ZSH vs Fish vs Nushell
21:00 — Nushell e IA: integración nativa con Ollama sin Python
24:00 — Instalación, casos de uso y conclusiones finalesMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 27 Aug 2026 - 31min - 826 - ATA 825 Qué hay en el motor de un agente de IA
Hoy te voy a contar una historia que empieza con una idea brillante y termina con una buena dosis de frustración. Resulta que se me ocurrió construir mi propio agente de inteligencia artificial. Lo llamé Anacleto, está escrito en Rust, y la idea era tener un coordinador de agentes que delegara tareas según lo que le pidieras. El tiempo, el tiempo, y un puñado de bugs después, me he encontrado con que estoy aprendiendo mucho más de lo que pasa entre bambalinas que de lo que el agente realmente llega a hacer.
Y es que cuando le das una instrucción a un agente de IA —ya sea OpenCode, Claude, Hermes o el que tú quieras— no hay magia. Lo que hay es una coreografía compleja de mensajes que van y vienen, eventos que se disparan, herramientas que se invocan y un modelo de lenguaje que procesa todo después de que el agente lo haya pretratado. En este episodio abro la caja negra y te cuento exactamente qué hay dentro.
Te explico el viaje completo de un mensaje: desde que escribes el prompt hasta que obtienes la respuesta. Cómo funciona el streaming, cómo el modelo "piensa en voz alta" con los reasoning events, cómo decide qué herramientas usar con las tool calls, y cómo todo se monta en una batidora que reconstruye la información antes de enviarla al modelo. Y sí, el modelo no razona, simplemente predice. Pero la gracia está en que ahora no solo habla, también actúa. El modelo recibe una lista de herramientas disponibles y decide por sí mismo cuál usar según el contexto. No es programación tradicional de "si pasa A, usa la herramienta A". Es el modelo el que, basándose en su entrenamiento, predice qué herramienta le dará la mejor respuesta.
Y luego está el problema. El bucle. El modelo devuelve tool calls, el agente ejecuta las herramientas, vuelve a llamar al modelo, y así una y otra vez hasta que se alcanza el máximo de pasos y todo se para. No sé si es un problema de cómo he definido las llamadas, del motor o de las skills. Llevo días toqueteando, probando, cambiando cosas, y todavía no tengo claro dónde está el fallo. Lo que sí tengo claro es que unas skills bien preparadas dan mejores resultados que un modelo más potente. Y esa lección, por sí sola, ya ha valido la pena. Porque al final, la calidad de las instrucciones que le das al agente importa más que el modelo que uses por debajo.
Te cuento también por qué elegí Rust y Ratatui para la interfaz, en lugar de lo típico en Python o TypeScript. Spoiler: me lié más con el lenguaje que con el objetivo final, como suele pasar. Y te presento a los subagentes de Anacleto: uno para el tiempo, otro para noticias, otro para chistes, otro para investigar... cada uno con su propia personalidad y herramientas.
Capítulos del episodio:
Capítulos del episodio:
0:00 - Introducción: abriendo la caja negra de los agentes de IA
2:19 - El viaje de un mensaje: del prompt al modelo de lenguaje
3:49 - Arquitectura de agentes: coordinador, subagentes y la TUI en Rust
6:11 - El motor como director de orquesta: roles system, user, assistant y tool
8:27 - System prompt y optimización: delegación en subagentes especializados
11:13 - Streaming y server-sent events: cómo se construye la respuesta token a token
14:20 - Razonamiento y tool calls: el modelo predice, no piensa, pero actúa
17:59 - El bucle de herramientas: el problema de la delegación infinita en Anacleto
20:56 - Skills, subagentes desechables y sistema de permisos
25:16 - Demostración práctica de Anacleto: tiempo, chistes y noticias
29:22 - Conclusiones, redes y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 24 Aug 2026 - 31min - 825 - ATA 824 Busca como un rayo y alimenta a tu IA
¿Sigues usando find y grep como en los 90? Hace unas semanas me puse a buscar un archivo en un repositorio con git, lancé el find de toda la vida, y cuando volví de tomarme un café —literalmente— todavía seguía buscando. El problema es que find se mete en el .git, en los binarios, en sitios donde no debería. Y grep, pues lo mismo, sobre todo si trabajas con Unicode o con repositorios grandes. Así que llevo un tiempo usando fd y ripgrep, dos herramientas escritas en Rust que son órdenes de magnitud más rápidas. Pero lo mejor no es solo la velocidad: es que puedes combinarlas para crear pipelines que alimenten directamente a tu IA local.
fd (44.1k estrellas en GitHub) es un reemplazo directo de find. En los benchmarks oficiales, buscar archivos con fd -u tarda 0.8 segundos donde find necesita 11 segundos con -iname y casi 20 segundos con -iregex. 23 veces más rápido. Y no solo es velocidad: fd respeta .gitignore por defecto, soporta expresiones regulares directamente, y tiene placeholders como {}, {.}, {/} y {//} que te permiten ejecutar comandos sobre cada resultado con -x o pasarlos en lote con -X.
ripgrep (67.4k estrellas) es lo mismo pero para buscar texto. En el kernel de Linux, rg tarda 0.08 segundos donde grep tarda 2.67 segundos. 32 veces más rápido. Y tiene superpoderes que grep ni sueña: salida en JSON con --json, búsqueda en archivos comprimidos con -z, soporte PCRE2 con -P para lookaheads, y un flag --passthru que te muestra también las líneas que no coinciden. Desde la versión 15 también soporta hyperlinks OSC 8 y respeta repositorios de Jujutsu.
Pero lo que realmente me tiene enganchado es combinarlos. El patrón es sencillo: fd encuentra los archivos que te interesan, ripgrep extrae el contexto relevante, y todo eso se lo pasas a Ollama para que lo procese. Te enseño la función aresumen que me he montado en Bash, y su equivalente en Fish, para preguntarle a mi documentación local sin salir de la terminal. Cosas como "resume todo lo que he escrito sobre Ollama en el último mes" se resuelven con un pipeline de tres comandos. Sin RAG, sin bases de datos vectoriales, sin complicaciones. Solo con un pipe bien puesto y el modelo adecuado.
También te cuento cómo usar jq para procesar la salida JSON de ripgrep, cómo montar un buscador interactivo con fzf y bat, y los errores más comunes al construir estos pipelines. Si alguna vez has pensado "ojalá pudiera preguntarle a mis propias notas desde la terminal", este episodio te va a gustar. Y si todavía usas find y grep, te aseguro que después de oír los benchmarks no vuelves atrás.
Capítulos del episodio:
0:00 — Introducción: fd y ripgrep para alimentar a tu IA
2:30 — El problema con find y grep tradicionales
5:00 — fd: el find que siempre quisiste tener
8:00 — Placeholders y expresiones regulares en fd
11:00 — ripgrep: el grep con superpoderes
14:00 — Salidas estructuradas con JSON y jq
16:30 — La combinación estrella: fd + ripgrep con -x
19:00 — Pipelines avanzados para filtrar archivos
21:30 — Integración con IA local: fd + rg + Ollama
24:30 — Alias, funciones y trucos del día a día
27:00 — Despedida y conclusionesRecursos mencionados:
- fd (sharkdp/fd): https://github.com/sharkdp/fd
- ripgrep (BurntSushi/ripgrep): https://github.com/BurntSushi/ripgrep
- Ollama: https://ollama.com
- jq: https://jqlang.github.io/jq/
- fzf: https://github.com/junegunn/fzf
- bat: https://github.com/sharkdp/batMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 20 Aug 2026 - 22min - 824 - ATA 823 OpenCode multi agente: cómo convertir la IA en tu equipo de redacción
Hoy toca dar un paso más. Hasta ahora usabas OpenCode como un asistente personal, le pedías algo y lo hacía. Pero, ¿y si necesitas algo más potente? ¿Alguien que investigue, alguien que escriba, alguien que lo optimice para SEO y alguien que lo revise todo? La respuesta no es un agente, es un equipo de agentes. En este episodio te cuento cómo he montado un sistema multi agente con OpenCode usando el patrón supervisor, y cómo coordino cinco agentes especializados sin que se pisen.
Te explico el pipeline completo de cinco fases. Primero la planificación, donde el coordinador define la estructura y los pasos a seguir. Luego la investigación, que corre a cargo del bibliotecario, un agente que solo busca información, no escribe, no opina, solo trae datos con sus fuentes. Después viene el redactor, que coge esos datos y escribe el artículo en Markdown con el tono de la casa. La cuarta fase es el SEO, donde un agente especializado pone el título, la meta descripción y las etiquetas sin tocar el fondo del artículo. Y por último la revisión, donde el editor verifica que todo está correcto y, si algo falla, lo devuelve al coordinador para que repita la fase que haya fallado. Todo esto forma un bucle de retroalimentación que diferencia un sistema multi agente bien hecho de cualquier otro.
Cada agente tiene su propio modelo, su propia temperatura y sus propios permisos. El investigador usa un modelo pequeño y barato porque solo necesita buscar. El redactor necesita un modelo más grande porque tiene que escribir con calidad. El revisor usa temperatura muy baja para ser lo más objetivo posible.
También te cuento los errores que me he encontrado. El más común es que el coordinador no delega. Le pides algo y en lugar de llamar al investigador, investiga él. En lugar de llamar al redactor, escribe él. Y el resultado es lo peor, porque el coordinador no es especialista en nada. La solución pasa por describirlo muy claro, con exclusiones en mayúscula: NO PUEDES HACER NADA, SOLO PUEDES DELEGAR. Otro error es dar permisos de más. Si todos pueden invocar Task, el investigador llama al revisor, este al SEO y se monta un follón.
Además hago una demo en vivo creando un artículo sobre FD, una herramienta en Rust que sustituye a find. Ves cómo el coordinador recibe la petición, planifica, lanza al investigador, luego al redactor, luego al SEO, luego al revisor, y en una sola iteración el artículo está aprobado. Con su título SEO, su meta descripción, sus etiquetas y su estructura en Markdown. Y todo esto no es programación. Es escribir artículos, preparar presentaciones o lo que se te ocurra. OpenCode no es solo un asistente para programar, es mucho más que eso. Y al final te cuento cuándo merece la pena usar multi agente y cuándo no. Porque para cambiar una bombilla no necesitas un equipo de cinco personas, necesitas un electricista.
Capítulos del episodio:
0:00 - Introducción: de ChatGPT a los agentes multi-propósito
2:28 - De asistente personal a equipo de agentes especializados
3:52 - Patrón supervisor: el jefe de obra que coordina sin ejecutar
4:50 - Pipeline de 5 fases: planificación, investigación, redacción, SEO y revisión
6:37 - La herramienta Task: delegación, contexto aislado y ventajas9:17 - Demo en vivo: creando un artículo sobre FD con subagentes
13:07 - Agentes especializados: investigador, redactor y SEO
18:56 - Control de calidad: el revisor y el bucle de retroalimentación
23:22 - El coordinador: la no ejecución como clave del éxito
24:58 - Errores comunes, cuándo usar multi-agente y despedida
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 17 Aug 2026 - 30min - 823 - ATA 822 PowerPoint HA MUERTO! Genera presentaciones con IA en 15 segundos
Hace unos meses empecé a usar presentaciones para grabar el podcast, y enseguida me di cuenta de que el verdadero problema no es pensar el contenido, sino maquetarlo. Pasaba más tiempo ajustando fuentes, colores y transiciones que preparando lo que realmente quería contar. Así que me puse a buscar una solución, y lo que encontré me ha cambiado el flujo de trabajo por completo.
En este episodio te cuento cómo he montado typst-ia, un script en Python que genera presentaciones completas en segundos. Le dices un tema, la inteligencia artificial se encarga del contenido, y Typst lo convierte en un PDF impecable. Todo desde la terminal, sin abrir PowerPoint ni Google Slides, sin suscripciones mensuales, y con un control total sobre el resultado.
Typst es un sistema de composición moderno escrito en Rust que compila en milisegundos. Sí, has leído bien, milisegundos. Comparado con LaTeX Beamer, que tarda 5 o 10 segundos en compilar, Typst es un antes y un después. Además, su sintaxis es mucho más limpia y fácil de aprender. En el episodio lo comparo con LaTeX y con Markdown, y te cuento por qué creo que Typst se está convirtiendo en el estándar para presentaciones técnicas.
La clave del proceso está en el system prompt. Incrusto el template real de la presentación dentro del prompt que le envío a OpenRouter, y la IA genera código Typst válido sin necesidad de retoques. Uso DeepSeek Chat por defecto —cuesta unos 14 céntimos por millón de tokens de entrada, que vienen a ser cientos de presentaciones por menos de un euro—, pero también puedes usar Claude Sonnet, Gemini Flash o Llama 3.3 si necesitas más calidad o prefieres un modelo concreto.
El script completo son unas 200 líneas de Python sin frameworks, solo con la librería requests. Te explico paso a paso cómo funciona el pipeline: lee el template, construye el prompt, llama a OpenRouter, limpia la respuesta, escribe el archivo .typ, lo compila a PDF y lo abre en el visor. Y todo con flags para personalizar el número de diapositivas, el modelo, el nombre del archivo y hasta los reintentos si la compilación falla.
Para rematar, hago una demo en vivo generando una presentación desde cero. Ves cómo en cuestión de segundos pasamos de una idea a un PDF listo para proyectar. Y lo mejor es que el resultado es texto plano, versionable con Git, editable con cualquier editor, y sin ningún tipo de lock-in. Si mañana quieres cambiar algo, abres el .typ y lo tocas.
Si eres de los que hacen presentaciones técnicas, charlas, workshops, o simplemente quieres automatizar una tarea tediosa, este episodio te va a gustar. Y si nunca has oído hablar de Typst, te vas a llevar una sorpresa.
Capítulos del episodio:
0:00 - Introducción: presentaciones con Typst e IA
2:52 - El problema de las presentaciones tradicionales
5:20 - Typst: el sistema de composición moderno
7:34 - Typst vs LaTeX vs Markdown
8:31 - Instalación de Typst
9:28 - Plantillas para presentaciones con Typst
12:52 - OpenRouter y el prompt para la IA
15:28 - El script Python: el pipeline completo
17:41 - Demo en vivo: generando una presentación
24:17 - Conclusiones y despedidaThu, 13 Aug 2026 - 28min - 822 - ATA 821 Como buscar en tu cerebro digital con IA
¿Alguna vez te has dado cuenta de que la búsqueda exacta se queda corta cuando tu base de conocimiento crece? Buscar por palabras exactas con grep o FTS5 es rápido y preciso, pero es literal y no entiende contexto ni sinónimos. Por otro lado, la búsqueda semántica pura con embeddings a veces falla con términos muy específicos como rutas de archivos o comandos exactos.
En este episodio te muestro cómo solucionar este problema combinando lo mejor de ambos mundos mediante tres técnicas avanzadas de RAG:
Búsqueda Híbrida (Hybrid Search): Cómo combinar FTS5 y embeddings semánticos utilizando un equilibrio ponderado (parámetro alpha).
Re-ranking con Cross-Encoder: Refinamiento de resultados pasando de un bi-encoder rápido a un cross-encoder preciso para priorizar la máxima relevancia.
HyDE (Hypothetical Document Embeddings): La técnica de generar un documento hipotético con un LLM local (Ollama) para encontrar notas mediante conceptos abstractos.
Además, repasamos cómo integrar todo esto en tu flujo de trabajo diario mediante herramientas CLI creadas en Python y Rust, así como la integración en Neovim con sqlite.lua.
Enlaces y recursos del episodio:
Gist con los scripts en Python (Hybrid Search, Reranker y HyDE)
Gist con la implementación del CLI en Rust (cerebro-cli)
Notas completas del episodio en: atareao.es
Mon, 10 Aug 2026 - 29min - 821 - ATA 820 Herramientas para Linuxeros Vagos
Este episodio va de ser vago. Pero vago en el buen sentido, eh. De esos que prefieren que una herramienta haga el trabajo pesado mientras tú te quedas con lo divertido. Resulta que hay todo un ecosistema de herramientas TUI con el prefijo "lazy" que te evitan tener que memorizar cientos de flags y opciones de comandos como git, docker, rsync o SQL. Y no, no es cutrez: son interfaces de terminal que funcionan a golpe de tecla, sin ratón, sin salir de la terminal, y encima molan.
Te cuento cómo nació todo esto, quién es Jesse Duffield (el creador de lazygit y lazydocker, con más de 80K y 52K estrellas en GitHub respectivamente) y por qué esta filosofía de "una tecla, una acción" ha enganchado a tanto linuxero. Y lo mejor: te hago demo de las cuatro herramientas principales para que veas cómo funcionan en vivo y en directo, con sus paneles, sus atajos y sus trucos.
Empezamos con lazygit, el rey indiscutible del ecosistema. 80.900 estrellas en GitHub, escrito en Go, y con una comunidad que no para de crecer. Desde stage línea a línea hasta rebase interactivo, pasando por undo/redo vía reflog. Te enseño cómo hacer commits, gestionar ramas, stash y hasta cherry-pick sin tener que acordarte de los flags raros de git.
Seguimos con lazysql, el gestor de bases de datos en terminal de Jorge Rojas. Soporta MySQL, PostgreSQL, SQLite, MongoDB, MSSQL y Oracle. Navegación por teclado, autocompletado de queries, exportación a CSV y configuración por proyecto. Ideal para cuando no te apetece abrir DataGrip o DBeaver solo para hacer una consulta rápida.
Luego viene lazyrsync, escrito en Rust con ratatui, y con una filosofía muy clara: que no se te olvide el flag ese que evita que borres todo. Perfiles reutilizables, dry-run con previsualización, protección contra --delete accidentales y paths dinámicos con variables. Perfecto para backups sin sustos.
Y cerramos con lazydocker, también de Jesse Duffield. Cuatro paneles: contenedores, métricas, imágenes y logs en vivo. Con un vistazo ves qué contenedor consume más CPU, entras en el terminal de uno con una tecla, o ejecutas docker-compose sin acordarte del comando. Y sí, también funciona con Podman.
Además te menciono otras herramientas del ecosistema: lazyssh, lazyjj para Jujutsu, lazykube, lazyprune para limpiar node_modules olvidados... Vamos, que hay lazy para todo.
Capítulos del episodio:
0:00 — Introducción: el problema de memorizar comandos
2:05 — La filosofía lazy: scripts, TUIs y el ecosistema lazy
4:30 — LazyGit: historia, filosofía "una tecla una acción" y +80K estrellas
6:45 — LazyGit: demo de paneles, stage, commits, ramas y stash
9:10 — LazySQL: Jorge Rojas, 4K estrellas y soporte multi-base de datos11:30 — LazySQL: demo con autocompletado, consultas y exportación CSV
14:00 — LazyRsync: dry-run, perfiles y protección contra errores
16:30 — LazyRsync: demo con columnas de estado y confirmación de borrado
19:10 — LazyDocker: Jesse Duffield, 52K estrellas y soporte para Podman
21:45 — Otras herramientas lazy: lazy-ssh, lazy-jj, lazy-kube, lazy-npm
23:15 — Cierre: sé un vago inteligente, valoración y despedida
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 06 Aug 2026 - 23min - 820 - ATA 819 RAG I con SQLite y Ollama, base de conocimiento desde cero
Llevo 15 años escribiendo notas, artículos y tutoriales. El resultado: unos 5000 archivos markdown repartidos por mi disco duro. Y, como te puedes imaginar, encontrar algo ahí dentro es como buscar una aguja en un pajar. Por eso en este episodio me he puesto manos a la obra para montar un sistema RAG (Retrieval-Augmented Generation) 100% local, sin depender de APIs externas, sin enviar tus datos a la nube, y con herramientas que ya conoces: SQLite, Ollama y Python.
Este es el primero de dos episodios sobre RAG. Aquí nos centramos en construir la base de conocimiento: un pipeline que escanea tus documentos, los trocea en fragmentos manejables, extrae los metadatos del frontmatter YAML, genera embeddings con el modelo bge-m3 de Ollama, y lo guarda todo en una base de datos SQLite con búsqueda FTS5. Todo esto, además, con detección incremental de cambios: la primera ejecución tarda lo que tenga que tardar, pero las siguientes son cuestión de segundos porque solo reprocesa lo que ha cambiado.
El stack es sencillo pero potente. SQLite con FTS5 para búsqueda textual, Ollama con bge-m3 para los embeddings, y seis scripts Python que suman unas 1300 líneas. Nada de LangChain, nada de frameworks pesados. Código limpio, comentado y que entiendes de un vistazo. El chunking respeta las cabeceras markdown, usa tiktoken para contar tokens con precisión, y los embeddings se almacenan como BLOBs en la propia SQLite. En el próximo episodio (el 821) usaremos esta base de conocimiento para hacer búsqueda semántica con similitud de coseno, búsqueda híbrida combinando FTS5 con embeddings, y hasta un plugin para Neovim.
Puntos clave del episodio:
- El problema: 15 años de notas, 5000 archivos, cero capacidad de búsqueda
- La solución: RAG local con SQLite + FTS5 + Ollama, todo en tu máquina
- Chunking híbrido que respeta cabeceras markdown y usa tiktoken
- Pipeline incremental con detección de cambios mediante MD5
- Embeddings con bge-m3 (568M parámetros, 1024 dimensiones)
- Búsqueda FTS5 con snippet(), colores ANSI y sintaxis avanzada
- Errores comunes y cómo solucionarlosSi te gusta el contenido, ya sabes: dale a seguir, compártelo con quien creas que le puede interesar, y déjame un comentario si tienes dudas o sugerencias. La semana que viene, en el episodio 821, montamos la búsqueda semántica y el plugin para Neovim. No te lo pierdas.
Capítulos del episodio:
0:00 - Introducción: RAG y base de conocimiento local
2:12 - El problema: 15 años de notas sin buscar
4:58 - La solución: SQLite + FTS5 + Ollama, 100% local
7:00 - Escaneo de archivos y extracción de front matter
10:20 - Preparación del entorno: Ollama, uv y dependencias
12:00 - Chunking: cómo trocear los documentos
15:45 - Estructura de la base de datos SQLite
17:46 - Pipeline incremental con detección de cambios
19:22 - Demo en vivo: consultas y resultados
22:44 - Errores comunes y cómo solucionarlos
24:10 - Resumen y adelanto del episodio 821
25:15 - Despedida y cierreMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 03 Aug 2026 - 26min - 819 - ATA 818 Olvídate de Termius y MobaXterm, SSHUB es lo que necesitas
¿Tienes 5, 10 o 20 servidores SSH y no sabes cómo gestionarlos sin tener mil terminales abiertas? En este episodio te hablo de SSHub, una TUI open source escrita en Rust que unifica hosts, sesiones, túneles, SFTP y auditoría en una sola interfaz. Todo desde la terminal, sin salir de ella y sin necesidad de instalar nada más que un único binario compilado con cargo install de Rust.
Te cuento cómo pasé de un script en Bash que usaba desde 2019 para conectarme a mis servidores, a esta herramienta moderna que lee tu ~/.ssh/config y lo combina con una base de datos SQLite propia. Sin migraciones, sin complicaciones, sin tener que cambiar nada de lo que ya tienes configurado. Además la comparo con Termius y MobaXterm, que son de pago y cerradas, frente a SSHub que es gratis, multiplataforma y con licencia AGPL-3.0.
Voy paso a paso: instalación con cargo install sshub, navegación con atajos estilo Vim (teclas j/k), el cliente SFTP de doble panel con cola de transferencia y barra de progreso, la gestión de túneles con reconexión automática y backoff exponencial, el registro de auditoría que te salva de conectar al servidor equivocado, y hasta el modo broadcast para ejecutar comandos en varios servidores a la vez. También te explico cómo importar hosts desde Termius, PuTTY o mRemoteNG de forma sencilla.
Lo mejor de todo es que SSHub respeta tu configuración SSH existente. No la sustituye, la complementa. Detecta cambios al vuelo con un file watcher, así que cualquier modificación que hagas en tu config aparece al instante en la interfaz. Y si eres de los que prefiere la línea de comandos, tiene modo headless: sshub list, sshub connect, sshub sftp get/put... todo sin abrir la interfaz.
Si gestionas más de 10 servidores, usas túneles habitualmente o vienes de Termius buscando una alternativa open source, este episodio te va a interesar. Y si además te gusta hacer las cosas desde la terminal sin depender de aplicaciones gráficas, SSHub te va a encantar. Dale una oportunidad, que es gratis y no tienes nada que perder. Te espero dentro.
Capítulos del episodio:
0:00 — Introducción: el problema de gestionar múltiples servidores SSH
1:50 — El script de 2019 y la necesidad de una herramienta moderna
3:40 — SSHub: la TUI open source que lo unifica todo
5:30 — Características principales: hosts, túneles, claves y auditoría
7:30 — Instalación de SSHub con Cargo
9:30 — Navegación y atajos de teclado
11:30 — SFTP de doble panel y transferencia de archivos
13:30 — Gestión de túneles y claves SSH
15:15 — Auditoría de conexiones
17:00 — Importación, exportación y personalización
18:45 — ¿Para quién es SSHub? DespedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 30 Jul 2026 - 20min - 818 - ATA 817 Creando tu cerebro digital, busqueda con IA local
¿Sabías que puedes convertir cualquier texto en coordenadas de 1024 dimensiones y hacer búsquedas inteligentes, clasificación automática o detección de duplicados sin depender de servicios en la nube? En este episodio te enseño a utilizar los embeddings con Ollama para potenciar tus documentos, correos y apuntes desde tu propio equipo Linux.
Los embeddings son una de las tecnologías más fascinantes de la inteligencia artificial actual. Básicamente, convierten palabras, frases o párrafos enteros en vectores numéricos que capturan su significado. Esto permite que un ordenador entienda que "gato" está más cerca de "felino" que de "nevera", y mucho más: desde búsqueda semántica hasta clasificación sin entrenamiento, pasando por deduplicación de documentos y sistemas de recomendación.
Lo mejor de todo es que no necesitas una GPU potente ni una cuenta en ningún servicio externo. Con Ollama ejecutándose en local y el modelo BGE-M3 (multilenguaje, con soporte para español), puedes generar embeddings desde la terminal con una simple llamada curl o con unas pocas líneas de Python. Y si necesitas escalar, ChromaDB te ofrece una base de datos vectorial completa con persistencia en disco y filtros por metadatos.
Capítulos del episodio:
0:00 - Introducción y concepto de embeddings
2:42 - ¿Qué son los embeddings exactamente?
5:13 - Modelos de embeddings: BGE-M3, all-MiniLM-L6-v2
7:25 - Cómo generar embeddings con Ollama y curl
8:01 - Búsqueda semántica: más allá de grep
11:57 - Búsqueda semántica con Python y NumPy
14:29 - Bases de datos vectoriales para escalar
14:53 - Clasificación sin entrenar el modelo
18:20 - Clasificación de sentimientos y categorías
20:02 - Deduplicación de documentos con embeddings
24:50 - Sistema de recomendaciones con similitud semántica
27:15 - ChromaDB: base de datos vectorial persistente
29:02 - Casos de uso y próximos episodios sobre RAGMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 27 Jul 2026 - 31min - 817 - ATA 816 jc, jq y gron, el tridente JSON para Linux
¿Todavía usando awk para extraer información de ps aux o df? En 2026 hay herramientas mucho mejores. En este episodio te presento tres herramientas que forman un tridente imbatible para trabajar con información del sistema en formato JSON: jc, jq y gron.
jc es un conversor de comandos Linux a JSON. Se instala con pip y un simple pipe convierte la salida de ps, df, free, ss, systemctl, lsblk y hasta 60 comandos más en JSON estructurado. Olvídate de awk y de los scripts frágiles que se rompen cuando cambia el orden de las columnas. Con jc, el JSON no depende del formato de salida. Tiene parsers específicos para cada comando, incluyendo crontab, last, lsof, pip list, lsmod, date y más. Si no encuentra el parser que necesitas, puedes crear el tuyo. Está escrito en Python y tiene licencia MIT.
jq es la navaja suiza de los JSON. Te permite filtrar, ordenar, agrupar, seleccionar y transformar cualquier JSON con una sintaxis potente. Está escrito en Go y es maduro, estable y rapidísimo. Combinado con jc, puedes listar los procesos que más RAM consumen, los discos por encima del 80% de ocupación o los servicios que han fallado, todo en una sola línea. Si la sintaxis te parece liosa, puedes pedirle a cualquier modelo de lenguaje que te genere la expresión que necesitas.
gron es el menos conocido pero igual de útil. Aplana un JSON convirtiendo cada valor en una línea independiente con su ruta completa. ¿Para qué sirve? Para poder usar grep directamente sobre un JSON. Si alguna vez has hecho un curl a una API y has intentado hacer grep sobre el resultado, sabes que no funciona porque todo está en una línea. Con gron, cada valor tiene su propia línea y puedes buscar con grep. Además permite la operación inversa con --ungron: modificas el JSON aplanado con sed y lo reconstruyes.
En el episodio presento sysreport.py, un script en Python que junta toda la información del sistema en un solo JSON usando jc y luego te permite hacer preguntas en lenguaje natural usando Llama 3.2 con Ollama. Le preguntas qué procesos consumen más RAM, qué servicios están caídos o si hay algún disco lleno, y él te responde en lenguaje natural. Todo corriendo en local, sin gastar un euro en APIs.
El script se puede usar como API local, se combina con watch para monitorización en tiempo real y con notify-send para notificaciones en el escritorio. Además se integra directamente con el nightly-runner del episodio 815 para incluir el estado del sistema en el resumen matutino.
Capítulos:
0:00 - Introducción: el problema de la salida en texto plano2:30 - jc: convierte comandos Linux a JSON5:00 - jq: la navaja suiza de los JSON8:00 - gron: haz greppable cualquier JSON10:30 - Combinando jc y jq para consultas del sistema13:00 - sysreport.py: el script que lo junta todo16:00 - Preguntando al sistema en lenguaje natural19:00 - Monitorización con watch y notificaciones21:00 - Ventajas: local, sin coste y sin dependencias23:00 - Cierre: el tridente JSONMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 23 Jul 2026 - 25min - 816 - ATA 815 Olvídate de n8n, automatiza con Python y IA en Linux
¿Cansado de perder 15 minutos cada mañana revisando el tiempo, las noticias, las ofertas y el estado de tu servidor? En este episodio te muestro cómo automatizar todo ese proceso con un script en Python, un timer de systemd y un modelo de lenguaje local. Sin n8n, sin agentes, sin servicios externos de pago.
Mucha gente piensa que para automatizar cualquier cosa necesitas un agente con montones de herramientas MCP, skills y configuración. Pero la realidad es que para muchas tareas cotidianas, un agente es como usar un lanzamisiles para matar una mosca. Consume demasiado contexto, demasiados recursos y al final no es la solución más eficiente.
En este episodio te presento el patrón de las tres capas: un script que hace el trabajo, un timer que lo ejecuta a una hora determinada y un sistema de notificaciones que te envía el resultado. Con esto puedes automatizar cualquier cosa de forma sencilla, eficiente y completamente bajo tu control.
Te explico cómo he creado el nightly-runner, un script en Python que cada madrugada recopila información de cuatro fuentes distintas. Primero consulta el tiempo en wttr.in, que te devuelve un JSON con la temperatura, el viento, la humedad y los rayos ultravioleta. Luego hace scraping con IA de tus fuentes de noticias favoritas, extrayendo titulares y valorando su relevancia. Después busca ofertas de zapatillas de running en varias tiendas, comparando los precios con los del día anterior. Y por último recoge información del sistema con df, free, uptime y ps aux para saber si tu disco se está llenando o te estás quedando sin RAM.
Toda esa información se guarda en archivos JSON y luego se pasa por un modelo de lenguaje local, Llama 3.2 con Ollama, que genera un resumen en lenguaje natural. El resultado es un mensaje de Telegram con un tono cercano que te da los buenos días, te cuenta el tiempo que va a hacer, te destaca las noticias importantes, te avisa si hay una oferta que no puedes dejar pasar y te informa del estado de tu servidor. Todo en un solo mensaje.
El timer de systemd con Persistent=true se asegura de que si tu equipo estaba apagado a las 4 de la mañana, el script se ejecute en cuanto se encienda. Y cada capa es tolerante a fallos: si wttr.in está caído, el script simplemente omite el tiempo y el resumen dice que no hay información meteorológica disponible. Si no hay ofertas nuevas, no las menciona. Si Ollama no responde, envía el resumen sin procesar.
Lo mejor de todo es que no necesitas saber Python para montar esto. Puedes usar Open Code o Gemini para que te genere el script con solo explicarle lo que quieres. Y para ejecutarlo, Llama 3.2 en local es más que suficiente. Sin gastar un euro en APIs.
Capítulos:
0:00 - Crítica a los agentes como solución universal
2:00 - El problema: 15 minutos perdidos cada mañana
4:00 - La solución: tres capas (script, timer, notificación)
5:30 - wttr.in: el tiempo en JSON con un curl
7:30 - Noticias: scraping con IA para extraer titulares
9:30 - Zapatillas: comparativa de precios contra caché
11:00 - Sistema: df, free, uptime y ps aux
13:00 - El resumen: todos los JSONs pasan por Llama 3.2
16:00 - Systemd timer con Persistent=true
18:00 - Notificaciones a Telegram y notify-send
20:00 - Tolerancia a fallos en cada capa
21:30 - Genera el script con IA aunque no sepas Python
23:00 - Comparación con Hermes: menos es másEste podcast pertenece a la red de Sospechosos Habituales. Más información en atareao.es
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 20 Jul 2026 - 26min - 815 - ATA 814 Automatiza el OCR en Linux con modelos de lenguaje locales
En este episodio te enseño a combinar ImageMagick, Tesseract y Llama 3.2 para crear un pipeline de OCR inteligente en Linux. Olvídate de reescribir capturas de pantalla a mano.
¿Cuántas veces te ha pasado que alguien te envía una captura de pantalla con información que necesitas y tienes que copiarla a mano? O peor aún, tienes un PDF escaneado del que no puedes seleccionar texto. Hasta ahora la solución era pasar horas transcribiendo o conformarte con un OCR básico que devuelve texto lleno de errores. En este episodio te muestro cómo construir un pipeline completo que automatiza todo el proceso.
Primero capturas la imagen o la recibes, luego la preprocesas con ImageMagick para mejorar el contraste y eliminar ruido, después aplicas Tesseract para el OCR y por último pasas el resultado por un modelo de lenguaje local, Llama 3.2, que corrige los errores y da formato al texto. Todo con herramientas de código abierto, sin enviar tus datos a servidores externos.
El script ocr_ai.py que he creado es capaz de detectar automáticamente el tipo de contenido que estás procesando. Si es código fuente, aplica un pipeline de preprocesamiento más agresivo con threshold y sharpen intensivos, y un prompt de IA específico para restaurar la indentación y la sintaxis sin cambiar nombres de variables. Si es una tabla, preserva la estructura de filas y columnas, corrigiendo números mal reconocidos pero sin rellenar celdas vacías. Si es prosa, simplemente corrige acentos, puntuación y caracteres mal interpretados sin alterar el significado del texto.
También te explico cómo monitorizar un directorio con inotifywait para que cualquier imagen que caiga en él se procese automáticamente, ideal para combinarlo con carpetas compartidas de Nextcloud o Syncthing y tener OCR automático desde el móvil. Y cómo combinar todo con wl-copy en Wayland o xclip en X11 para tener el texto directamente en el portapapeles con un solo atajo de teclado.
Cubrimos Tesseract 5 y su motor LSTM, los modos de segmentación de página (PSM 3, 6, 7 y 11), los diccionarios personalizados con --user-words para dominios específicos, las operaciones de ImageMagick v7 como colorspace gray, normalize, threshold, deskew, sharpen, negate y morphology, y cómo ajustar cada parámetro según el tipo de imagen. Además hablamos de OCRmyPDF para añadir capa de texto a PDFs escaneados y convertir cualquier PDF en un documento seleccionable y buscable.
El episodio incluye consejos prácticos para troubleshooting: cómo ajustar el threshold cuando el texto es borroso (valores entre 40% y 65%), cómo reducir el ruido con filtros de morfología, cómo redimensionar imágenes con texto muy pequeño usando -resize 200%, cómo manejar fotos de documentos con -median 3, y cómo crear diccionarios personalizados con --user-words para mejorar el reconocimiento en dominios específicos como facturas, logs o código fuente.
Capítulos:
0:00 - El problema de las capturas de pantalla
2:00 - Motivación: running, Hermes y el pipeline completo
4:00 - Captura y preprocesamiento con ImageMagick
6:30 - Operaciones clave: normalize, threshold, deskew y sharpen
8:30 - Pipelines personalizados según el tipo de imagen
10:30 - Tesseract: instalación, modos y diccionarios
14:00 - ocr_ai.py: detección automática del contenido
18:00 - Corrección con Llama 3.2 y prompts específicos
23:00 - Monitorización de directorios y automatización
24:30 - Consejos prácticos y cierreMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 16 Jul 2026 - 28min - 814 - ATA 813 Implementé un cazador de ofertas con IA
En este episodio de Atareao con Linux nos vamos a remangar para hablar de una de esas tecnologías que, una vez las dominas, te cambian la vida por completo: el Web Scraping asistido por Inteligencia Artificial.
Seguro que te ha pasado alguna vez. Quieres comprar un producto concreto, como unas zapatillas de running (yo las cambio cada 800 kilómetros y es un goteo constante), o quieres extraer todas las recetas de cocina de una web para montarte tu propio planificador semanal. Lo ideal sería que estas páginas tuvieran una API pública para descargar la información de forma limpia. Pero la cruda realidad es que casi ninguna te lo pone fácil. Ahí es donde entra el scraping: la técnica de extraer la información directamente de la página web.
En este episodio te cuento por qué el scraping clásico (ese que utiliza Beautiful Soup en Python y depende de identificar las etiquetas HTML y las clases CSS) tiene los días contados para tareas complejas. Basta con que un desarrollador cambie el diseño de la web para que tu script se rompa por completo. Además, con la llegada de las webs dinámicas, los tests A/B y los sistemas anti-bloqueo como Cloudflare, mantener un scraper tradicional es un auténtico dolor de muelas.
La gran alternativa: Inteligencia Artificial en local
¿Y si en lugar de pelearnos con el código fuente dejamos que un modelo de lenguaje (LLM) entienda la página exactamente igual que lo haría un humano? Un LLM comprende perfectamente qué es un "precio" o el "nombre de un producto", sin importar cómo esté maquetada la web ni el idioma en el que esté escrita. Y lo mejor de todo: ¡lo podemos hacer 100% gratis en local usando Ollama!Te detallo mis pruebas ejecutando modelos en mi Slimbook One utilizando únicamente la CPU (¡sin gastar un céntimo en nubes ni necesitar tarjetas gráficas carísimas!). Hablaremos de cómo rinden modelos como Llama 3.2, Qwen, Mistral y DeepSeek R1, y cuál es el punto de equilibrio perfecto para no eternizarnos esperando la respuesta.
También te desvelo mi fórmula secreta para procesar la información. No podemos enviarle 2 Megabytes de HTML ruidoso a la IA. Te explico los 5 pasos que utilizo en Python para eliminar la basura (scripts, estilos, navegación) y reducir el HTML hasta en un 93%, permitiendo que el modelo extraiga los datos en segundos y nos devuelva un JSON estructurado impecable.
Por último, vemos cómo montar un auténtico vigilante de ofertas automatizado en segundo plano. Un sistema que compare los precios de varias tiendas en paralelo.
Capítulos del episodio:
00:00:00 Introducción al Web Scraping con Inteligencia Artificial00:01:22 ¿Para qué sirve extraer datos? Ejemplos prácticos00:02:42 El gran talón de Aquiles del scraping tradicional00:04:31 La revolución de la IA: Entender la web sin saber HTML00:07:36 Los problemas habituales: Selectores rotos y webs dinámicas00:10:00 Cómo un modelo de lenguaje (LLM) procesa la información00:13:17 Cuándo elegir scraping clásico vs. scraping con IA00:15:28 Comparación de costes: Enfoque clásico, IA local e IA en la nube00:17:19 ¿Qué modelos usar? Pruebas con Llama, Qwen, Mistral y DeepSeek00:18:19 Detrás de escena: Mi script de Python y la limpieza del HTML00:21:05 Creando el prompt perfecto para extraer un JSON estructurado00:24:34 Ejemplo real: Comparativa paralela entre tiendas00:28:38 Diseñando un vigilante de ofertas automatizado (24/7)00:30:17 Casos de uso prácticos y mejoras para evitar bloqueos00:32:02 Cierre y detalles del próximo tutorial de scrapingMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 13 Jul 2026 - 33min - 813 - ATA 812 ¿La terminal más espectacular de Linux? La he probado y tengo un dilema
Si alguna vez habías pensado que en el mundo de los emuladores de terminal ya estaba todo inventado y que no había margen para la sorpresa, déjame decirte que estás muy equivocado. Yo también lo pensaba, de verdad. Pero la innovación no descansa y en este episodio te voy a presentar una propuesta que cambia por completo las reglas del juego.
En mi búsqueda constante de la herramienta ideal para mi día a día, he pasado por Alacritty, por WezTerm, por mi queridísima Kitty y, recientemente, estuve dándole una oportunidad de oro a Ghostty. Sin embargo, me topé con un pequeño pero molesto inconveniente con la escritura de acentos que me obligó a volver a los brazos de Kitty. Pero como soy incapaz de resistirme a probar cualquier terminal nueva que caiga en mis manos, hoy quiero hablarte a fondo de Wave. ¿Es una terminal? ¿Es un navegador? ¿Es un entorno de desarrollo? Te lo adelanto ya: es todo eso a la vez y estructurado de una manera que te va a volar la cabeza.
Un nuevo paradigma: El espacio de trabajo por bloques
Wave no es una terminal corriente como las que estás acostumbrado a usar.En el episodio de hoy te detallo cuáles son los cinco bloques fundamentales que incluye de serie y cómo cambian por completo la forma en que nos enfrentamos a la línea de comandos:
Bloques de TerminalBloques de Visor de ArchivosBloques WebBloques de EditorBloques de Inteligencia ArtificialLa magia de los Layouts y los espacios de trabajo
Otro de los grandes aciertos de Wave es la posibilidad de guardar y gestionar tus disposiciones de pantalla o "Layouts".SSH Durable: Conexiones indestructibles para administradores
Si trabajas habitualmente con servidores remotos, este superpoder te va a encantar. Las conexiones SSH convencionales son muy sensibles: si cambias de la red Wi-Fi de tu casa a los datos móviles, si se produce un microcorte o si simplemente cierras la tapa de tu portátil para cambiar de sitio, la conexión muere y pierdes todo lo que estabas haciendo.Inteligencia Artificial local para máxima privacidad
La IA también está integrada de forma nativa en este entorno. Lo realmente interesante es que Wave te permite configurar tanto servicios en la nube (OpenAI, Anthropic) como modelos de lenguaje locales (por ejemplo, usando Llama).¿Y por qué me sigo quedando con Kitty?
Al final del episodio abordo este dilema. Aunque Wave me parece una de las propuestas más originales, potentes y visuales de los últimos años, sigo prefiriendo la ligereza de Kitty combinada con gestores de terminal rápidos como Yazi.Capítulos del episodio:
00:00:00 El dilema de las terminales: de Kitty a Ghostty y Wave
00:02:11 ¿Qué es Wave? ¿Hacía falta otra terminal Open Source?00:03:41 El concepto revolucionario de los bloques
00:06:07 Los 5 tipos de bloques: terminal, visor, web, editor e IA
00:08:43 Cómo moverte entre bloques como un profesional
00:09:43 Creando tus propios espacios de trabajo (Layouts)
00:13:20 Renderizado gráfico y el explorador de archivos integrado
00:16:30 Inteligencia Artificial nativa y modelos locales
00:18:00 Extendiendo la terminal con TypeScript y React
00:20:47 SSH durable: conexiones indestructibles que sobreviven a todo
00:22:13 Gestor de conexiones y contraseñas seguro
00:23:11 Trucos rápidos y por qué me sigo quedando con Kitty
00:25:24 Despedida y dónde encontrarnos para seguir cacharreandoMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 09 Jul 2026 - 26min - 812 - ATA 811 El secreto para que Hermes trabaje el tripe (y te cueste mucho menos)
Si has estado siguiendo mis últimos episodios, sabrás que ando entusiasmado con Hermes, este increíble agente autónomo de Inteligencia Artificial que se ha convertido en mi mano derecha para automatizar todo tipo de tareas en mi servidor. Sin embargo, me he dado cuenta de que he pasado muy de puntillas sobre una de sus características más potentes y que de verdad marca la diferencia cuando queremos exprimir al máximo sus capacidades: los subagentes.
🧠 El gran problema del contexto: Por qué tu IA se vuelve lenta y cara
Para entender la magia de los subagentes, primero tenemos que hablar del principal cuello de botella de los modelos de lenguaje: la ventana de contexto. I
Si estás utilizando un modelo comercial muy potente con una ventana de contexto enorme, puede parecer que no hay problema. El problema es que en cuanto te descuidas, esa conversación ya ha consumido 20.000 o 30.000 tokens. Esto tiene tres consecuencias directas que te van a doler:
Menor rendimientoCostes disparadosAsfixia en local🕵️ ¿Qué es un subagente y por qué es el ayudante ideal?
Un subagente es, en esencia, un hilo de ejecución completamente nuevo y aislado que hereda una tarea hiperespecífica de su "padre" (el agente con el que estás chateando directamente). Piensa en él como en un ayudante temporal al que le asignas una misión muy concreta y que cuenta con una serie de ventajas diseñadas para la eficiencia:
Aislamiento totalTerminal independienteHerramientas restringidas (Toolsets)Modelos flexiblesCuando el subagente termina su labor, redacta un resumen escueto con el resultado final y se lo entrega al padre.
📏 La regla de oro: ¿Cuándo delegar y cuándo ejecutar directamente?
⏱️ Estructura temporal del episodio
Si quieres saltar directamente a una sección concreta del programa, aquí tienes la guía de capítulos completa de este episodio:
00:00:00 Introducción a los subagentes de Hermes00:01:10 ¿Qué es un subagente y por qué lo necesitas?00:03:21 El problema del contexto y cómo solucionarlo00:05:15 Los tres pilares: Objetivo, Contexto y Herramientas00:06:19 La regla de oro: ¿Delegar o ejecutar código directamente?00:08:19 Cómo definir tareas de forma específica y segura00:11:12 Qué pasa dentro de un subagente (Aislamiento y límites)00:12:05 Ejemplos prácticos: Búsquedas de ofertas y análisis de sistema en paralelo00:16:30 Límites de configuración: Concurrencia y profundidad de agentes00:19:40 El futuro de Hermes: Delegación síncrona vs. asíncrona00:21:54 Casos de uso reales y errores comunes que debes evitar00:24:02 Conclusiones y un adelanto sobre RAG y Ollama00:25:58 Despedida y canales de la comunidad🚀 Dos experimentos prácticos que vas a escuchar hoy
En este episodio te detallo dos pruebas reales que he estado haciendo en mi laboratorio para que veas el potencial de trabajar de forma paralela:
Por un lado, la búsqueda de ofertas multitarea.
Por otro lado, la auditoría de recursos concurrentes.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 06 Jul 2026 - 27min - 811 - ATA 810 Las 3 herramientas que van a cambiar tu terminal Linux para siempre
Hoy dejamos a un lado por un momento los modelos de lenguaje y la inteligencia artificial para volver a los clásicos de este pódcast: la optimización y el disfrute de nuestra terminal de Linux. He decidido intercalar estos temas para no aburrir a nadie. Sé que la inteligencia artificial es fascinante, pero de vez en cuando viene muy bien un respiro técnico para centrarnos en lo que siempre nos ha apasionado: exprimir al máximo nuestro sistema operativo favorito. Por eso, hoy te traigo lo que yo llamo el tridente de la terminal, un trío de herramientas que, cuando se integran y empiezan a trabajar juntas, cambian por completo tu flujo de trabajo. Te aseguro que, una vez que las pruebas, ya no hay vuelta atrás.
El buscador difuso interactivo: FZF
La primera pieza de nuestro tridente es FZF (Fuzzy Finder). Imagina que tienes una lista gigante de archivos o de comandos y quieres encontrar algo específico. En lugar de escribir el término de búsqueda exacto, FZF te permite realizar una búsqueda difusa. Si buscas, por ejemplo, la palabra firefox, te bastará con teclear ffx. El programa entenderá de inmediato lo que estás intentando buscar y te filtrará los resultados en tiempo real.
Ripgrep (rg): Búsquedas en milisegundos
La segunda herramienta que forma nuestro tridente es Ripgrep, conocida en la terminal simplemente como rg. Si vienes usando el comando grep de toda la vida, Ripgrep va a ser una revelación para ti. Está programada en Rust y su velocidad de búsqueda dentro de archivos es, sencillamente, abrumadora.
Bat: El clásico cat rediseñado con superpoderes
La tercera punta del tridente es Bat (en algunos sistemas Debian y Ubuntu lo encontrarás como batcat). Todos hemos usado el comando cat para imprimir el contenido de un archivo en la terminal. Bat viene a sustituirlo ofreciendo una visualización muy superior.
Cómo armar el tridente: La fusión definitiva
Lo verdaderamente potente de estas herramientas no es solo usarlas por separado, sino conectarlas. Combinando Ripgrep con FZF y Bat, consigues un sistema de búsqueda en vivo increíble. Puedes hacer que Ripgrep busque un término en todos tus documentos, pasarle esa lista a FZF para que te permita filtrar de forma interactiva y, mientras te mueves por los resultados, abrir una pequeña ventana en el lateral donde Bat te previsualice en tiempo real el contenido del archivo con la sintaxis coloreada.
En el episodio te explico cómo definir estas funciones en tu archivo de configuración (Bash, Zsh o Fish). De este modo, puedes construirte utilidades personalizadas con solo unas pocas líneas de código: desde un explorador de commits de Git muy visual hasta tu propio gestor de notas Markdown, rápido y sin distracciones, eliminando la necesidad de recurrir a pesados programas con interfaz gráfica.
Capítulos de este episodio
Aquí tienes la estructura del episodio para que puedas moverte cómodamente por el contenido:
00:00:00 Introducción y el tridente de la terminal00:01:22 FZF: El buscador difuso interactivo00:03:00 Atajos de teclado esenciales para FZF00:08:16 El autocompletado mágico de FZF00:09:09 Ripgrep (rg): Búsquedas a la velocidad de la luz00:12:47 Combinando Ripgrep y FZF00:14:26 Bat: El comando "cat" con superpoderes00:18:07 Armando el tridente: Cómo combinar las tres herramientas00:19:48 Casos prácticos: Explorar commits, matar procesos y gestionar notas00:21:49 El ecosistema completo de 5 herramientas00:23:19 Integración con IA, despedida y conclusionesMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 02 Jul 2026 - 24min - 810 - ATA 809 Deja de subir tus PDFs a ChatGPT. Crea tu propia IA ya
Te traigo un tema que me tiene completamente entusiasmado: cómo exprimir todos tus documentos, notas, manuales o archivos locales sin tener que compartirlos con nadie. Te voy a dar una visión general de cómo puedes montar un sistema de recuperación de información para que una inteligencia artificial local se convierta en tu asistente personal definitivo. Todo esto sin salir de tu propia casa, sin APIs de pago y de forma completamente privada.
¿Reentrenar o buscar? El gran dilema
Para solucionar esta tremenda limitación, el mundo de la tecnología nos ofrece dos caminos diferentes: hacer un reentrenamiento de un modelo ya existente (lo que conocemos como fine-tuning) o bien montar un sistema RAG (Retrieval-Augmented Generation), que podríamos traducir como generación aumentada por recuperación. En este episodio te desvelo por qué el fine-tuning no es la solución para el común de los mortales: requiere de tarjetas gráficas carísimas, es un proceso lento y estático, y además tus datos privados quedan incrustados dentro del propio modelo, por lo que si se lo entregas a un tercero, estarás regalando tu privacidad.
En cambio, un RAG casero es infinitamente más barato, dinámico y respeta tus datos al cien por cien. Imagina que en lugar de obligar al modelo a memorizar toda la biblioteca (que es lo que hace el fine-tuning), le pones a su lado un bibliotecario listísimo que busca la página exacta de los apuntes que necesita antes de responderte. El modelo de lenguaje lee esa página en tiempo real y te contesta basándose únicamente en hechos reales, no en invenciones.
La tubería de datos para tu cerebro artificial
A lo largo del episodio te explico con todo detalle las piezas que componen esta tubería de datos (o pipeline) que permite hacer magia con tus archivos:
La ingestaEl troceado (ochunking)Los embeddings y vectoresLa base de datosLa búsqueda híbridaHerramientas listas para usar y errores que debes evitar
Si te da miedo el código, no te preocupes. Te hablo también de alternativas como OpenWeb UI. Y si te va la marcha del desarrollo, te cuento cómo con apenas diez líneas de Python y Streamlit puedes tener una aplicación web propia y completamente funcional.
Además, repasamos los tropiezos más habituales que cometemos al empezar en este mundillo, como usar modelos de vectorización que solo entienden inglés para procesar textos en español, no limpiar las cabeceras y pies de página de los PDFs antes de procesarlos, o la importancia crucial de reindexar de forma automática para que tus nuevos documentos estén disponibles al instante.
Capítulos del episodio
00:00:00 Introducción y de qué va este episodio00:01:54 ¿A qué problema nos enfrentamos con los LLM?00:05:08 Fine-tuning vs. RAG: ¿Cuál es mejor para tus datos?00:08:29 El Pipeline del RAG: De la ingesta a la respuesta00:10:45 ¿Qué es un "embedding" y qué modelos usar con Ollama?00:12:02 El arte de trocear el texto (Chunking)00:13:40 Búsqueda híbrida: Semántica frente a coincidencia exacta00:14:50 Re-ranking: Ordenando los resultados por relevancia00:15:53 El Stack: Ollama, PostgreSQL, pgvector y Podman00:17:25 Alternativas vectoriales: ParadeDB, ChromaDB y Qdrant00:18:36 Manos a la obra con Python y Streamlit00:20:53 OpenWeb UI: La alternativa con RAG integrado y sin código00:21:42 Cómo saber si funciona: El método de las 20 preguntas00:22:51 Errores comunes que debes evitar al montar tu RAG00:23:55 Lo que viene: GraphRAG y RAG agéntico00:24:44 Resumen final y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 29 Jun 2026 - 27min - 809 - ATA 808 Por qué deberías dejar de usar Cron hoy mismo (y qué uso yo)
En este episodio vamos a hablar de una de esas herramientas míticas del ecosistema Linux y Unix que prácticamente todos hemos configurado alguna vez: Cron. Ese servicio fiel, un clásico entre los clásicos, que lleva décadas ejecutando nuestras copias de seguridad de madrugada o eliminando ficheros temporales. Sin embargo, las cosas cambian, la tecnología avanza y yo creo que ha llegado el momento de que todos jubilemos a Cron. Sí, como lo oyes. Ha llegado la hora de darle una merecida jubilación dorada y abrir los brazos a una alternativa mucho más moderna, integrada y potente: los Systemd Timers.
¿Por qué deberías jubilar a tu viejo Cron?
Sé que puedes estar pensando: "Lorenzo, pero si a mí Cron me funciona de maravilla". Y es verdad, para un comando sencillo que se ejecute cada hora, Cron cumple. Pero a poco que intentes complicar la tarea, empiezan los problemas. El gran drama de Cron es que trabaja a ciegas y en absoluto silencio. Si tu script falla por falta de internet, por un error de permisos o porque un recurso no está disponible, no te vas a enterar a menos que te hayas tomado el trabajo de programar tus propios registros de log, gestionar lógicas de reintentos o configurar desvíos de errores dentro de tu script.
El poder de los Systemd Timers
Con los Systemd Timers todo esto se soluciona de forma completamente automática y sin añadir complejidad a tus scripts. Systemd se encarga de gestionar de manera integrada el estado de tu sistema y te ofrece superpoderes como:
Logs centralizados automáticosGestión inteligente de la persistenciaControl de dependenciasAleatorización horariaLa anatomía de una tarea en Systemd
Para conseguir toda esta potencia, Systemd utiliza un enfoque muy limpio en el que dividimos la tarea en dos archivos de texto sencillos que se complementan a la perfección:
El Servicio (.service)El Timer (.timer)Automatización sin root: Los timers de usuario
Pero mi funcionalidad favorita, y la que utilizo en mi día a día para casi todo, es la posibilidad de ejecutar estos temporizadores en el espacio del usuario corriente, sin necesidad de tener privilegios de administrador ni usar el comando sudo. Estos temporizadores se guardan en tu propia carpeta de configuración personal de forma limpísima y se ejecutan dentro del contexto de tu sesión activa.
Capítulos del audio
00:00:00 Introducción y el adiós definitivo a Cron00:01:43 Los fallos silenciosos de Cron: Logs, reintentos y dependencias00:03:06 Las grandes ventajas de usar Systemd Timers00:05:21 La anatomía de la automatización: Timer y Servicio00:06:48 Configuración de la sección [Timer], OnCalendar y persistencia00:07:55 Tareas relativas: OnBootSec y aleatorización de tiempos00:10:00 Comandos de systemctl para gestionar tus tareas programadas00:10:33 Ejemplos prácticos en el sistema: Backups y limpiezas00:12:13 Notificaciones de escritorio e integración con el entorno gráfico00:14:11 Timers de usuario: Automatización segura sin usar root o sudo00:15:25 El truco de Linger para mantener tareas activas en VPS00:16:53 Sincronización continua de notas y cambio automático de fondo00:20:07 Cómo ver los logs y depurar fallos de forma sencilla con journalctl00:21:25 Evita estos errores típicos y valida con systemd-analyze00:24:51 El futuro de la automatización, modelos de lenguaje y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 25 Jun 2026 - 27min - 808 - ATA 807 Configura Hermes Agent de verdad (lo que nadie te cuenta)
Si has estado atento a los últimos episodios del podcast, ya te habrás dado cuenta de que estoy completamente enfocado en exprimir la inteligencia artificial local y el software libre. En concreto, hay dos herramientas que se han convertido en mis compañeras inseparables de fatigas en el día a día: OpenCode, que me ayuda a programar de una forma increíble, y Hermes Agent, un asistente digital del que hoy te lo quiero contar absolutamente todo.
El dilema de la instalación: ¿Docker o en tu propia máquina?
Como ya me conoces, sabes bien lo mucho que me gusta a mí levantar "al rico contenedor" y solucionar cualquier despliegue con Docker. Sin embargo, en mis pruebas con Hermes Agent he preferido dar un paso atrás y realizar una instalación directa sobre el sistema operativo, utilizando un entorno virtual de Python.
El peligro de la ventana de contexto y la sangría de tokens
Aquí está uno de los grandes secretos que casi nadie te explica al principio. Cuando ejecutas el asistente de configuración inicial de Hermes Agent, te entran ganas de activar absolutamente todas las características que te ofrece: herramientas de visión, utilidades del sistema, navegación web, traducción... ¡todo suena fantástico! Pero hay una trampa invisible en la que es muy fácil caer.
El superpoder de los perfiles aislados (Profiles)
La solución definitiva a este problema de consumo y rendimiento tiene un nombre: perfiles. Hermes Agent te permite crear tantos perfiles aislados como consideres oportuno.
Modelando el Alma y la Memoria de tu Agente
En el podcast te detallo cómo dar personalidad a tu agente a través del archivo de alma. A mi asistente personal, que he bautizado como Chloe, le he configurado un tono sarcástico, irónico y burlón. Me encanta interactuar con ella de esta manera porque rompe completamente con la clásica respuesta robótica y aburrida de otras inteligencias artificiales comerciales; se siente como hablar con un colega de verdad. Eso sí, te doy pautas para redactar este archivo con cuidado, ya que un "alma" demasiado extensa también te comerá espacio de contexto útil de forma innecesaria.
Ampliando fronteras: MCP, Telegram y automatizaciones automáticas
Por último, abordamos el fantástico protocolo MCP (Model Context Protocol), que nos permite dotar de "manos y ojos" a nuestro agente.
Y para rematar la jugada, la integración con Telegram y Matrix. Es una auténtica delicia poder ir caminando, mandarle un audio desde el móvil a mi bot de Telegram, que este use Whisper en local para transcribir mi voz, procese lo que le pido y me conteste con otro audio sintetizado a la velocidad que yo le he configurado de antemano. Todo ello combinado con tareas programadas (Cron) y un tablero de Kanban interno con el que el propio agente se organiza y ejecuta flujos de trabajo de forma completamente autónoma.
Te invito a que te prepares un buen café, te pongas los auriculares y disfrutes de este viaje de configuración avanzada de 0 a 100.
CAPÍTULOS DEL AUDIO:
00:00:00 Introducción: Mi día a día con OpenCode y Hermes Agent00:01:26 El problema de los tutoriales básicos e instalación00:03:00 Configuración inicial y la sangría de tokens00:04:47 Archivos clave y estructura interna de Hermes00:05:56 Creando "Skills" personalizadas y configurando API Keys00:08:15 Perfiles aislados (Profiles): Qué son y por qué los necesitas00:11:00 Cómo clonar y gestionar tus perfiles sin romper nada00:13:35 soul.md: Diseñando el "Alma" y el tono de tu asistente00:15:28 memory.md: El gran desafío de la memoria y el RAG en Rust00:17:38 Expandiendo capacidades con MCP y conversión de voz00:20:47 Llevando tu agente a Telegram con Cron y Kanban integrado00:27:18 Reglas de oro para optimizar tu contexto y despedidaMon, 22 Jun 2026 - 31min - 807 - ATA 806 No memorices más comandos. Que Linux y tu IA trabajen para ti
Seguro que si eres de los míos, de los que disfrutan pasando el rato en la terminal o montando servicios en casa, te habrás dado cuenta de que acabamos haciendo tareas repetitivas casi sin querer. Para poner fin a este caos cotidiano te traigo una herramienta espectacular que se llama Just.
Pero la verdadera razón por la que he querido dedicarle este pódcast a Just de nuevo es por una experiencia divertidísima que he tenido estos últimos días con mi asistente de inteligencia artificial local, al que cariñosamente llamo Hermes. Yo soy una persona bastante perezosa para ciertas tareas repetitivas y me gusta poner a trabajar a las máquinas por mí. Normalmente, al acabar mis entrenamientos de carrera, le dicto un audio a Hermes detallando la distancia, las pulsaciones y el ritmo para que él los registre. Pero el otro día, llevado por la vaguería máxima, decidí simplemente hacer una captura de pantalla de la aplicación del móvil y enviársela por Telegram.
Hermes, que es una maravilla de asistente, aplicó un sistema de lectura de imágenes (OCR) llamado Tesseract, extrajo todos los datos de mi carrera y los guardó en un periquete. Yo me quedé encantado y pensé que la vida ya estaba resuelta. Sin embargo, al día siguiente repetí el proceso y... ¡sorpresa! Hermes se había olvidado por completo de cómo lo había hecho. Me preguntó qué quería que hiciese con la imagen y, cuando le recordé lo del día anterior, me soltó que no tenía la herramienta de lectura instalada en su entorno de trabajo. Tuve que guiarle de nuevo de la mano paso a paso.
Ahí fue donde se me encendió la bombilla. Las inteligencias artificiales a veces se despistan y tienen una memoria muy volátil para los flujos de trabajo técnicos. La mejor forma de darles estabilidad es crearles un recetario claro, un archivo "justfile" donde tengan todas sus habilidades documentadas y listas para ejecutar con un simple comando. Así, Hermes nunca más olvidará cómo procesar una imagen o cómo gestionar un contenedor, porque solo tiene que invocar la receta correspondiente.
En este episodio quiero animarte a que pruebes Just en tu propio día a día, uses o no inteligencia artificial.
Capítulos del episodio:
00:00:00 Introducción: Olvídate de repetir comandos00:01:33 El problema con Hermes: Por qué las IA también se despistan00:03:04 ¿Qué es Just y cómo funciona?00:04:59 Cómo instalar Just en Linux00:05:31 Comparativa: Just contra Make y Task00:06:42 Gestión de variables, argumentos y funciones00:08:49 Atributos de receta para afinar su comportamiento00:10:00 El comportamiento de las líneas y el poder del Shebang00:11:00 Funciones integradas y ajustes globales00:12:00 Operadores, expresiones y dependencias complejas00:13:00 Usando intérpretes alternativos (Bash, Python, Node) en Just00:14:18 Recetas normales frente a recetas Shebang y scripts00:15:33 Módulos e importación de recetas externas00:16:38 El selector interactivo con búsqueda difusa (just choose)00:17:37 Alias, grupos y autocompletado en tu shell00:18:09 Casos prácticos de uso real (Sysadmin, Docker, Backups)00:19:18 Documentación viva y ejecutable para todo el mundo00:20:17 Control de versiones con Git y límites de Just00:21:10 Una historia de pereza, Hermes, deporte y OCR que se olvida00:22:59 Conclusiones: Simplifica tu vida con este ejecutor de comandos00:24:58 Cierre del episodio y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 18 Jun 2026 - 26min - 806 - ATA 805 El fin de los programadores? Qué es el Vibe Coding y cómo te cambia la vida
Hoy en Atareao con Linux vamos a hablar largo y tendido sobre el Vibe Coding y cómo está cambiando por completo las reglas del juego en este 2026.
Si estás escuchando esto mientras vas al trabajo, cocinas o das un paseo, y crees que esto no va contigo porque nunca has tocado una sola línea de código... ¡espera! No toques el botón de siguiente episodio. Este podcast es precisamente para ti. ¿Alguna vez has tenido esa pequeña idea en la cabeza de una aplicación sencilla que te solucionaría la vida, pero la has descartado porque no sabes programar o no tienes tiempo para aprender? El Vibe Coding es el puente que te va a permitir cruzar esa brecha y hacer realidad tus ideas explicándoselas a la tecnología igual que me las explicarías a mí, con tus propias palabras.
El nacimiento de un nuevo paradigma: Del "Vibe" al Agentic Engineering
Para entender esta auténtica locura nos tenemos que remontar a febrero de 2025. Andrej Karpathy, una de las mentes más brillantes en el mundo de la Inteligencia Artificial (ex OpenAI y ex Tesla), lanzó un tuit que corrió como la pólvora por todo internet. En ese mensaje acuñó el término Vibe Coding: una nueva forma de programar en la que te dejas llevar por las vibraciones, abrazas el crecimiento exponencial y te olvidas de que el código realmente existe. La idea caló de tal forma que se convirtió en la palabra del año para el diccionario Collins y hoy, un año después, el 84% de los programadores la integran en su rutina.
Mi experimento en directo: Una aplicación a medida por dos céntimos
A mí no me gusta hablar de oídas, así que al principio del episodio me he puesto manos a la obra. He abierto mi terminal de Linux, he lanzado una herramienta de código abierto maravillosa llamada OpenCode y le he pedido que crease una aplicación para la terminal en Rust para gestionar mis tareas (un TODO clásico)
¿Qué herramientas tenemos a nuestro alcance en 2026?
• Cursor
• Lovable
• Claude CodePor otro lado, si eres de los míos y te apasiona el código abierto:
• OpenCode.
• Cline.
• OpenHands
• AiderEl lado oscuro: Las trampas de la falsa seguridad
No todo es perfecto y es de vital importancia hablar del lado oscuro de esta tecnología. Es una trampa cognitiva de falsa confianza de manual.
La conclusión: La IA no te quitará el trabajo, pero sí cambiará el juego
Capítulos del episodio:
00:00:00 Introducción al Vibe Coding y la revolución del desarrollo00:01:40 El origen del Vibe Coding y cómo empezar con un prompt00:05:50 ¿Qué es realmente el Vibe Coding y qué es el Agentic Engineering?00:08:20 ¿Para quién sirve el Vibe Coding? Productividad, MVPs y aprendizaje00:09:40 Herramientas privativas de Vibe Coding: Cursor, Lovable y Claude Code00:13:25 Alternativas de Código Abierto (Open Source): OpenCode, Cline, OpenHands y Aider00:17:05 Demostración en vivo: Ejecutando nuestra aplicación TODO en Rust por dos céntimos00:22:50 El lado oscuro del Vibe Coding: Seguridad, vulnerabilidades y deuda técnica00:26:30 Cómo aprovechar la Inteligencia Artificial sin arruinar tu código00:30:05 El futuro del desarrollo de software y despedida
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 15 Jun 2026 - 32min - 805 - ATA 804 El editor que uso en mis servidores (y no es NeoVim)
Si has estado escuchando los últimos capítulos, te habrás dado cuenta de que he estado sumergido de lleno en el fascinante (y a veces abrumador) mundo de la Inteligencia Artificial. De vez en cuando mi mente me pide a gritos un descanso. Y para mí, descansar significa volver a los orígenes: ponerme a cacharrear con la terminal y escribir código en Rust.
En el episodio de hoy quiero cambiar completamente de tercio. Te voy a contar mi experiencia de las últimas semanas saliendo de mi zona de confort con un editor de texto modal que me tiene maravillado en los servidores, y te presentaré cuatro herramientas que he desarrollado en Rust para solucionar pequeños problemas del día a día directamente en la consola de comandos. Así que, ponte cómodo mientras cocinas, vas de camino al trabajo o das un paseo, ¡porque nos vamos directos al turrón!
El gran dilema de la terminal: ¿Por qué uso Helix en mis servidores si soy fiel a NeoVim?
Los que me seguís desde hace tiempo sabéis que mi editor de cabecera en mi equipo de trabajo habitual es NeoVim. Llevo muchísimos años puliendo mi configuración y, a día de hoy, tengo más de cien plugins instalados que hacen que mi entorno sea espectacular: autocompletado instantáneo, una barra de estado genial, un explorador lateral de archivos y un sistema de análisis de código brutal. Pero, ¿qué pasa cuando me conecto por SSH a mis servidores de producción? Normalmente, estos servidores corren distribuciones Ubuntu de soporte a largo plazo con paquetes más antiguos, por lo que mi configuración de NeoVim moderna empieza a fallar estrepitosamente.
Instalar y mantener más de cien plugins en cada uno de los servidores que gestiono es un dolor de cabeza inmanejable. Para solucionar esto sin renunciar a la agilidad de un editor modal en terminal, decidí darle una oportunidad a Helix.
Peleándome con la memoria muscular
Tengo que confesarte que adaptarme a Helix ha sido un ejercicio duro para mis dedos. Cuando llevas años interiorizando los comandos de Vim, tu cerebro automatiza la edición.
Mis herramientas caseras desarrolladas en Rust
Aquí te hablo de ellas en detalle:
1. mkdr (Markdown Reader/Render): Como todos mis artículos de atareao.es y mis notas personales están guardados en formato Markdown, necesitaba un renderizador potente para leerlos cómodamente desde la consola de comandos.
2. id3cli: Automatizar los metadatos de los episodios de este podcast es crucial para mí.
3. rustled: Para que mi asistente de inteligencia artificial, Cloe, pudiera comunicarse conmigo por voz, necesitaba una herramienta de texto a voz (Text-to-Speech) flexible
4. ssrs: Si en algún momento no dispongo de conexión a internet o prefiero que los textos se procesen con absoluta privacidad, recurro a susurros.
00:00:00 Introducción y un descanso de la Inteligencia Artificial00:00:56 ¿Qué es Helix y por qué me costó al principio?00:02:27 El problema de llevar NeoVim (y sus plugins) a los servidores00:06:23 Primeros pasos con Helix: el tutor y las diferencias con Vim00:09:34 Pantalla dividida, multicursor y velocidad extrema00:10:54 Temas, resaltado de sintaxis de serie y comandos00:15:12 Mis propias herramientas: renderizar Markdown en terminal con mkdr00:18:40 Navegación estilo Wiki y otras ventajas de mkdr00:20:18 id3click: gestionando etiquetas MP3 sin depender de terceros00:21:52 Dándole voz a Cloe: raslet y la API de Microsoft Edge TTS00:24:35 susurros: generación de voz 100% en local con Rust00:26:55 El futuro: ssrs (Whisper en Rust) y conclusiones00:28:35 Recomendación de podcast: Legalmente Productivos y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 11 Jun 2026 - 30min - 804 - ATA 803 Planifica tu menú y compra con IA. RAG, MCP y Skills para humanos
Olvídate de hacerle preguntas genéricas a ChatGPT; hoy vamos a ver cómo sacarle partido real y práctico a la tecnología para solucionar problemas cotidianos y quitarnos de encima la fatiga de decisión diaria.
Seguro que te suena la película: post-its en la nevera, hojas de cálculo que se quedan desactualizadas y el clásico "¿qué cenamos hoy?" que acaba en improvisación o en una compra desorganizada. Para evitar esto, he diseñado un ecosistema de agentes basados en cuatro cajas de herramientas que llamamos MCP (Model Context Protocol). Estos protocolos permiten que la IA no solo responda preguntas, sino que interactúe de forma directa con mis datos y aplicaciones externas.
Te explico de forma muy sencilla las piezas que componen este sistema:
El RAG Semántico para las recetas: Tengo una base de datos vectorial con unas 1.700 recetas cargadas en PostgreSQL mediante pgvector. La clave es que no busco platos por coincidencia exacta de palabras. Si le digo que quiero "algo rápido y ligero con verdura", el sistema realiza una búsqueda semántica, entiende lo que busco y me propone las mejores opciones. Todo esto se procesa de forma económica mediante OpenRouter sin necesidad de tener una potente GPU en local.Los Skills y SQLite: Los "Skills" definen los procesos exactos que debe seguir el modelo. Le he marcado unas pautas sencillas: platos únicos mediterráneos para comer y cenas ligeras. Toda esta información se gestiona en una base de datos SQLite muy ligera.Lógica difusa en la lista de la compra: El asistente es capaz de agrupar ingredientes similares. Si dos recetas piden tomates en formatos distintos (por ejemplo, "tomates a granel" y "100g de tomates"), la lógica difusa los unifica bajo un mismo concepto para evitar duplicados en la lista de la compra, organizando además los productos por pasillos o secciones (como frutería o carnicería).Typst para exportar a PDF: Para ver el menú en una tablet o imprimirlo para la nevera, utilizo Typst, una alternativa moderna a LaTeX que me genera unos documentos PDF impecables en cuestión de segundos.Además, te cuento cómo puedes montar todo esto en local de manera gratuita con Ollama, y aprovecho para actualizarte sobre mis andanzas de vuelta al "cacharreo" puro en Linux: desde mis experiencias recientes con el editor Helix y "mkdr" (mi renderizador de Markdown para terminal), hasta "podcli", una pequeña utilidad para exprimir los feeds de podcast desde la consola.
Espero que disfrutes de este episodio tanto como yo montando todo este tinglado. ¡A cacharrear!
Capítulos del episodio:
00:00:00 Agentes de IA que de verdad nos facilitan la vida00:01:42 El ejemplo práctico: Automatizar nuestro menú semanal00:03:51 La fatiga de decisión y por qué la disciplina humana falla00:05:38 Mi caja de herramientas: 4 MCPs (Model Context Protocol)00:06:58 Buscando comida con IA: El RAG semántico de 1700 recetas00:08:45 Búsqueda híbrida y embeddings económicos sin usar GPU local00:10:00 Simplificando las comidas: El papel de los "Skills"00:11:58 Organizando la base de datos de manera sencilla con SQLite00:13:31 Lógica difusa: Evitando duplicados en la lista de la compra00:15:23 Creando PDFs bonitos con Typst (la alternativa moderna a LaTeX)00:17:03 Demostración en directo: Generando el menú de la semana00:19:12 Automatización total: Generación automática de menús con Cron00:20:19 Revisión del menú, las recetas y la alternativa local con Ollama00:23:12 De vuelta al "cacharrero" de Linux: Helix, mkdr y Podcli00:24:51 Próximos episodios: Instalación desde cero a producción de Hermes00:25:38 Despedida y cierre del episodioMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 08 Jun 2026 - 26min - 803 - ATA 802 Conectado Hermes Agent a Internet y YouTube
Si en el episodio anterior te hice una pequeña introducción de lo que es capaz de hacer este agente, hoy quiero bajar al barro contigo y contarte cómo le he dado ojos a nuestro modelo para que pueda explorar internet, documentarse y encontrar la mejor información de forma completamente soberana, libre de anuncios y con el máximo respeto por nuestra privacidad.
En este episodio nos vamos a centrar en dos "conectores" brutales que he integrado en su arsenal: uno para realizar búsquedas en la web general y otro para realizar búsquedas avanzadas en YouTube.
SearXNG: Tu propio Google privado y sin publicidad
La primera pieza de este rompecabezas es SearXNG. Es una herramienta maravillosa que actúa como un buscador de buscadores. En lugar de ser un motor de búsqueda que rastrea la web entera por su cuenta, SearXNG lo que hace es consultar de forma simultánea a los grandes del sector: Google, Bing, Brave, DuckDuckGo y los que tú decidas. Recopila las respuestas de todos ellos, limpia los molestos rastreadores que intentan identificarte, elimina los anuncios y te devuelve una lista limpia de resultados.
Invidious: Buscando en YouTube con total soberanía
La segunda herramienta que le he dado a Hermes es Invidious, y tiene un propósito muy claro: facilitarle el acceso a la inmensa base de conocimientos que es YouTube.
La magia de los subagentes paralelos
Lo que me tiene entusiasmado de este sistema es la capacidad de Hermes de combinar ambas herramientas de forma autónoma gracias a los subagentes. Imagina que le pido a Hermes que me recomiende cómo aprender a programar en el lenguaje Rust. En lugar de darme una respuesta estática, Hermes decide de forma inteligente lanzar dos subagentes: uno se va a la web a través de SearXNG a buscar documentación oficial y artículos de referencia, mientras que el otro se va a YouTube a través de Invidious para buscar cursos en vídeo.
Ambos asistentes virtuales regresan con sus hallazgos y Hermes hace un cruce de datos espectacular.
El poder de los contenedores Docker
Para montar todo esto sin complicarme la vida ni ensuciar el sistema operativo de mi equipo principal, he recurrido a mis queridos contenedores Docker. Cada herramienta corre en su propio compartimento aislado. Da igual que SearXNG use unas librerías de Python concretas o que Invidious requiera otras dependencias distintas; al estar encapsulados, nunca entran en conflicto. Si quiero actualizar algo, simplemente descargo la nueva versión del contenedor y listo. En la entrada del blog te dejaré las plantillas de Docker Compose preparadas para que tú también puedas desplegarlas en tu servidor y empezar a cacharrear hoy mismo.
CAPÍTULOS DEL EPISODIO:
00:00:00 Presentación: El asistente de IA definitivo y la soberanía digital00:01:40 ¿Qué es un MCP (Model Context Protocol)?00:03:26 SearXNG: Tu propio motor de búsqueda privado y sin anuncios00:05:53 Poniendo a prueba las búsquedas web con Hermes00:07:32 Cómo está montada la infraestructura de búsqueda con Docker00:08:48 Automatización real: Creación de documentos con información web00:09:38 Invidious: YouTube sin publicidad y sin rastreo00:11:43 Buscando y analizando vídeos de YouTube con Hermes00:16:20 Superpoderes combinados: Búsqueda web + YouTube00:20:40 Por qué autoalojar todo en contenedores Docker independientes00:22:04 Analizando la recomendación razonada de la IA para aprender Rust00:24:09 Próximo episodio: Planificación de menús y bases de datos vectoriales00:25:09 Taller presencial en Linux Center de Slimbook (¡ven a cacharrear!)00:26:00 Despedida y cierre del episodioMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 04 Jun 2026 - 27min - 802 - ATA 801 Hermes Agent y subagentes en directo. ¿Qué puede salir mal?
Hoy te traigo un episodio que se sale completamente de lo habitual y que ha supuesto un auténtico terremoto en mi forma de plantear los contenidos. Todo viene de un cambio de estrategia radical que decidí tomar tras pararme a analizar las estadísticas de los últimos programas. Me di cuenta de un detalle muy tonto pero crucial: te estaba hablando de herramientas increíbles, de los maravillosos conectores MCP y de bases de datos súper avanzadas... ¡pero no te había mostrado al verdadero protagonista de la película! Te estaba hablando de accesorios y complementos sin enseñarte el agente de Inteligencia Artificial que los gobierna a todos. Es como si te diera un manual de bujías sin mostrarte el motor del coche. Así que he decidido pausar el resto de temas técnicos y traerte directamente a Hermes Agent. Y para hacerlo de la manera más honesta y didáctica posible, hoy no te lo voy a contar yo solo: he dejado que mi propio agente de IA local tome el control del micrófono para demostrarte de lo que es capaz en tiempo real, sin nubes y sin cortes.
El cerebro que vas a escuchar hablar a lo largo de este podcast se llama Lara. Es el agente que he configurado utilizando como cimiento el proyecto de código abierto Hermes Agent.
Para demostrar que este tipo de tecnologías está al alcance de cualquiera y no requiere un hardware inalcanzable, he configurado a Lara para que funcione en un Slimbook One de lo más modesto. No cuenta con tarjeta gráfica (GPU) ni coprocesadores de IA (NPU); corre única y exclusivamente tirando de CPU, de procesador clásico. Para que podamos comunicarnos con ella y escucharla, utilizamos herramientas locales tanto para el reconocimiento de voz (Whisper) como para el paso de texto a voz (TTS). Al no disponer de un hardware de aceleración dedicado, notarás que la voz de Lara suena con ese puntito robótico clásico del software local y que a veces pronuncia de forma un tanto peculiar palabras en inglés como "YouTube" o "skills". Pero te aseguro que, en cuanto la escuchas interactuar un rato y negociar el guion del programa, le coges un cariño increíble. Especialmente porque Lara no tiene esa amabilidad artificial y empalagosa de los asistentes comerciales que te dicen "claro, con gusto te ayudo"; ella tiene su propia personalidad.
En este programa vas a poder escuchar de primera mano cómo funciona este sistema a través de siete demostraciones reales y en tiempo real. Aunque preparamos un guion base inicial, las últimas pruebas las hicimos completamente al azar y sin red para ver hasta dónde podíamos exprimir la CPU del Slimbook:
Demo 1: Lara realiza una búsqueda en vivo en Internet sobre las últimas tendencias y vídeos de agentes de IA localesDemo 3: Mi demostración favorita. Conectamos una base de datos local con más de 1600 recetas a nuestra lista de la compra inteligente.Demo 4: Accedemos a mi archivo personal de más de 3300 notas de texto y tareas pendientes integradas.Demo 5: Conectamos a Lara con mis datos de Strava del último mes. Demos 6 y 7: El experimento final sin red. Lara resume las noticias de tecnología más destacadas.Capítulos del episodio
00:00:00 Cambio de estrategia: ¿Por qué necesitas un agente?
00:03:36 Presentación de Lara y su cerebro local
00:05:32 Demo 1: Búsqueda y análisis de información en Internet
00:07:53 Demo 2: Multitarea paralela con subagentes
00:09:51 Demo 3: Recetas de cocina y compra inteligente
00:13:58 La importancia de la búsqueda semántica en tus notas
00:14:48 Demo 4: El sistema de notas y tareas conectadas
00:16:51 Demo 5: Controlando mis entrenamientos con Strava
00:19:14 De la teoría al caos: Demos aleatorias sin red
00:20:21 Demo 6: Noticias de tecnología e IA al día
00:22:29 Demo 7: Resumen inteligente de textos extensos
00:26:14 Taller presencial de Valencia: Trasteando con Hermes
00:28:51 Hermes vs OpenClaw: La experiencia real de Daniel Primo
00:29:52 Privacidad y hardware: Modelos ejecutados en CPU local
00:30:26 Cierre del episodio y comunidad AtareaoMon, 01 Jun 2026 - 31min - 801 - ATA 800 Enseña a tu IA a recordar tareas y ahorra tokens
¡Episodio 800 de Atareao con Linux! Parece que fue ayer cuando empecé a grabar las primeras entregas compartiendo mis andanzas en el mundo de los servidores y el código abierto, y mirad hasta dónde hemos llegado. Muchísimas gracias de todo corazón por acompañarme en este viaje, por cada comentario, por cada descarga y por estar siempre ahí al otro lado del auricular trasteando y cacharreando conmigo.
Para conmemorar este número tan redondo, hoy vamos a seguir explorando el apasionante mundo del Model Context Protocol (MCP), esa tecnología que está revolucionando la forma en la que interactuamos con la Inteligencia Artificial de forma local. Si en el episodio anterior nos centramos en una herramienta pasiva para consultar la previsión del tiempo, hoy vamos a dar un paso de gigante hacia la acción. Te voy a explicar en detalle cómo he diseñado e implementado un servidor MCP ToDo que dota a tu IA local de una memoria persistente a largo plazo. Sí, has escuchado bien: ¡vamos a curar de una vez por todas la amnesia de los modelos de lenguaje!
Mi propuesta: Un gestor de tareas local programado en Rust
Para atajar este problema, me puse manos a la obra y programé un servidor MCP específico para la gestión de tareas utilizando Rust.
Poniéndolo a prueba en vivo y en directo
Durante el episodio de hoy te cuento exactamente cómo tengo desplegada esta solución en mi servidor doméstico.
Optimización de tokens: El arte de no saturar a la IA
Un detalle técnico fundamental que abordo en este episodio es el control y optimización del contexto.
Capítulos del episodio:
00:00:00 Intro: El hito del episodio 800 y el problema de la memoria en las IA 00:00:32 El consumo de tokens y los límites de la ventana de contexto 00:01:22 Herramientas externas para dotar de memoria a los modelos de lenguaje 00:03:26 Solucionando la "amnesia" de la IA con una base de datos local 00:04:44 Implementación técnica: Un servidor MCP rápido en Rust con Podman y Docker 00:06:14 Cómo configurar la integración del MCP ToDo en OpenWeb UI paso a paso 00:08:29 Demostración en vivo: Listar, añadir y consultar tareas pendientes 00:09:56 El reto del lenguaje natural, el formato de fechas y los logs internos 00:12:05 Gestión avanzada: Marcar tareas completadas y asignar etiquetas 00:14:52 ¿Cómo funciona bajo el capó? Operaciones CRUD y base de datos relacional 00:16:42 Por qué elegí SQLite frente a JSON (búsquedas rápidas con FTS5) 00:18:22 El truco para evitar que tu IA colapse: Paginación y control de tokens 00:20:20 Seguridad de archivos: El rol del MCP como intermediario seguro 00:22:16 El siguiente nivel: De la consulta pasiva de información a la escritura activa 00:23:21 El puente definitivo hacia las bases de datos vectoriales y RAG 00:23:58 Próximo Workshop presencial sobre IA local en Linux Center (Slimbook) 00:24:52 Código abierto en GitHub, infografías de Atareao y avance del próximo episodio 00:25:54 Despedida, comunidad y la red de podcasts de Sospechosos HabitualesMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 28 May 2026 - 27min - 800 - ATA 799 Rompe la caja de cristal de tu IA. Conéctala a la VIDA
En el episodio anterior te estuve hablando de tres pilares fundamentales que cambian por completo las reglas del juego cuando queremos ir un paso más allá de los modelos de lenguaje convencionales: el RAG (la memoria), las habilidades y las herramientas. Hoy no nos vamos a quedar en las nubes de la teoría. Hoy nos arremangamos y vamos directos al turrón con un ejemplo totalmente práctico, porque al final lo que queremos es ver cómo se hace, cómo se lleva a cabo en nuestro propio servidor y cómo podemos empezar a sacarle partido a estas tecnologías desde ya.
¿Por qué Rust es el rey del cacharreo con MCPs?
Si buscas tutoriales en la red, verás que la inmensa mayoría de servidores MCP se desarrollan en Python. No me malinterpretes, Python es fantástico para escribir código rápido, pero en el mundo de los microservicios autohospedados y los contenedores tiene ciertos inconvenientes difíciles de ignorar. Python tarda más en arrancar y consume una cantidad considerable de memoria RAM por el simple hecho de existir.
Por este motivo decidí programar todos mis MCPs utilizando Rust. Rust nos compila un binario nativo, limpio y directo. No hay intérpretes pesados de por medio. La latencia de respuesta es prácticamente cero, el consumo de memoria es insignificante y se ejecuta a una velocidad de vértigo. Además, gracias a editores modernos equipados con IA como OpenCode, una vez que logras pulir y estructurar tu primer MCP en Rust (por ejemplo, el del tiempo), crear el siguiente es sencillísimo. Solo tienes que proporcionarle a tu herramienta de código la estructura de tu primer desarrollo y pedirle que adapte esa misma lógica para conectar cualquier otra API o base de datos que necesites. ¡Es una delicia ver cómo escala el sistema!
Bajo el capó: APIs públicas, Docker y Quadlets
Para hacer realidad este MCP meteorológico, he combinado el poder de dos APIs públicas muy conocidas:
Nominatim (OpenStreetMap): Como las APIs del tiempo necesitan coordenadas geográficas (latitud y longitud), Nominatim se encarga de traducir textos legibles como "Valencia" o "Tokio" en datos numéricos de localización.Open-Meteo: Recibe las coordenadas enviadas por el MCP y devuelve la previsión meteorológica actual, horaria o diaria sin necesidad de usar claves de API complejas ni registros restrictivos.Todo este flujo de datos se empaqueta de forma elegante en un contenedor de Docker y se gestiona mediante un Quadlet de Podman para garantizar que se inicie de forma nativa e integrada con el sistema operativo de nuestro servidor.
Y más adelante nos sumergiremos en el fascinante universo del RAG local.
Capítulos del episodio:
00:00:00 Introducción y repaso del episodio anterior00:00:43 El problema de los modelos estáticos de IA00:01:29 El ejemplo práctico: Preguntando el tiempo00:03:20 Ahorro extremo de tokens con MCP00:04:49 Taller de IA agéntica y automatización con Slimbook00:06:22 Cacharreando con DeepSeek V4 Flash en OpenCode00:07:33 ¿Qué es y cómo funciona un MCP?00:09:13 Por qué desarrollo mis MCPs en Rust (y no en Python)00:11:13 Limpieza de datos y gestión de errores00:12:40 Cómo conectar un MCP a Open Web UI paso a paso00:14:18 Probando la previsión meteorológica en vivo00:15:37 El motor bajo el capó: Open-Meteo, Nominatim y Docker00:17:25 Codegraph: Analizando código para ahorrar tokens00:18:22 Próximo episodio: Guardar tareas persistentes con MCP To Do00:19:48 Otros MCPs listos para el taller de IA00:21:22 El futuro del podcast: RAG local, notas y más cacharreo00:22:50 Despedida, enlaces de interés y cierreMás información, enlaces y notas en https://atareao.es/podcast/799🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao
Mon, 25 May 2026 - 24min - 799 - ATA 798 ¡Tu IA es TONTA! Dale manos y cerebro
Este episodio nos vamos a meter de lleno en el barro del cacharreo del bueno para hablar de algo que me tiene completamente entusiasmado y sin dormir de la emoción en los últimos días: el maravilloso e increíble mundo del futuro agéntico. Sí, sí, has oído bien. Vamos a desgranar cómo dar el salto definitivo de esos chats de Inteligencia Artificial tan aburridos en los que solo escribes una pregunta y esperas una respuesta, a tener un auténtico colaborador activo que haga tareas reales por ti en tu propia máquina.
Seguro que te ha pasado alguna vez. Estás usando un modelo de lenguaje, le pides ayuda para tu proyecto personal o para organizar tus notas de Linux, y de repente te das cuenta de que la IA se ha quedado congelada en el tiempo. Su conocimiento es completamente estático, no tiene ni la más remota idea de tus datos, de tus notas en Markdown, de tus contenedores ni de tus flujos de trabajo. Y lo peor de todo: cuando no sabe algo, en lugar de callarse, ¡se lo inventa con una tranquilidad que asusta! Básicamente, alucina. Las IAs de hoy en día, tal y como nos las venden de fábrica, están completamente aisladas del entorno, del tiempo y de tus propios procesos de trabajo. Son como un trozo de corcho flotando a la deriva en mitad del océano: muy ligeras y con potencial, pero incapaces de hacer nada útil de forma autónoma.
¿Y cuál es la solución para dejar de tener una IA "tonta" y aislada? No se trata de una única tecnología mágica, sino de combinar con cabeza tres piezas fundamentales que le darán superpoderes a tu asistente: el RAG (la memoria), los MCP (las manos) y las Skills (los manuales de instrucciones).
Cuando consigues orquestar estas tres piezas en tu propio host local, la magia ocurre. Consigues crear un asistente de verdad, como mi querido Hermes, que es capaz de redactar los textos que necesito para este podcast, gestionar mis recordatorios y organizar mis notas de forma totalmente autónoma mientras yo me lo paso pipa programando.
Capítulos del episodio:
00:00:00 ¡Bienvenidos al futuro agéntico!
00:01:21 Lo que se viene en este episodio (y en los próximos)
00:02:42 ¿Por qué las IAs hoy en día son "tontas" e inútiles?
00:04:36 La solución: Skills, RAG y MCP explicados fácil
00:06:14 La analogía del nuevo empleado en tu empresa
00:07:38 El agente de IA como el gran director de orquesta
00:08:21 ¿Qué es el RAG? (Conocimiento en tiempo real sin fine-tuning)
00:11:17 Mi RAG propio en Rust para archivos Markdown
00:12:39 ¿Qué es el MCP? (La revolución de Anthropic)
00:14:55 Cómo usar MCP para conectar tu IA con el mundo real
00:16:14 Mis servidores MCP: SearXNG, Invidious y listas de tareas
00:18:10 Skills: Ahorro de tokens y flujos de trabajo inteligentes
00:20:11 La matriz definitiva: Memoria, Manos y Manuales
00:22:04 De un chat reactivo a un colaborador activo (Mi asistente Hermes)
00:23:54 Próximos pasos, descargas de código y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 21 May 2026 - 25min - 798 - ATA 797 Como Usar Agentes de IA sin arruninarte. Opencode Go y Openrouter
¿Quieres usar agentes de IA para programar sin arruinarte? En este episodio de atareao con Linux comparo las dos opciones más interesantes para desarrolladores en 2026: OpenCode Go y OpenRouter.
Durante las últimas semanas he estado completamente volcado con OpenCode, usándolo tanto para generar código como para revisar código existente. Y en el proceso me he encontrado con una pregunta clave: ¿cómo accedo a los modelos de IA sin arruinarme?
La respuesta no es trivial. Tienes dos opciones clásicas: comprar hardware dedicado o pagar servicios en la nube como ChatGPT o Gemini. Pero hay una tercera vía: combinar herramientas open source con servicios de bajo coste.
En este episodio te cuento:
Qué es OpenCode Go y por qué $10/mes pueden ser suficienteQué es OpenRouter y cómo usar 400+ modelos (algunos gratis)Comparativa directa de precios, modelos, ventajas y desventajasCuál elegir según tu caso de usoCaso práctico: cómo mejoré mi herramienta Shul con skills de Rust y ReactPor qué las skills son el verdadero game-changer de los agentes de IATambién te adelanto lo que viene en los próximos episodios: flujo de trabajo completo con skills, RAG, MCPs... la cosa se pone muy caliente.
Capítulos:
00:00 — Introducción: el dilema de la IA y el dinero
02:30 — ¿Qué es OpenCode?
04:50 — OpenCode Go: la suscripción de $10/mes
08:20 — OpenRouter: el agregador de 400+ modelos
10:50 — Comparativa directa
13:00 — Caso práctico: mejorando Shul con Skills
16:00 — El poder de las Skills
19:00 — Conclusiones y cuál elegir
22:00 — Próximos episodiosMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoSi te ha gustado, deja una reseña en Spotify y comparte el episodio con alguien que esté interesado en la IA aplicada al desarrollo. ¡Nos escuchamos el próximo jueves!
Mon, 18 May 2026 - 24min - 797 - ATA 796 Lleva la IA a otro nivel! Descubre el POTENCIAL de las SKILLS
En el episodio de hoy, el número 796, vengo con muchas ganas de contarte algo que me tiene completamente fascinado.
Pero vamos a lo importante: las Skills o habilidades. Si creías que la inteligencia artificial era solo un chat donde escribir preguntas y recibir respuestas, prepárate, porque hoy vamos a ver cómo dotar a nuestros modelos de lenguaje de auténticos "superpoderes" técnicos.
¿Qué son realmente las Skills?
Imagina que en lugar de darle instrucciones genéricas a tu modelo (lo que conocemos como prompt), le proporcionas una estructura especializada. Una Skill es una herramienta transversal que le enseña al modelo a comportarse como un experto en una materia concreta. Lo maravilloso es que estas habilidades no dependen de un solo modelo; puedes usarlas con Claude, con OpenCode, con Hermes o con cualquier otro agente. Es una forma de democratizar el conocimiento técnico y hacerlo reutilizable.
En este episodio te cuento mi experiencia personal utilizando estas habilidades para tareas que, de normal, nos llevarían bastante tiempo de configuración. Desde crear contenedores Docker optimizados hasta gestionar bases de datos complejas sin escribir una sola línea de SQL.
Soberanía Digital y Potencia Local
Ya sabes que me encanta el lema de "yo me lo guiso, yo me lo como". Aunque existen servicios externos muy económicos para correr estos modelos, nada supera la sensación de tener el control total. Te hablo de mi configuración actual: un Slimbook con una Nvidia GeForce RTX 4060 Ti de 16 GB de VRAM. Con este hardware estoy corriendo modelos como el Qwen de 35 billones de parámetros con una fluidez espectacular. Aquí es donde la soberanía digital cobra sentido: mis datos, mis reglas y mi hardware.
Ejemplos prácticos: Docker y SQLite
A lo largo del audio, te guío por dos ejemplos que me han dejado con la boca abierta:
Docker Expert.SQLite Expert.La Anatomía de una Skill: Bajo el capó
Menciono también el increíble trabajo de Daniel Primo en Web Reactiva, quien ha profundizado muchísimo en este tema de las Skills y cuya guía ha sido una fuente de inspiración fundamental para experimentar con todo esto.
Conclusión: El futuro es el lenguaje natural
Capítulos:
00:00:00 El troleo a David y la importancia del feedback00:00:41 Introducción a las Skills: Dale "poderes" a tu IA00:01:14 Repaso a OpenCode y el paso a la soberanía digital00:02:11 Mi hardware: Slimbook, Nvidia RTX 4060 Ti y el modelo Qwen00:02:55 ¿Qué son realmente las Skills y por qué usarlas?00:04:18 Ejemplo práctico: Instalando una Skill para Docker00:04:58 Recomendación: La guía de Skills de Daniel Primo00:06:08 Generando un Dockerfile complejo para Rust en dos etapas00:07:34 Anatomía de una Skill: Front Matter, YAML y Markdown00:09:25 Cómo el agente gestiona los tokens y las habilidades00:10:48 Verificación del Dockerfile generado por la IA00:12:11 Trabajando con bases de datos: Skill de SQLite Expert00:13:24 Experiencia real: Revisando código Backend y Frontend00:15:38 Consultas en lenguaje natural sobre la base de datos00:17:40 Tipos de Skills: Percepción, Acción y Pensamiento Complejo00:19:47 Conclusiones: Programar sin programar y modelos locales00:20:29 Despedida y red de sospechosos habitualesMás información, enlaces y notas en https://atareao.es/podcast/796🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao
Thu, 14 May 2026 - 21min - 796 - ATA 795 OpenCode, el agente de IA que PROGRAMA por ti
Si eres de los que piensa que para crear tus propias herramientas necesitas pasarte años estudiando sintaxis complejas o que estás vendido a lo que digan las grandes corporaciones de la Inteligencia Artificial, prepárate, porque hoy vamos a romper esos mitos con OpenCode.
Democratizando el código con OpenCode
La gran estrella de hoy es OpenCode. Imagina un agente de inteligencia artificial especializado en programación que no te obliga a usar un solo modelo. A diferencia de otras soluciones cerradas, OpenCode es de código abierto. Esto significa que tú tienes el control total: puedes conectarlo con modelos en la nube como Claude o GPT-4, o lo que es más emocionante para los que amamos el auto-alojamiento, puedes usarlo con modelos locales a través de Ollama.
En el episodio de hoy, te cuento cómo he puesto a trabajar a este agente para crear, desde cero, una aplicación en Rust que descarga transcripciones de vídeos de YouTube. Yo solo le he dado las instrucciones de lo que quería conseguir y el agente se ha encargado de proponer el plan, elegir las librerías adecuadas (como YouTube Transcript o Anyhow) y escribir cada línea de código mientras yo grababa este podcast. ¡Es como tener un compañero de programación que nunca se cansa!
El dilema de los tokens y el modelo híbrido
Pero no todo es magia. También te cuento mis "penas" con los tokens. Te explico una anécdota real donde un modelo de IA se puso a "pensar" demasiado para solucionar un problema sencillísimo con un script para evitar que mis pantallas se apagaran (usando Stasis).
De aquí sacamos una lección fundamental: la importancia de los modelos híbridos. En este episodio te explico por qué deberías delegar las tareas más pesadas y repetitivas a modelos locales que corren en tu propio equipo (gratis y privados) y reservar la potencia de la nube solo para cuando necesites un razonamiento complejo. Además, exploramos OpenCode Go, una opción de bajo coste para acceder a modelos abiertos sin arruinarse.
Planificación y Tests: La IA que piensa antes de actuar
Una de las funciones que más me han volado la cabeza es la capacidad de OpenCode para diferenciar entre planificar y ejecutar.
Seguridad y el futuro en contenedores
Si alguna vez has tenido una idea para una aplicación pero te daba pereza empezar o no sabías por dónde hincarle el diente, este episodio es la señal que necesitabas. Es el momento de recuperar esos proyectos del cajón y empezar a materializarlos.
Capítulos para no perderte nada:
00:00:00 El truco de los 5 segundos y David Marzal00:01:08 Fartons y Podcast: Experiencias y agradecimientos00:01:57 ¿Qué es OpenCode? Programar sin escribir código00:02:54 Caso práctico: Herramienta en Rust para transcripciones de YouTube00:05:10 Un agente de IA de código abierto y multimodelo00:07:05 La importancia de no estar atado a un solo proveedor00:07:44 Modelos híbridos: Cuándo usar IA local vs. nube00:09:12 El peligro de los tokens: Mi experiencia con Stasis y el modo sleep00:12:36 OpenCode Go: Suscripción y acceso a modelos abiertos00:13:24 Configurando Ollama en local para programar00:15:10 Refinando la herramienta: Mejoras en la descarga por defecto00:17:58 Probando diferentes modelos: Qwen, DeepSeek y Kimi00:20:18 Modos de OpenCode: Planificación frente a Ejecución00:21:44 Implementando tests unitarios y de integración con el agente00:23:43 Delegando tareas repetitivas en el desarrollo web00:25:24 Seguridad: El futuro de ejecutar agentes en contenedores00:26:14 Próximos pasos: Skills y recomendación de Web Reactiva00:26:59 Despedida y comunidad Atareao en TelegramMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 11 May 2026 - 28min - 795 - ATA 794 Cómo crear tus propias herramientas de IA (GRATIS y en local)
Si en los últimos episodios te he hablado de las bondades de Open Web UI, hoy vamos a ensuciarnos las manos (de forma figurada, claro) para exprimir esta herramienta al máximo. No se trata solo de instalar un contenedor y ver qué pasa; se trata de convertir a tu inteligencia artificial en un asistente que realmente te conoce y tiene "superpoderes" gracias a herramientas personalizadas.
Seguro que te ha pasado alguna vez: estás hablando con una IA y, de repente, parece que se le ha olvidado lo que le dijiste hace cinco minutos. Esto es lo que conocemos como el problema de la ventana de contexto. Los modelos tienen un límite de información que pueden procesar a la vez. En este episodio, te muestro cómo Open Web UI gestiona la memoria para que el asistente recuerde quién eres, cuáles son tus aficiones y hasta tus lenguajes de programación preferidos. Es fascinante ver cómo, tras una búsqueda en GitHub o en redes sociales, la IA es capaz de guardar esos detalles en su "cerebro" local para usarlos más adelante.
Pero lo que de verdad me ha volado la cabeza es la posibilidad de crear herramientas (Tools). Imagina que necesitas calcular la distancia exacta entre dos ciudades para planificar una ruta de entrenamiento. Normalmente, la IA haría una búsqueda web más o menos precisa, pero ¿y si le pudiéramos enseñar a usar un script de Python específico para eso? En el podcast te cuento cómo la propia IA es capaz de programar su propia herramienta, dándote el código y las instrucciones para que la integres en tu interfaz. ¡Es el sueño de cualquier amante de la automatización!
Además, tocamos un tema fundamental en los tiempos que corren: la privacidad y el coste. Las grandes tecnológicas se están dando cuenta de que mantener estos modelos cuesta una fortuna y ya estamos empezando a ver cómo suben cuotas o limitan el uso. Al trabajar en local, no solo te ahorras suscripciones, sino que te aseguras de que tus datos no salen de tu casa. Es soberanía tecnológica en estado puro.
Lo que vamos a tratar en este episodio:
00:00:00 - Introducción: Exprimiendo Open Web UI00:00:45 - Presentándome a mi propia IA local00:01:38 - La importancia de la memoria y el contexto en los LLM00:02:11 - Herramientas de búsqueda: ¿Qué sabe internet de Atareao?00:04:37 - Guardando información relevante en la memoria (RAG)00:05:04 - Consultas en tiempo real: El tiempo y el pronóstico00:06:20 - Ahorrando tokens: La importancia de ser conciso00:07:24 - Planificando un entrenamiento basado en datos meteorológicos00:10:02 - Cálculos de distancia y búsquedas web inteligentes00:11:54 - Crea tus propias herramientas (Tools) con Python00:14:32 - Configuración de herramientas personalizadas paso a paso00:16:12 - Integración de APIs externas (Nominatim) en local00:17:18 - Poniendo a prueba la memoria a largo plazo de la IA00:19:53 - Análisis de perfil de GitHub y lenguajes preferidos00:21:55 - Privacidad y ahorro: El fin de las subvenciones de las grandes Big Tech00:23:44 - De Google AI Studio a Open Web UI: El flujo de trabajo00:24:45 - Conclusiones y adelanto del próximo episodio: ¡Open Code!Te cuento también mi flujo de trabajo actual, cómo he pasado de herramientas en la nube como Google AI Studio a tenerlo todo bajo mi control con Open Web UI. Y ojo, que esto es solo el principio. En el próximo episodio abandonaremos un poco la interfaz de chat para meternos de lleno en Open Code, buscando siempre esa independencia tecnológica que tanto nos gusta.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 07 May 2026 - 25min - 794 - ATA 793 Cómo elegir el modelo de IA ideal y por qué a veces se emborracha
Hoy vamos a meternos de lleno en las tripas de la inteligencia artificial local, porque sigo dándole vueltas a una herramienta que me tiene completamente robado el corazón: OpenWeb UI.
Seguramente habrás oído hablar de ChatGPT, Gemini o Claude. Son herramientas increíbles, pero tienen un problema: no son tuyas. En este episodio, y probablemente en el siguiente, quiero contarte cómo estoy consiguiendo que mi propia IA en local no solo iguale a estas opciones comerciales, sino que en muchos aspectos las supere, especialmente en algo que a veces olvidamos: la soberanía digital y la capacidad de organización.
¿Por qué OpenWeb UI es un cambio de juego?
Lo que me ha volado la cabeza de OpenWeb UI es cómo reúne lo mejor de cada casa. He estado probando decenas —y no exagero, de verdad, decenas— de modelos distintos estos días. Mi objetivo era claro: ver cuánto consumen, qué rapidez de respuesta tienen y, sobre todo, hasta qué punto puedo sustituir mi flujo de trabajo en la nube por algo que corra en mi propio hardware. Una de las funciones que más me han gustado es el sistema de carpetas. Poder asignar un modelo específico a una carpeta de proyectos de Rust, y otro modelo distinto para resúmenes de artículos, es una maravilla que me permite "cacharrear" con una precisión que no encontraba en Gemini o ChatGPT.
El misterio de la IA que se "emborracha"
¿Te ha pasado que estás hablando con una IA y de repente empieza a decir cosas sin sentido o se olvida de lo primero que le dijiste? Eso es lo que yo llamo "borrachera de datos", y la culpa la tiene la ventana de contexto. En este episodio te explico qué es exactamente este espacio de memoria a corto plazo del modelo. Me encontré con un problema frustrante: mi IA local parecía tener memoria de pez. Y después de mucho investigar, descubrí que Ollama, el servidor de modelos que utilizo, define por defecto una ventana de contexto muy pequeña, a veces de solo 2.048 o 4.096 tokens.
Para que te hagas una idea (esta es la regla de la servilleta que cuento en el audio): 4.000 tokens equivalen a unas 5 o 6 páginas de texto. Si le pasas unas instrucciones iniciales largas (el system prompt), le haces un par de preguntas y la IA te responde, ¡pum!, se acabó el espacio. En cuanto llegas al límite, la IA empieza a descartar lo primero que le dijiste. Por eso parece que se olvida de quién es o de qué le habías pedido.
Matemáticas para no volverse loco con la RAM
Capítulos del episodio:
00:00:00 Presentación: Exprimiendo OpenWeb UI00:01:21 El experimento: Probando decenas de modelos locales00:02:19 Organización y carpetas: La gran ventaja frente a ChatGPT00:03:53 El núcleo del episodio: Modelos y Prompts00:05:00 LLM FIT: Cómo encontrar el modelo ideal para tu hardware00:06:14 ¿Qué es la ventana de contexto y por qué es vital?00:07:08 El límite oculto de Ollama: ¿Por qué tu IA tiene memoria de pez?00:08:33 Automatización: Ollama Audit y scripts de personalización00:10:38 Cómo modificar el contexto y crear modelos custom00:11:42 Matemáticas de la RAM: ¿Cuántos tokens caben en tu equipo?00:13:00 Guía rápida: Ventanas de contexto recomendadas según la tarea00:14:23 El equilibrio: Peso del cerebro vs Memoria de trabajo (KV Cache)00:15:42 El idioma importa: Tokens en español vs Inglés00:16:35 Por qué 4.000 tokens se quedan cortos (System Prompt e Historial)00:18:27 La analogía de la servilleta: Ejemplos de uso del contexto00:20:12 Calidad vs Velocidad: ¿Qué modelo elegir?00:21:41 Organización real: Mis Prompts y carpetas en OpenWeb UI00:24:33 Soberanía digital y despedidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 04 May 2026 - 25min - 793 - ATA 792 Open WebUI, el ChatGPT PRO que puedes tener GRATIS y 100% local
¿Te has fijado en que el panorama de la inteligencia artificial está cambiando a pasos agigantados? Lo que hasta hace dos días era un campo de juegos gratuito, donde podíamos probarlo todo sin soltar un euro, se está transformando rápidamente en un servicio de suscripción más, como la luz o el teléfono. Pero no solo es una cuestión de dinero. Hay algo que me preocupa mucho más: tu privacidad y la propiedad de tus datos.
En este episodio número 792 de Atareao con Linux, quiero invitarte a dar un paso adelante en tu camino hacia la soberanía digital. Vamos a hablar de cómo montar tu propio laboratorio de inteligencia artificial en casa, utilizando una herramienta que es, sencillamente, una maravilla: Open WebUI. Olvídate de depender de servidores externos para tareas sensibles; es hora de que el motor de la IA corra en tus propias máquinas.
¿Por qué Open WebUI?
Si ya has escuchado episodios anteriores, sabrás que soy un gran fan de Ollama para ejecutar modelos en local desde la terminal. Pero seamos sinceros: la terminal es fantástica para muchas cosas, pero para mantener una conversación fluida con un modelo de lenguaje, todos preferimos una interfaz visual. Open WebUI es ese "vestido elegante" que le ponemos a nuestros modelos locales. Es una interfaz web que, nada más verla, te va a resultar familiar porque se parece muchísimo a ChatGPT o Gemini, pero con una diferencia fundamental: tú tienes el control total.
Personalización y diversión: El caso de Leslie Winkle
Una de las cosas que más me apasiona de esta herramienta es su "Model Builder". No se trata solo de elegir un modelo como Llama 3 o Gemma y empezar a escribir. Puedes ir mucho más allá. En el podcast te cuento cómo he creado un modelo específico con la personalidad de Leslie Winkle, el personaje de Big Bang Theory. Le he dado instrucciones precisas sobre cómo comportarse, quiénes son sus aliados y quiénes sus enemigos. El resultado es una IA con la que puedo "pelear" intelectualmente y que me llama "cerebro de corcho". Es divertido, sí, pero también demuestra el poder de crear asistentes especializados para tareas concretas de tu trabajo o tu día a día.
Características que marcan la diferencia
Gestión de usuarios y grupos.Soberanía de datos con RAG.Búsqueda Web PrivadaSoporte para fórmulas y código.Capítulos del episodio:
00:00:00 ¡Al rico modelo local! Introducción00:00:27 El fin de la era "gratis" en la IA comercial00:01:31 Privacidad y bolsillo: Las dos razones para el local00:02:42 Más allá de la terminal: Buscando la interfaz ideal00:03:47 Presentando Open WebUI: El cerebro de tu laboratorio00:05:21 ¿Qué es exactamente Open WebUI?00:06:28 Personalización extrema: Mi charla con Leslie Winkle00:08:11 Gestión de usuarios y permisos granulares00:09:48 PWA, Markdown y soporte para fórmulas matemáticas00:10:55 Model Builder: Crea tus propios expertos a medida00:12:12 Integrando Python y funciones avanzadas00:13:34 Buscando en la web de forma privada con SearXNG00:15:13 Integraciones en la nube y bases de datos vectoriales00:16:08 Un vistazo al panel de administración y consumo00:18:24 El arte del Prompting: Carpetas y roles de sistema00:20:38 Mi infraestructura: Podman, Traefik y contenedores00:22:56 Recursos, chuletas y el repositorio de GitHub00:24:12 Despedida y red de Sospechosos HabitualesMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 30 Apr 2026 - 25min - 792 - ATA 791 ¿Ollama o Llama.cpp? Cuál elegir para montar tu propia Inteligencia Artificial
¡Hola, muy buenas! Soy Lorenzo y hoy te traigo el episodio número 791 de Atareao con Linux. Si has estado siguiendo mis últimas aventuras tecnológicas, sabrás que me he sumergido de lleno en el fascinante mundo de los modelos de lenguaje locales. Sin embargo, a raíz de mis vídeos y artículos sobre Ollama, ha surgido una pregunta recurrente en la comunidad: ¿Por qué usar Ollama y no Llama.cpp directamente? ¿O es que acaso uno es mejor que el otro? En este episodio me he propuesto despejar todas tus dudas y, de paso, contarte algunas novedades sobre hardware que te van a dejar con la boca abierta.
El origen: Entre amigos y tecnología en el Linux Center
Todo esto empezó a fraguarse en las recientes jornadas de Inteligencia Artificial que vivimos en el Linux Center junto a los amigos de Slimbook. Fue una experiencia increíble donde pude compartir charla con Alejandro López y Manuel Lemos. Ver el interés de la gente y cómo el curso se llenó por completo me dio una pista clara: todos queremos tener el control de nuestra propia IA. Alejandro, que es un gran impulsor de estos temas, me prestó un equipo que ha sido clave para mis pruebas actuales y del cual te hablo un poco más adelante en este audio.Llama.cpp: El quirófano de los tensores
Para entender la diferencia, hay que saber qué es cada cosa. Llama.cpp es el motor puro. Imagínate que es el motor de un coche de competición donde puedes ajustar hasta la última tuerca. Está escrito en C++ por Georgi Gerganov con un objetivo claro: el máximo rendimiento.
Ollama: La experiencia de usuario elevada al máximo
Por otro lado, tenemos a Ollama. Muchas veces se ven como rivales, pero la realidad es que Ollama utiliza Llama.cpp por debajo. La diferencia es que Ollama es un "envoltorio" o orquestador escrito en Go que nos facilita la vida de una manera brutal. Se encarga de gestionar la memoria de tu tarjeta gráfica (VRAM) de forma inteligente.
Cacharreando con contenedores y personalidad propia
Como no podía ser de otra forma, yo he montado Llama.cpp usando Podman y Quadlets, integrándolo totalmente en mi flujo de trabajo. En este episodio te cuento cómo he configurado mi NVIDIA RTX 4060 Ti de 16GB para que vuele, permitiéndome usar contextos de hasta 128K.
Hardware: NVIDIA y el silencio de las NPU
Uno de los grandes temas de este episodio es el hardware. Hago un repaso por las tarjetas de NVIDIA, desde la serie 30 hasta la potente serie 50. Pero la verdadera sorpresa ha sido el Slimbook One con NPU (Neural Processing Unit).
La anatomía de los modelos: Rompiendo el código
¿Alguna vez has visto nombres de modelos como "Mistral-7B-Instruct-v3-Q4_K_M.gguf" y te has sentido perdido?
Capítulos del episodio para que no te pierdas nada:
00:00 - Bienvenidos al episodio 791: Ollama vs Llama.cpp01:35 - Crónica de las jornadas de IA en el Linux Center con Slimbook03:34 - ¿Por qué hay tanta polémica entre Ollama y Llama.cpp?04:42 - Llama.cpp: El "quirófano" de los tensores y el rendimiento puro05:18 - Ollama: El orquestador que nos facilita la vida06:40 - Comparativa: ¿Qué hace uno que no haga el otro?07:59 - ¿Eres de IKEA o de fabricar tus propios muebles?09:00 - Cacharreando con Llama.cpp, Podman y Quadlets10:48 - Leslie: Mi IA con personalidad propia en OpenWeb UI12:44 - Cómo descargar modelos a mano con Rust HF Downloader13:50 - Hardware para IA: Guía rápida de tarjetas NVIDIA17:15 - La experiencia con el Slimbook One y su NPU integrada18:05 - Anatomía de un modelo: Entendiendo los nombres19:40 - La piedra de Rosetta de la cuantización21:08 - Conclusiones y próximos pasos con OpenWeb UIMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 27 Apr 2026 - 22min - 791 - ATA 790 ¡Exprime tu IA local! Domina Ollama desde la terminal 🚀
¡Hola! Soy Lorenzo y esto es Atareao con Linux. Bienvenidos al episodio número 790, la segunda entrega de nuestra serie dedicada a montar nuestro propio laboratorio de Inteligencia Artificial local.
Antes de meternos en harina, quiero darte las gracias de todo corazón. El primer episodio de esta serie ha tenido una acogida espectacular, y eso me llena de satisfacción y me da muchísima energía para seguir compartiendo contigo todo este camino. Parece que no soy el único que tiene ganas de recuperar el control de sus datos y de jugar con estos modelos de lenguaje sin depender de servicios externos.
En el episodio anterior estuvimos centrados en la infraestructura: montamos Ollama usando Quadlets y dejamos todo listo para empezar a funcionar. Pero hoy vamos a cambiar el tercio. Hoy vamos a dejar de hablar de configuraciones de sistemas para empezar a hablar, literalmente, con la inteligencia. Y lo vamos a hacer de la forma más pura y directa posible: a través de la terminal.
Seguramente te preguntarás: "¿Pero Lorenzo, para qué voy a usar la terminal si ya hay interfaces web que son una maravilla?". Pues te lo cuento con todo el entusiasmo del mundo: para entender qué está pasando de verdad. En este episodio vamos a exprimir Ollama desde la línea de comandos, bajando al barro, porque hay opciones y configuraciones que en las interfaces gráficas a veces quedan ocultas o simplificadas. Si queremos ser verdaderos "cacharreros" de la IA, tenemos que saber qué pasa bajo el capó.
Hardware y monitorización en tiempo real
En este episodio te cuento cómo estoy viviendo la experiencia con mi hardware. Estoy utilizando una tarjeta Nvidia GeForce RTX 4060 en un equipo Slimbook que va como un tiro. Te explico cómo monitorizo el uso de la GPU y cómo puedes ver, de forma casi mágica, el momento exacto en el que el modelo se carga en los 16 GB de memoria y empieza a consumir recursos. Es fascinante ver cómo el uso de la tarjeta pasa del 0% al 100% mientras la IA genera una respuesta para nosotros. Entender esta relación entre el hardware y el software es fundamental para saber qué modelos podemos ejecutar y cuáles nos van a mandar a "freír espárragos".
Dominando los meta-comandos de Ollama
A lo largo del audio, vamos a desgranar una serie de comandos que te van a convertir en un maestro de la IA local:
Información detalladaPersonalidad y roles.Rendimiento puro.Creatividad bajo control.Capítulos del episodio:
00:00:00 - Bienvenida y agradecimientos por la acogida00:00:40 - El laboratorio de IA: Recapitulando el episodio anterior00:01:34 - ¿Por qué bajar al barro con la terminal?00:03:31 - Preparando el entorno y monitorizando la GPU Nvidia00:05:00 - Flujo de trabajo: Arrancar el contenedor y el modelo00:05:35 - Comandos de ejecución, Podman y atajos útiles00:06:40 - Regalo: Una chuleta (cheat-sheet) para dominarlos a todos00:07:48 - Hablando con Ollama de forma interactiva00:08:24 - Meta-comandos: Descubriendo las tripas del modelo00:09:12 - Licencias y parámetros técnicos del modelo00:10:05 - Configurando el rol de experto desarrollador00:11:15 - Midiendo el rendimiento: Tokens por segundo00:12:00 - Modo silencioso y generación de scripts00:12:55 - Atajos de teclado y ayuda rápida00:13:35 - Ajustando la temperatura y la creatividad00:14:40 - Cómo guardar y cargar tus modelos personalizados00:15:20 - Poniendo a prueba a la IA: Verificación de código00:16:15 - Monitorización en tiempo real de CPU y GPU00:17:40 - Cómo elegir el modelo ideal según tu hardware00:19:08 - Próximos pasos: La REST API de Ollama00:20:30 - Despedida y consejos de vidaMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 23 Apr 2026 - 21min - 790 - ATA 789 Tu propio Laboratorio de IA (adios a las subscripciones)
¡Hola! Soy Lorenzo y esto es Atareao con Linux. Bienvenidos al episodio número 789, un episodio que marca el inicio de una aventura que me tiene especialmente emocionado: vamos a montar nuestro propio laboratorio de Inteligencia Artificial en local.
Durante los últimos meses, y gracias a las "pullas" constructivas de amigos como Carlos Castillo de Reflex, RedFone o incluso mi archienemigo favorito Rafa de Leña al Mono, no he parado de darle vueltas a cómo exprimir la IA. Pero hay algo que me inquietaba: casi todo lo que hacía dependía de la nube. Por eso, tras cerrar el ciclo de Podman, he decidido que es el momento de tomar las riendas de nuestra soberanía digital y traernos los modelos de lenguaje a casa.
¿Por qué quieres una IA local?
Seguro que te lo has preguntado. ¿Para qué complicarse la vida si ya tienes Gemini o ChatGPT? Pues bien, en este episodio te cuento las tres razones fundamentales que me han llevado a este "cacharrreo" intensivo:
Privacidad absoluta.Control de costes.Inmediatez.El Stack Técnico: Podman, Quadlets y Ollama
No esperes que te enseñe a instalar cosas "a lo bruto" en tu sistema operativo. Fiel a mi estilo, vamos a usar contenedores, pero con un giro de tuerca profesional. Te explico por qué he elegido Podman sobre Docker para este proyecto, centrándome en la seguridad del modo rootless y la limpieza que nos ofrece. Además, profundizamos en el uso de Quadlets para que nuestra IA sea un servicio más de Linux, perfectamente integrado con Systemd.
Una serie para dominarlos a todos
Este no es un episodio aislado. Hoy inauguramos una serie de 32 capítulos donde iremos de cero a cien. No me interesan los tutoriales de "IA en 5 minutos" que no enseñan nada. Aquí vamos a profundizar en:
Crear un cerebro digital usando RAG (Generación Aumentada por Recuperación) con nuestros propios archivos Markdown.Desarrollar agentes y skills que realicen tareas por nosotros.Integrar el stack con hardware NVIDIA para sacar hasta el último teraflop de potencia.Automatizarlo todo con scripts en Rust, Python y mi querido shell Fish.Si te apasiona el open source y quieres dejar de ser un mero espectador de la IA para convertirte en el dueño de tu propia tecnología, este es tu sitio. ¡Prepárate porque nos lo vamos a pasar pipa!
Contenido detallado del episodio:
00:00:00 Introducción y el fin de la era Podman00:01:21 El empujón de Slimbook y el Linux Center00:02:15 El problema de depender exclusivamente de la nube00:03:15 El plan maestro: 32 episodios de IA práctica00:05:33 Tres razones para la IA local: Privacidad, pasta y latencia00:07:25 Filosofía "Juan Palomo": Exprimir los modelos con scripts00:08:08 El stack técnico: ¿Por qué Podman y no Docker?00:09:40 Ventajas del rootless y la seguridad en IA00:10:59 Quadlets: Integración total con Systemd00:11:53 Herramientas: Fish shell, Rust y Go al servicio de la IA00:13:20 Creando nuestra propia memoria digital (RAG)00:14:00 Estructura de directorios y repositorio Git00:15:37 El truco de los enlaces simbólicos para Quadlets00:16:02 Hardware: NVIDIA y el aprovechamiento de la GPU00:16:40 Desmenuzando el contenedor de Ollama00:17:54 QCTL: Mi herramienta para gestionar Quadlets fácilmente00:20:20 Comprobando que Ollama responde (CURL y API)00:21:15 Monitorización con NVTOP y VTOP00:22:13 Despedida y próximos pasos en el laboratorio localMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 20 Apr 2026 - 23min - 789 - ATA 788 Cuatro herramientas de IA para Spotify y YouTube
¡Hola! ¿Cómo estás? Soy Lorenzo y te doy la bienvenida a un nuevo episodio de Atareao con Linux. Hoy te quiero abrir las puertas de mi laboratorio personal para contarte algo que me tiene entusiasmado: cómo he conseguido que la inteligencia artificial y la automatización se conviertan en mis mejores aliadas para sacar adelante este proyecto.
Las herramientas de la revolución
Para que entiendas cómo funciona mi flujo de trabajo actual, te voy a desglosar las cuatro herramientas que se han vuelto imprescindibles en mi equipo:
1. Whisper (de OpenAI): Es el punto de partida. Esta maravilla de la tecnología es capaz de escuchar mis audios y transcribirlos a texto con una precisión que da miedo. Gracias a que utilizo una tarjeta gráfica Nvidia y soporte para CUDA, el proceso es rapidísimo. Whisper no solo me ahorra tener que escribir notas a mano, sino que me da la base para todo lo que viene después.
2. Google AI Studio y el poder de los Prompts: Una vez tengo la transcripción, el siguiente paso es pasarle ese texto a Google AI Studio. He diseñado un "prompt" (unas instrucciones) muy detallado que le dice a la IA exactamente qué necesito: que extraiga el minutaje de los temas tratados, que redacte una descripción amena para YouTube y Spotify, y que prepare los metadatos SEO para la web.
3. Nano Banana (Gemini) y la generación de imágenes: Para las carátulas que ves en las plataformas, ahora confío plenamente en el modelo de generación de imágenes de Google. Aunque a veces es un poco testarudo con las dimensiones —yo le pido un tamaño y él me da otro—, la calidad visual es impresionante. Para domar a esta IA, he creado mis propios scripts en Fish Shell que se encargan de comprobar si la imagen es cuadrada o rectangular y de ajustarla automáticamente a lo que necesito para cada plataforma.
4. Real-ESRGAN y el escalado inteligente: A veces, la imagen que genera la IA es demasiado pequeña para los estándares de calidad actuales. Aquí es donde entran en juego las redes neuronales de Real-ESRGAN. Esta herramienta es capaz de "inventarse" los detalles que faltan para agrandar una imagen sin que pierda nitidez.
5. ImageMagick (o "Magic"): No podíamos olvidarnos de los clásicos. ImageMagick es la navaja suiza que utilizo para las conversiones finales, para optimizar el peso de las imágenes antes de subirlas a la web y para asegurar que todo cumple con los formatos estándar. Es una herramienta de terminal que todo amante de Linux debería conocer.
Capítulos del episodio:
00:00:00 La mejor inversión: Atareao.es00:01:38 Mi evolución técnica: Del hosting al VPS y Docker00:02:17 Los modelos de lenguaje entran en juego00:03:00 Resultados brutales con menos esfuerzo00:04:20 Herramienta 1: Whisper, el arte de transcribir audio00:05:11 Fish Shell: El alma de mis automatizaciones00:07:04 Herramienta 2: Google AI Studio y la magia de los Prompts00:08:41 Mi flujo de trabajo: Del guion al minutaje00:09:30 Herramienta 3: Nano Banana (Gemini) para crear carátulas00:10:50 Automatizando el formato de imagen con Fish00:12:00 Reals-ESRGAN: Escalando imágenes con redes neuronales00:13:50 Herramienta 4: ImageMagick (Magic), la navaja suiza00:15:41 El procesado de audio: Normalización y filtros00:16:45 Conclusiones: Automatizar para disfrutar más00:18:04 Despedida y red de podcastComo siempre digo, la vida son dos días y uno ya ha pasado, así que disfruta como si no hubiera un mañana y, si puede ser con Linux y "cacharreando" con estas herramientas, ¡mucho mejor! Un saludo y nos escuchamos pronto.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 16 Apr 2026 - 18min - 788 - ATA 787 Tu terminal REACCIONA a todo. Eventos personalizados en Fish
¡Hola a todos! Bienvenidos una semana más a atareao con Linux. Hoy os traigo el "premio" que me guardé en el episodio 785. Si pensabas que tu terminal ya era lista, prepárate, porque hoy vamos a ver cómo dotarla de un sistema nervioso propio mediante los eventos personalizados en Fish.
En este episodio nos centramos en dos herramientas brutales:
emityon-event. Te voy a explicar, de la forma más sencilla posible, por qué esto cambia las reglas del juego cuando te pones a automatizar tareas en tu servidor o en tu equipo de escritorio.¿Por qué deberías usar eventos en tus scripts?
Limpieza absoluta: Olvídate de esos archivos .sh infinitos. Ahora puedes tener pequeñas funciones especializadas que solo actúan cuando ocurre algo concreto. Flexibilidad total: ¿Quieres añadir una nueva acción a un proceso que ya funciona? No toques el código original, simplemente crea una función nueva que escuche el mismo evento. Desacoplamiento: Es la palabra clave. Separamos la lógica de "qué ocurre" de la lógica de "qué hacemos cuando ocurre".Te cuento cómo he aplicado esto para monitorizar mis proyectos de Rust. Uso herramientas como
inotifywaitpara que, en cuanto guardo un cambio en el código, se dispare una cadena de eventos: compilación, tests y despliegue en contenedores. Si algo falla por el camino, el sistema lo sabe y me avisa de inmediato. ¡Es como tener un asistente personal dentro de la shell!También hablamos de la introspección. Te enseño cómo consultar qué eventos tienes registrados y qué funciones están asignadas a cada uno mediante el comando
Functions --handlers. Así nunca perderás el hilo de lo que está pasando en tu sistema.Si quieres llevar tu terminal al siguiente nivel y empezar a cacharrear de verdad con la automatización inteligente, este podcast es para ti.
Contenido del episodio:
00:00:00 Introducción: Lo mejor de Fish se quedó para el final00:01:28 Qué son los eventos y por qué van a simplificar tu vida00:02:40 Cómo declarar eventos con emit y on-event00:04:02 Ejemplo práctico: Notificaciones de escritorio y avisos en Telegram00:06:40 Las 3 grandes ventajas: Desacoplamiento, múltiples receptores y limpieza00:09:20 Introspección en Fish: Cómo ver tus handlers y eventos registrados00:11:05 Caso de éxito: Automatizando la compilación y despliegue de Rust00:13:58 Gestión de errores: Cómo evitar que un proceso falle en cascada00:15:14 Conclusión y despedida: ¡A cacharrear con los eventos!¡Espero que te lo pases pipa escuchándolo tanto como yo explicándolo! Al rico contenedor y... ¡nos escuchamos el jueves!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 13 Apr 2026 - 16min - 787 - ATA 786 ¿Por qué WordPress sigue dominando internet? (Y cómo dominarlo tú)
¿WordPress es una porquería o es que no sabemos usarlo? Mi nuevo flujo con Podman
¡Hola! Muy buenas, ¿cómo estás? Soy Lorenzo y hoy quiero que hablemos de tecnología, de pragmatismo y, sobre todo, de WordPress. Últimamente parece que está de moda criticar a WordPress entre los creadores de contenido. Que si es pesado, que si tiene vulnerabilidades, que si es tecnología del siglo pasado... Pero claro, cuando miras los números y ves que WordPress impulsa más del 42% de los sitios web del planeta, te das cuenta de que algo estarán haciendo bien.
En este episodio número 786 de Atareao con Linux, quiero romper una lanza a favor de este CMS y, sobre todo, explicarte cómo he transformado mi forma de trabajar con él para que sea algo divertido, eficiente y, por encima de todo, profesional. Vamos a dejar de lado las críticas vacías y vamos a centrarnos en el "cacharrero" del bueno: montando un entorno de desarrollo con Podman, utilizando Valkey para que todo vuele y automatizando las tareas con una herramienta que me tiene fascinado: Just.
WordPress: El gigante incomprendido
Lo cierto es que entiendo las críticas cuando son razonadas. Es verdad que WordPress puede tener vulnerabilidades, pero ¿qué software masivo no las tiene? Al final, es una cuestión de números: cuanto más se usa algo, más se intenta atacar. Pero no podemos olvidar que grandes corporaciones, tiendas de e-commerce masivas e incluso la propia Casa Blanca confían en WordPress. Si estás buscando una oportunidad de negocio, aprender a dominar WordPress por dentro —creando tus propios temas y complementos— es una de las mejores inversiones que puedes hacer hoy en día.
El salto a los contenedores con Podman
Hoy en día, desarrollar sin contenedores me parece un error fundamental. Los contenedores te dan la libertad de usar exactamente la misma versión de PHP o MariaDB que tienes en tu servidor de producción, sin importar lo que soporte tu sistema operativo local. Y como no podía ser de otra forma, he montado todo este tinglado con Podman.
Mi nuevo stack de desarrollo incluye:
WordPress con PHP-FPM: Para un rendimiento óptimo. MariaDB: Nuestra base de datos de confianza. Valkey: El reemplazo de código abierto para Redis. Espectacular para cachear consultas y acelerar la web. Nginx: Como proxy inverso para gestionar imágenes, estilos y la conexión con PHP de forma eficiente.Contenido del episodio por capítulos:
00:00:00 Introducción y por qué critican a WordPress 00:01:22 WordPress: El gigante que domina internet 00:03:08 Más allá del blog: E-commerce y grandes empresas 00:03:40 WordPress como oportunidad de negocio y carrera 00:04:52 La historia de Atareao.es sobre WordPress (desde 2009) 00:06:30 De temas de terceros a un desarrollo propio complejo 00:07:57 Borrón y cuenta nueva: Buscando la sencillez 00:08:50 El error de no usar contenedores para desarrollar 00:10:03 Mi stack con Podman: PHP-FPM, MariaDB y Valkey 00:12:07 Just: El gestor de tareas que sustituye a Make 00:13:54 Automatizando con Just: Install, Start y Status 00:16:30 Entornos idénticos: De local a producción 00:17:15 Gestión inteligente de secretos y configuración de Nginx 00:19:23 Estrategia de copias de seguridad y restauración de la DB 00:20:26 Resumen: Un entorno profesional en cuatro pasos 00:22:17 Despedida y cierre del episodioMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 09 Apr 2026 - 22min - 786 - ATA 785 Tu Terminal ahora es mucho mas inteligente (gracias a Fish)
¡Hola a todos! Bienvenidos al episodio 785. Hoy nos metemos de lleno en las entrañas de FISH, una de las herramientas más potentes para cualquier amante de Linux. Si alguna vez has sentido que tu terminal podría trabajar un poco más por ti, este es tu episodio.
Los eventos en FISH son como pequeños disparadores que te permiten ejecutar acciones automáticamente en respuesta a lo que haces. Vamos a ver casos de uso reales: desde cómo configurar alertas inteligentes hasta cómo evitar errores catastróficos. También descubrirás mi secreto personal para no volver a perder nunca más un comando largo que hayas borrado por error al presionar la combinación de teclas prohibida.
Temas destacados:
La diferencia entre FISH y otras shells clásicas.Cómo implementar un sistema de auditoría básica.Ejemplos prácticos para mejorar tu productividad diaria.Cómo manejar el portapapeles directamente desde la terminal.Índice:
00:00:00 Introducción al episodio 78500:00:26 ¿Qué es FISH y por qué lo uso?00:02:33 El poder de los eventos en FISH00:04:49 ¿Dónde configurar tus eventos?00:08:42 Ejemplo 1: Avisos automáticos en proyectos RAST00:09:41 Ejemplo 2: Auditoría de comandos críticos00:10:59 Ejemplo 3: Manejo elegante de errores00:12:19 Ejemplo 4: Acciones al cerrar sesión00:13:35 Truco Pro: Recuperar comandos borrados con CTRL+C00:17:35 Conclusiones y próximos pasosEspero que disfrutes de este contenido tanto como yo al prepararlo. ¡Prepárate para llevar tu terminal al siguiente nivel!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 06 Apr 2026 - 19min - 785 - ATA 784 Lo mejor de dos mundos. Despliega Docker Compose en Podman con Dockge
¿Es posible mantener la extrema sencillez de Dockge mientras aprovechamos la robustez y seguridad de Podman? La respuesta es un rotundo sí, y en este episodio te explico exactamente cómo lo he configurado en mi propia infraestructura.
Llevo semanas explorando alternativas para la gestión de contenedores, pero siempre acabo volviendo a Dockge. Su capacidad para levantar un stack simplemente pegando un Docker Compose es imbatible para quienes disfrutamos probando nuevas herramientas cada día. Sin embargo, mi migración a Podman planteaba un reto: no quería perder esa agilidad ni tampoco comprometer la seguridad del sistema.
En este podcast detalle mi "fórmula ganadora":
Quadlets: Cómo he encapsulado Dockge y Traefik para que se comporten como servicios nativos del sistema.Seguridad Rootless: La ventaja de correr Dockge bajo un usuario sin privilegios, eliminando riesgos de escalada de privilegios.Persistencia: La gestión de volúmenes y cómo Dockge almacena los archivos Compose de forma transparente en el sistema de archivos.Hibridación: Mi estrategia para decidir qué servicios van en Quadlets y cuáles se quedan en Dockge.Además, comentamos características fundamentales como el terminal web interactivo incorporado, ideal para solventar problemas rápidos (como borrar un volumen rebelde) cuando estás fuera de casa y solo tienes una tablet a mano. Si te interesa el self-hosting, la administración de servidores Linux y quieres simplificar tu flujo de trabajo con contenedores, este episodio es para ti.
Capítulos del episodio:
00:00:00 Introducción y el dilema de la gestión de contenedores00:01:41 El miedo a la migración: De Docker a Podman00:02:46 La gran noticia: Dockge funcionando como Quadlet00:03:09 ¿Qué es Dockge? La alternativa sencilla a Portainer00:05:14 Características clave: Editor interactivo y terminal web00:06:09 Gestión remota: El uso de agentes y múltiples VPS00:07:33 Funciones avanzadas: De comandos Docker a Compose00:08:55 La ventaja competitiva: Podman Rootless y seguridad00:09:41 Anatomía de un Quadlet para Dockge00:10:45 Configuración de volúmenes y persistencia de Stacks00:11:24 Integración con Traefik y Health Checks en Podman00:12:22 Cómo gestionar tus archivos Compose y Dotfiles00:13:58 El gran debate: ¿Cuándo usar Quadlets vs Dockge?00:15:53 Conclusiones: Seguridad, simplicidad y futuro00:17:12 Despedida y comunidad Atareao con LinuxÚnete a la conversación en nuestro grupo de Telegram y descubre más en atareao.es.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 02 Apr 2026 - 17min - 784 - ATA 783 El Poltergeist de Docker que casi borra toda mi información
¿Alguna vez has sentido el terror de un comando mal ejecutado?
En este episodio número 783, te sumerjo en una historia real de "poltergeist" en Docker que me mantuvo en vilo durante horas. Te cuento cómo una serie de eventos desafortunados, mezclados con un poco de nerviosismo técnico, me llevaron a cometer uno de los errores más temidos por cualquier administrador de sistemas: un borrado masivo de volúmenes que no debía ocurrir.
Hablamos a fondo sobre la arquitectura de servicios self-hosted. Te explico por qué prefiero mantener una base de datos independiente para cada aplicación, analizando los pros y contras en cuanto a consumo de recursos y flexibilidad de versiones. Esta decisión, que normalmente me ahorra problemas, fue el escenario de un comportamiento errático donde las imágenes de PostgreSQL empezaron a mutar de forma extraña, cambiando tamaños y arquitecturas sin intervención directa.
A lo largo del audio, descubrirás cómo logré identificar al culpable (spoiler: Watchtower y WhatsApp Docker tienen mucho que ver) utilizando modelos de lenguaje como Gemini para realizar un análisis forense de los logs. Esta experiencia ha sido el empujón final que necesitaba para confirmar mi transición total hacia Podman.
Lo que aprenderás en este episodio:
La importancia de taguear correctamente las imágenes y evitar el uso de "latest". Cómo reaccionar (y cómo no hacerlo) ante un contenedor que entra en bucle de reinicio. Las ventajas críticas de Podman sobre Docker en la gestión de actualizaciones y rollbacks automáticos. El papel de la IA como asistente en la resolución de problemas técnicos complejos.Marcadores de tiempo:
00:00:00 Introducción: Una historia de terror en Linux
00:02:04 Mi estrategia: Un contenedor de base de datos por servicio
00:03:19 El dilema del consumo vs. la independencia de versiones
00:05:58 El inicio del caos: Notificaciones de Matrix y reinicios
00:07:34 Investigando el fallo: ¿Versiones desalineadas o brujería?
00:09:38 El misterio del Release Candidate y el engorde de imágenes
00:11:24 El error fatal: Un "System Prune" sin prejuicios
00:12:31 Análisis forense con Gemini: Encontrando al culpable
00:13:36 El culpable revelado: WhatsApp Docker y Watchtower
00:15:36 Reflexiones post-catástrofe: La migración definitiva a Podman
00:16:40 Ventajas de Podman: Actualizaciones nativas y Rollbacks
00:18:11 Despedida y red de podcastSi quieres compartir tus propias historias de terror o aprender más sobre el mundo Linux, únete a nuestra comunidad en Telegram buscando "Atareao con Linux". ¡Disfruta del episodio!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 30 Mar 2026 - 19min - 783 - ATA 782 Buildah vs Dockerfile. La guía definitiva para construir imágenes
¡Hola! Soy Lorenzo y bienvenidos a un nuevo episodio de Atareao con Linux. Hoy te traigo una noticia importante: mi equipo personal ya es 100% libre de Docker. He completado la transición total al ecosistema de Podman, pero el camino no termina aquí. Ahora me toca enfrentarme a la migración de la infraestructura de producción de atareao.es, y en este proceso he descubierto el verdadero potencial de la construcción de imágenes con Buildah.
En este episodio, exploramos por qué Buildah es el compañero perfecto para Podman. Te explico las razones detrás de su nombre y, lo más importante, cómo cambia las reglas del juego al permitirnos construir imágenes mediante scripting puro. Si te gusta el control total y la flexibilidad de Bash o Fish, Buildah te va a encantar.
¿Qué vas a aprender en este episodio?
Adiós a las capas infinitas: Cómo Buildah gestiona el sistema de archivos de forma directa y eficiente. Scripting vs. Declarativo: Las ventajas de usar un lenguaje imperativo frente al tradicional Dockerfile. Seguridad extrema: Mi caso de uso real creando un servidor WebDAV con Nginx en modo rootless y sin usuario root interno. Criterios de elección: Cuándo te conviene seguir usando Dockerfiles por compatibilidad y cuándo Buildah es la herramienta quirúrgica que necesitas.Hablamos de transparencia, control, eficiencia de capas y, por supuesto, de los desafíos técnicos que supone aprender una nueva forma de trabajar. Si eres un apasionado de los contenedores y quieres llevar tu productividad en Linux al siguiente nivel, no te puedes perder este análisis detallado.
Capítulos:
00:00:00 Introducción: Adiós definitivo a Docker 00:01:13 El reto de migrar atareao.es a Podman 00:02:17 Construcción de imágenes: La pieza que faltaba 00:03:19 ¿Por qué se llama Buildah? Curiosidades y Naming 00:04:15 Diferencias filosóficas: Buildah vs Docker 00:05:40 El poder del Scripting en la creación de imágenes 00:07:54 Comparativa técnica: Transparencia vs Control 00:09:38 Eficiencia de capas y el "Squashing" nativo 00:11:32 Ventajas de Buildah: Pruebas atómicas y variables dinámicas 00:12:46 Inconvenientes: Dependencia del host y curva de aprendizaje 00:14:46 ¿Cuándo usar cada uno? Consejos para equipos personales y CI/CD 00:16:32 Caso práctico: WebDAV con Nginx, Rootless y sin Root 00:18:03 Conclusiones y próximos pasosMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 26 Mar 2026 - 18min - 782 - ATA 781 WhatsApp en Linux. La solución DEFINITIVA (y no es lo que esperas)
Bienvenidos a un nuevo episodio de Atareao con Linux. Soy Lorenzo y hoy vamos a resolver un problema que nos afecta a muchos: la gestión de WhatsApp en el escritorio Linux sin morir en el intento ni comprometer nuestra privacidad.
A pesar de que soy un firme defensor de Telegram por todas las opciones de automatización y trabajo que me ofrece, la realidad es que para comunicarme con ciertas personas necesito WhatsApp. Tras el cese de funcionamiento de herramientas populares como ZapZap, he encontrado la solución definitiva mediante el uso de Progressive Web Applications (PWA), pero con un giro especial: haciéndolo funcionar en Firefox.
En este episodio técnico pero accesible, profundizamos en:
La filosofía de uso: Por qué he dejado de intentar convencer a los demás de migrar de plataforma y cómo me adapto a las herramientas que otros usan para ser más productivo. PWA for Firefox: Un análisis detallado de esta extensión y su binario en Rust que permite lo que Mozilla aún no ofrece de forma nativa. Aislamiento de perfiles: La enorme ventaja de separar tus aplicaciones web (WhatsApp, Telegram, Gemini, Google Docs) en contenedores estancos para mayor seguridad y orden. Instalación y Configuración: Los pasos necesarios para integrar estas aplicaciones directamente en tu lanzador de aplicaciones de Linux, como si fueran nativas. Privacidad: Cómo aprovechar el motor de protección de Firefox frente al rastreo mientras usamos servicios de terceros.Si alguna vez has sentido que tu flujo de trabajo se fragmenta al tener que abrir el navegador para responder un mensaje, este episodio te abrirá las puertas a un escritorio mucho más integrado y eficiente.
Capítulos:
00:00:00 Introducción: El dilema de WhatsApp en el escritorio
00:01:45 Telegram vs WhatsApp: ¿Por qué no intento convencerte?
00:03:42 Mi flujo de trabajo: Cuándo uso cada herramienta
00:04:45 El problema con ZapZap y las apps de terceros
00:05:08 La inspiración: PWA y el consejo de Antonio Manfredi
00:06:40 El reto de las Progressive Web Applications en Firefox
00:07:08 PWA for Firefox: La extensión que lo cambia todo
00:07:54 Ventajas técnicas: Perfiles aislados y multiplataforma
00:08:45 Soporte avanzado: Controladores de protocolos y archivos
00:09:40 Seguridad y gestión de credenciales con Bitwarden
00:10:55 Limitaciones actuales y beneficios del antirrastreo
00:12:01 Guía de instalación: El binario de Rust y la extensión
00:13:37 Mi experiencia personal: Migrando Telegram y Gemini a PWA
00:14:55 El riesgo de la dependencia y por qué elijo Firefox
00:16:15 Conclusión y comunidad Atareao con LinuxMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 23 Mar 2026 - 17min - 781 - ATA 780 La guía definitiva de Hardening y Despliegue en Podman. De 0 a Producción en 2 minutos
¡Hola! Soy Lorenzo y en este episodio te abro las puertas de mi laboratorio personal para contarte cómo estoy viviendo la gran migración de toda mi infraestructura —incluyendo atareao.es— de Docker hacia Podman. Si llevas tiempo siguiéndome, sabrás que desde mediados de enero te he estado dando pinceladas sobre las bondades de Podman, pero hoy bajamos al barro: te cuento cómo me he puesto manos a la obra para que esta transición no sea solo un cambio de herramienta, sino una evolución total en seguridad y eficiencia.
El corazón de este movimiento es el concepto "rootless". He rediseñado por completo la forma en la que entiendo el servidor virtual. Olvídate de ejecutarlo todo como root; aquí te explico cómo he separado las responsabilidades creando un usuario administrador con sudo (que apenas usamos) y un usuario dedicado exclusivamente a las aplicaciones ("apps") que no tiene privilegios de administrador. Esta capa de seguridad adicional cambia las reglas del juego y nos permite dormir mucho más tranquilos.
A lo largo del podcast, desgloso mi metodología para lograr un despliegue homogéneo, reproducible e idempotente. Te hablo de los Quadlets, de cómo orquestar servicios como Traefik, WordPress y MariaDB de forma sencilla, y de por qué he decidido tratar mis archivos de configuración de contenedores como si fueran simples "dotfiles". Para ello, te presento mi flujo de trabajo con YADM (Yet Another Dotfiles Manager), que me permite replicar toda mi configuración en cualquier servidor nuevo en menos de dos minutos.
También entramos en detalles técnicos de "hardening". Te cuento qué parámetros del kernel he tocado para evitar ataques de red, cómo he configurado el SSH para que sea una fortaleza inexpugnable y por qué he vuelto a confiar en Fail2Ban, no solo por seguridad, sino para ahorrar ciclos de CPU que antes se desperdiciaban gestionando ataques por fuerza bruta. Además, te muestro mi kit de herramientas esenciales: desde Crypta para la gestión de secretos hasta utilidades como Zoxide, Starship o Neovim que hacen que trabajar en la terminal sea una delicia.
Capítulos:
00:00:00 Introducción: La migración de atareao.es a Podman
00:00:44 Por qué abandonar Docker: Ventajas del modelo Rootless
00:01:05 Orquestación con Quadlets: Homogeneidad e Idempotencia
00:02:12 Estrategia de pruebas: El entorno en Hetzner
00:03:05 Seguridad avanzada: Configuración de usuarios Admin vs Apps
00:05:12 Automatización con Scripts: Instalación de herramientas esenciales
00:06:25 Hardening del Kernel y Red: Protegiendo el servidor
00:07:28 Hardening de SSH y la importancia de Fail2Ban en el consumo de CPU
00:08:54 Firewall y optimización para HTTP/3
00:09:25 El script del usuario 'Apps': Persistencia y Sockets de Podman
00:10:20 Herramientas de terceros: Sops, Crypta y gestión de secretos
00:11:27 El dilema de la gestión: ¿Por qué tratar contenedores como Dotfiles?
00:12:21 YADM: El motor de despliegue para mis archivos de configuración
00:13:03 Estructura de directorios: Available vs Systemd
00:14:36 Demostración lógica: Habilitando y deshabilitando stacks (Qlist)
00:16:34 Conclusiones de las pruebas: Estabilidad y rapidez de réplica
00:18:14 Ventajas e inconvenientes del flujo de trabajo en terminal
00:19:17 Próximos pasos y despedida: El futuro en Podman
Espero que disfrutes de este viaje técnico tanto como yo he disfrutado rompiendo y reconstruyendo mi servidor para traerte esta solución estable. ¡No olvides unirte al grupo de Telegram de Atareao con Linux para comentar tus propias experiencias migrando a Podman!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 19 Mar 2026 - 20min - 780 - ATA 779 ¿Adiós definitivo a GNOME? Mi nueva vida con Niri y DMS
¿Te imaginas tener la ligereza de un gestor de ventanas y la comodidad de GNOME todo en uno? En este episodio número 779, te cuento mi transición definitiva de Ubuntu a Arch Linux en el escritorio y cómo he sustituido GNOME por Niri y la increíble "piel" Dam-Material-Shell.
A menudo, el problema de los Tiling Window Managers es que tienes que configurar cada pieza por separado: el panel, el dock, el lanzador... Es un trabajo tedioso y muchas veces el resultado parece un "Frankenstein" visual. Dam-Material-Shell cambia las reglas del juego ofreciendo un entorno totalmente homogéneo, elegante y sincronizado. Hoy analizamos la recién estrenada versión 1.4, que trae mejoras que me han hecho abandonar cualquier otra herramienta.
Lo que aprenderás en este episodio:
Lanzador vitaminado: Descubre cómo usar el lanzador para cálculos rápidos, búsqueda de GIFs y emojis sin usar el ratón.Conectividad móvil: Sincronización de notificaciones y archivos con el escritorio de forma nativa.Audio bajo control: Uso de alias para dispositivos y amplificación extra para esos vídeos que se escuchan bajo.Reglas de ventana visuales: Configura comportamientos específicos para aplicaciones como la terminal sin editar código.Niri y el scroll horizontal: Por qué este flujo de trabajo es más natural que el tiling tradicional.Si eres un entusiasta de la personalización en Linux o simplemente buscas un sistema que no se interponga en tu camino y te haga más productivo, este audio te dará las claves para montar el escritorio definitivo.
Secciones del podcast:
00:00:00 Introducción: El fin de una era con Ubuntu y GNOME
00:00:48 El cambio a Arch Linux y el uso de Ubuntu en servidores
00:01:14 Descubriendo Niri: El Tiling Window Manager con scroll horizontal
00:01:45 ¿Qué es Dam-Material-Shell y por qué lo necesitas?
00:02:40 El problema de mantener piezas sueltas en un gestor de ventanas
00:03:22 Dam-Material-Shell: La "piel" que unifica tu escritorio
00:04:45 Novedades de la versión 1.4: Un entorno de escritorio completo
00:06:07 El nuevo Lanzador de Aplicaciones y sus superpoderes
00:07:02 Complementos: Búsquedas, Emojis, GIFs y Matemáticas
00:09:40 Conectividad total: Integración con el móvil (KDE Connect y Valent)
00:10:48 Personalización visual: Temas oscuros y modos automáticos
00:12:20 Gestión avanzada de audio: Alias y amplificación al 200%
00:14:31 Funcionamiento técnico de Niri: El carrusel infinito
00:16:08 Reglas de Ventana (Window Rules) de forma visual y sencilla
00:17:35 Control total de Notificaciones y modo "No molestar"
00:19:18 Conclusiones: ¿Es mejor que Cosmic o GNOME?
00:20:24 Despedida y red de podcast Sospechosos Habituales
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 16 Mar 2026 - 21min - 779 - ATA 778 ¡Adiós Docker! Cómo configurar Traefik con Podman (Rootless y Seguro)
Bienvenidos a un episodio clave en la serie de Podman. Soy Lorenzo y hoy configuramos nuestro proxy inverso de referencia utilizando Podman y Quadlets. Si alguna vez te has preguntado si puedes dejar atrás Docker sin perder la potencia de Traefik, este podcast te dará todas las respuestas.
Lo que aprenderás en este episodio:
Seguridad Rootless: Cómo ejecutar Traefik sin ser root y por qué es la mejor decisión para tu servidor.Gestión de Puertos: El truco para usar los puertos 80 y 443 con un usuario común de forma persistente.Persistencia con Systemd: Configuramos el sistema para que tus servicios sigan vivos aunque cierres tu sesión.Quadlets y IaC: Organización de volúmenes, redes y contenedores mediante archivos de configuración limpios.Rendimiento Avanzado: Implementación de HTTP/3, optimización de cifrados (como ChaCha20) y compresión de tráfico.Ecosistema de Plugins: Integración de OIDC con Pocket ID para una autenticación centralizada y segura.Exploramos cómo el uso de variables como %H y %T simplifica el despliegue en diferentes entornos y cómo la configuración dinámica de Traefik nos permite añadir servicios "al vuelo" sin interrupciones. También profundizo en las medidas de seguridad extremas, como eliminar todas las capacidades del kernel excepto las necesarias para el bind de puertos y forzar que el sistema de archivos del contenedor sea de solo lectura.
Marcadores de tiempo:
00:00:00 - Introducción y objetivos00:02:18 - El reto de los puertos 80 y 44300:04:14 - Persistencia de procesos de usuario00:05:13 - Socket de Podman vs Docker00:06:43 - Quadlets: La magia de la infraestructura00:09:34 - Seguridad y privilegios mínimos00:12:12 - Configuración estática y dinámica00:14:39 - Autenticación avanzada con OIDC00:18:43 - Podman como el futuro del self-hosting
No te pierdas los detalles técnicos disponibles en las notas del episodio y únete a nuestra comunidad en Telegram para debatir sobre el fascinante mundo del Open Source.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 12 Mar 2026 - 21min - 778 - ATA 777 ¿Sigue siendo Kitty el mejor terminal? 5 años después, mi nueva configuración definitiva.
¡Hola! Soy Lorenzo y te doy la bienvenida al episodio 777 de Atareao con Linux. Hoy regresamos a los orígenes para redescubrir Kitty, el que considero el terminal más rápido y versátil del ecosistema Linux. Después de cinco años de uso continuo, he decidido exprimirlo al máximo y el resultado es una configuración que ha transformado por completo mi flujo de trabajo.
En este episodio, te detallo mi nueva estructura modular. He pasado de un caos de configuración a un sistema organizado en seis archivos independientes que gestionan desde las fuentes hasta el rendimiento. Te cuento por qué la fuente Iosevka Term NerdFont Mono es mi elección actual para maximizar la claridad en documentos Markdown y cómo las ligaduras de fuentes pueden ser hermosas y funcionales al mismo tiempo sin llegar a distraerte.
Lo que aprenderás en este episodio:
Modularidad: Cómo dividir tu configuración de Kitty para que sea mantenible y lógica.Interfaz Avanzada: Uso profesional de ventanas y pestañas con una estética Powerline informativa.Rendimiento Extremo: Ajustes para eliminar el parpadeo y optimizar el scrollback usando herramientas como "bat".Adiós al Ratón: El poder de los Kitens para copiar líneas, archivos y abrir URLs usando exclusivamente el teclado.Navegación Vim: Implementación de una tecla líder y movimientos HJKL para gestionar paneles y redimensionar ventanas.El objetivo principal de estos cambios es la eficiencia. Al integrar herramientas como icat para ver imágenes sin salir de la terminal y configurar atajos que imitan mi flujo en Vim, he logrado que la terminal sea el centro neurálgico de mi productividad. Si buscas rapidez, minimalismo y potencia, este análisis detallado de Kitty es para ti.
Además, al final del programa te cuento las novedades sobre el próximo tutorial de Traefik en Podman y las últimas novedades de la red de Sospechosos Habituales. ¡No te lo pierdas!
Marcadores de tiempo:
00:00:00 - Introducción y el regreso de Kitty.00:02:40 - La nueva estructura de archivos .conf.00:05:13 - Gestión de ventanas y pestañas.00:10:00 - Optimización de rendimiento y scrollback.00:12:00 - Tecla líder y navegación tipo Vim.00:14:50 - Uso avanzado de Kitens para productividad.00:19:10 - Próximos pasos con Traefik y Podman.Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 09 Mar 2026 - 21min - 777 - ATA 776 La guía definitiva de Logs en Podman. Automatización, Quadlets y Vector
¿Tu servidor Linux se comporta de forma extraña y no sabes por qué? En este episodio de Atareao con Linux, Lorenzo nos sumerge en el fascinante (y a veces temido) mundo de los logs, específicamente aplicados a la migración de Docker a Podman.
Descubre por qué delegar la gestión de registros en JournalD es la decisión más inteligente que puedes tomar para la estabilidad de tu infraestructura. Lorenzo comparte cómo configurar los límites de almacenamiento para evitar que un contenedor descontrolado sature tu disco duro, una lección aprendida tras años de lidiar con los archivos de texto de Docker.
Puntos clave del episodio:
00:00:00 - Introducción a la recta final de la serie Podman.00:03:41 - El papel de la IA y Gemini en la interpretación de errores.00:05:12 - Configuración de JournalD y límites de persistencia.00:10:46 - Scripts personalizados: checkQuadlets y JCU para mejorar la visibilidad.00:14:06 - Observabilidad avanzada con Vector y OpenObserve.00:16:10 - Cómo ser reactivo y bloquear ataques usando los registros de acceso.Además de la configuración técnica, Lorenzo nos presenta herramientas prácticas de su propio flujo de trabajo, como el uso de bat para el resaltado de sintaxis en logs y cómo automatizar reportes de salud para tus servicios. Si quieres transformar tus aburridos registros en una herramienta de seguridad activa capaz de enviar notificaciones a Telegram o bloquear IPs maliciosas directamente en el proxy, no puedes perderte este cierre de serie.
Recuerda que puedes encontrar todos los scripts y notas detalladas en atareao.es. ¡Acompañanos en este viaje hacia la maestría en contenedores!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 05 Mar 2026 - 19min - 776 - ATA 775 OpenDeck, la herramienta Definitiva para Streaming en Linux
¿Es posible tener una Stream Deck profesional en Linux por una fracción de lo que cuesta la marca líder? La respuesta es un rotundo sí, y en este episodio te cuento cómo lo he logrado.
Muchos de nosotros hemos mirado con recelo los dispositivos de 150 euros , pensando que no dejan de ser una "botonera bonita". Yo mismo tenía ese prejuicio , pero tras probar las alternativas económicas y, sobre todo, descubrir el potencial del software OpenDeck, mi visión ha cambiado por completo.
¿Qué vas a aprender en este episodio?
Adiós al hardware prohibitivo: Analizamos opciones como Soomfon y Mars Gaming que ofrecen la misma funcionalidad que Elgato por apenas 50€. OpenDeck, la salvación del Linuxero: Descubre esta herramienta de código abierto programada en Rust que permite gestionar cualquier Stream Controller en Linux, Windows y macOS. Compatibilidad total: Cómo utilizar los plugins del ecosistema de Elgato directamente en tu software libre. Tu móvil como mando: Te explico cómo usar Tacto para convertir cualquier Android en una Stream Deck sin gastar un céntimo. Integración avanzada: Mi setup personal con OBS para controlar grabaciones y mi configuración con el gestor de ventanas Niri usando potenciómetros para el scroll y cambio de escritorio.Contenido detallado:
00:00:00 Introducción y el teclado de 15 euros00:01:48 Mis prejuicios con las Stream Deck00:03:10 La magia de los botones dinámicos y LCD00:05:31 OpenDeck: El corazón de tu Stream Deck en Linux00:06:41 Alternativas económicas: Soomfon y Mars Gaming00:08:43 ¿Por qué elegí el modelo con potenciómetros?00:10:47 OpenDeck a fondo: Plugins y compatibilidad00:13:37 Personalización y Multi OBS Controller00:16:10 La opción gratuita: Convierte tu Android en un controlador con Tacto00:18:55 Mi flujo de trabajo: Integración con OBS y el gestor Niri00:21:51 Despedida y conclusiones finales
Si alguna vez has querido automatizar tus tareas, lanzar sonidos en tus podcasts o simplemente controlar tu escritorio con un giro de rueda, este episodio te dará todas las claves técnicas y económicas para hacerlo posible bajo Linux.
No olvides dejar tu valoración en Spotify o Apple Podcasts si te ha gustado el contenido. ¡Disfruta del episodio!
Más información, enlaces y notas en https://atareao.es/podcast/775🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 02 Mar 2026 - 22min - 775 - ATA 774 Rollbacks Automáticos en Podman. Como WatchTower pero mejor.
Bienvenidos a un nuevo episodio de Atareao con Linux. Soy Lorenzo y hoy vamos a profundizar en un aspecto que hace que la migración de Docker a Podman sea no solo recomendable, sino necesaria para quienes buscamos estabilidad: la gestión nativa de actualizaciones y la seguridad de los rollbacks.
En el ecosistema de contenedores, la actualización es vital para la seguridad y el rendimiento, pero siempre conlleva el riesgo de romper el servicio. Muchos hemos confiado en Watchtower, pero hoy descubriremos por qué Podman juega en otra liga. Al estar integrado directamente con SystemD, Podman nos permite automatizar todo el proceso sin dependencias externas.
¿Qué aprenderás en este episodio?
Podman Auto-Update: Cómo configurar tus contenedores para que se mantengan al día usando etiquetas de registro y locales.Quadlets y SystemD: La forma profesional de gestionar infraestructura como código en tu propia máquina Linux.Timers inteligentes: Cómo programar actualizaciones para que no ocurran todas a la vez y cómo verificar estas programaciones con herramientas nativas.Rollbacks Reactivos: La capacidad de Podman para detectar un fallo en una nueva versión y volver automáticamente a la imagen anterior, garantizando la disponibilidad del servicio.Notificaciones de estado: Cómo integrar avisos en Telegram o Matrix para estar siempre informado de lo que ocurre en tu servidor.Hablaremos sobre la importancia de los Health Checks y cómo estos actúan como el disparador perfecto para que el sistema decida si una actualización ha sido exitosa o si debe retroceder. Es la solución definitiva a esos problemas de compatibilidad que a veces surgen cuando una imagen nueva cambia sus requisitos sin previo aviso.
Si te apasiona el auto-hosting, la administración de sistemas o simplemente quieres optimizar tu flujo de trabajo con contenedores, este episodio te dará las claves técnicas para Capítulos:
00:00:00 Introducción al episodio 774: Migración a Podman
00:00:32 El problema de Watchtower en Docker
00:01:42 Podman: Actualizaciones automáticas de caja
00:02:10 La magia de la integración con SystemD
00:03:13 El comando Podman Auto-Update y etiquetas
00:03:57 Registry vs Local: Opciones de actualización
00:04:22 Cómo etiquetar contenedores y Quadlets
00:05:30 Configuración de timers con SystemD
00:06:33 Opciones avanzadas de programación y aleatoriedad
00:07:40 Verificación de timers con SystemD-Analyze
00:08:29 Ventajas sobre servicios externos
00:09:04 Rollbacks Reactivos: La gran ventaja de Podman
00:09:44 Requisitos técnicos para el rollback automático
00:10:33 Health Checks: Garantizando la salud del servicio
00:11:44 Solución a problemas de compatibilidad en imágenes
00:12:51 Notificaciones automáticas en Telegram y Matrix
00:14:11 Conclusiones y superioridad frente a Watchtower
00:14:40 Recursos en las notas y etiquetas detalladas
00:15:34 Próximos pasos de la migración: Traefik y Logs
00:16:32 Despedida y red de podcasts
Recuerda que tienes todos los detalles técnicos y las etiquetas mencionadas en las notas del episodio en atareao.es. ¡Disfruta del episodio!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 26 Feb 2026 - 16min - 774 - ATA 773 Automatización Total. Etiqueta tus MP3 como un profesional
¿Es Python siempre la mejor opción para tus scripts de automatización? En este episodio, Lorenzo profundiza en una de las discusiones más recurrentes de la comunidad: la estabilidad de los scripts frente a la comodidad de los módulos de terceros. Acompaña a nuestro experto en Linux mientras desglosa los motivos que lo llevaron a abandonar soluciones basadas en Python para la gestión de metadatos de audio.
Descubre ID3CLI, una herramienta potente y ligera escrita en Rust que soluciona los problemas de retrocompatibilidad y fallos en tiempo de ejecución. Aprenderás cómo automatizar el etiquetado de tus podcasts extrayendo datos directamente de archivos Markdown, eliminando la necesidad de introducir información manualmente en herramientas gráficas. Analizamos la importancia de tener binarios compilados que simplemente "funcionan", permitiéndote centrarte en crear contenido en lugar de arreglar herramientas rotas.
Temas destacados del episodio:
Bash vs Python: ¿Cuándo el "follón" de compilar merece la pena? Los peligros de depender de módulos de terceros que cambian sin previo aviso. De EasyTag a la automatización total en la terminal. Uso de Front Matter y RipGrep para un flujo de trabajo eficiente. Soporte de metadatos para Apple y carátulas en múltiples formatos.Capítulos,
00:00:00 Introducción: El dilema de Bash vs Python
00:00:48 El riesgo de las dependencias de terceros en Python
00:01:35 La obsesión por la automatización de metadatos
00:03:01 Flujo de trabajo: De EasyTag a la Terminal
00:05:36 Extrayendo datos del Front Matter en Markdown
00:07:24 Herramientas antiguas: ID3 y MiD3v2 (Mutagen)
00:09:12 El colapso de los módulos y la necesidad de compilar
00:10:13 Presentando ID3CLI: La solución definitiva en Rust
00:11:53 Características técnicas y soporte de formatos (MP3, OGG, FLAC)
00:13:48 Integración de ID3CLI en scripts de automatización
00:15:23 Reflexión sobre la importancia de los metadatos
00:16:42 Nuevo proyecto: El podcast "La Era de las Distros"
00:17:47 Comunidad y cierre del episodio
Además, Lorenzo nos habla sobre su nuevo podcast "La Era de las Distros", una mirada necesaria a las distribuciones Linux que marcaron un hito en la informática española como LinEx o Guadalex. ¡Disfruta del episodio y optimiza tu entorno Linux!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 23 Feb 2026 - 18min - 773 - ATA 772 Evita Contenedores ZOMBIE. Guía Maestra de Health Checks en Podman
¿Tu contenedor está realmente funcionando o es solo un proceso zombie ocupando memoria? En el episodio 772 de Atareao con Linux, te revelo los secretos para gestionar la salud de tus contenedores como un experto.
Soy Lorenzo y en esta entrega nos enfocamos en Podman y los Health Checks. Si en el episodio 688 hablamos de Docker, hoy damos el salto definitivo hacia la automatización profesional en Linux utilizando Quadlets y Systemd.
Lo que vas a descubrir en este audio:
Detección de Zombies: Aprende a identificar procesos que parecen activos pero no responden. Dependencias Reales: Cómo configurar tu stack de WordPress, MariaDB y Redis para que arranquen en el orden correcto y solo cuando sus predecesores estén sanos. Auto-reanimación: Configura políticas de reinicio que actúan automáticamente ante fallos de salud. Notificaciones Inteligentes: Recibe alertas en Telegram o en tu escritorio cuando tus servicios cambien de estado.Este episodio es una guía práctica para cualquier persona que quiera robustecer su infraestructura de contenedores, evitando los cierres inesperados y las dependencias rotas que suelen ocurrir con herramientas tradicionales como Docker Compose.
Capítulos:
00:00:00 ¿Tu contenedor está vivo o es un ZOMBIE? 00:01:44 ¿Qué es realmente un Health Check? 00:02:22 4 Ventajas de usar Health Checks 00:03:20 Implementación en Podman y Docker 00:05:20 La potencia de los Quadlets 00:08:58 Dependencias inteligentes: WordPress+MariaDB+Redis 00:11:00 Notificaciones On Success 00:13:55 Gestión de errores On Failure 00:18:21 Próximos pasos y TraefikSi disfrutas del podcast, te agradecería enormemente una valoración en Spotify o Apple Podcast. ¡Ayúdame a difundir la palabra del Open Source!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 19 Feb 2026 - 20min - 772 - ATA 771 Adiós a las excusas. Cómo monté mi VS Code en un servidor
¿Te has rendido alguna vez intentando programar en movilidad? Te confieso que lo de programar en la tablet Android no me estaba funcionando, y la razón era sencilla: pereza y falta de un entorno coherente. En el episodio de hoy, te cuento cómo he solucionado este problema de raíz instalando Code Server en un servidor remoto.
A lo largo de este audio, exploramos los desafíos de mantener múltiples entornos de desarrollo y por qué la fragmentación mata tu creatividad. Te detallo el paso a paso de mi configuración técnica: desde la creación de una imagen de Docker personalizada hasta la integración de herramientas modernas escritas en Rust (como Bat y LSD) que mejoran la experiencia en la terminal.
Lo que aprenderás en este episodio:
Por qué un servidor de desarrollo es superior a las instalaciones locales en tablets. Cómo configurar Docker Compose para desplegar Code Server con persistencia real. Seguridad avanzada: Uso de Traefik, Pocket ID y geobloqueo para proteger tu código. Trucos de configuración para VS Code en el navegador: Mapeo de teclas, evitar el conflicto con la tecla Escape y el uso de la fuente JetBrains Mono. Productividad máxima con los modos de Vim integrados en el flujo web. Cómo transformar Code Server en una PWA para eliminar las distracciones del navegador en Android.No se trata solo de tecnología, sino de eliminar las fricciones que nos impiden avanzar en nuestros proyectos. Si quieres saber cómo convertir cualquier dispositivo con un navegador en tu estación de trabajo principal, no te pierdas este episodio.
Cronología del episodio:
00:00:00 El fracaso de programar en tablet (y por qué)
00:01:43 La solución definitiva: Code Server
00:02:12 El problema de los entornos fragmentados
00:03:53 Mi imagen personalizada de Docker para Code Server
00:05:04 Herramientas imprescindibles en Rust (Bat, LSD, SD)
00:06:23 Configuración de Rust y herramientas de desarrollo
00:07:05 Persistencia y Docker Compose
00:08:06 Seguridad: Traefik, Pocket ID y Geobloqueo
00:10:03 Optimizando VS Code para el navegador
00:11:13 Sincronización y persistencia de extensiones
00:12:43 Estética y tipografía (Ayu Dark y JetBrains Mono)
00:13:59 El poder de Vim dentro de Code Server
00:15:51 Cómo usar Code Server como una PWA en Android
00:17:04 Teclado físico: El accesorio obligatorio
00:18:50 Conclusiones y futuro del desarrollo remotoRecuerda que puedes encontrar todas las notas, el repositorio y los enlaces mencionados en atareao.es. Si te gusta el contenido, una valoración en Spotify o Apple Podcast ayuda muchísimo a seguir difundiendo el mundo Linux y el Open Source.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 16 Feb 2026 - 20min - 771 - ATA 770 ¡Deja de usar contraseñas en tus Docker Compose! Descubre Podman Secrets
¿Te preocupa tener tus claves y contraseñas en texto plano? En este episodio 770 de Atareao con Linux, te explico por qué deberías dejar de usar variables de entorno tradicionales y cómo Podman Secrets puede salvarte el día. Yo mismo he pasado años ignorando este problema en Docker por la pereza de configurar Swarm, pero con Podman, la seguridad viene de serie.
Hablaremos en profundidad sobre el ciclo de vida de los secretos: cómo crearlos, listarlos, inspeccionarlos y borrarlos. Te mostraré cómo Podman gestiona estos datos sensibles fuera de las imágenes y fuera del alcance de miradas indiscretas en el historial de Bash. Es un cambio de paradigma para cualquier SysAdmin o entusiasta del Self-hosting.
Pero no nos quedamos ahí. Te presento Crypta, mi nueva herramienta escrita en Rust que integra SOPS, Age y Git para que puedas gestionar tus secretos de forma profesional, permitiendo incluso la sincronización con repositorios remotos. Veremos cómo configurar drivers personalizados y cómo usar secretos en tus despliegues con MariaDB y Quadlets.
Capítulos destacados:
00:00:00 El peligro de las contraseñas en texto plano00:01:23 El problema con Docker Swarm y por qué elegir Podman00:03:16 ¿Qué es realmente un Secreto en Podman?00:04:22 Ciclo de vida: Creación y muerte de un secreto00:08:10 Implementación práctica en MariaDB y Quadlets00:12:04 Presentando Crypta: Gestión con SOPS, Age y Rust00:19:40 Ventajas de usar secretos en modo RootlessSi quieres que tu infraestructura sea realmente segura y coherente, este episodio es una hoja de ruta esencial. Aprende a ocultar lo que debe estar oculto y a dormir tranquilo sabiendo que tus tokens de API no están al alcance de cualquiera.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 12 Feb 2026 - 22min - 770 - ATA 769 ¿Stream Deck por 15€? Configurando un Macro Pad en Linux
¿Te falta espacio en el teclado o quieres automatizar tareas en Linux de forma física? Soy Lorenzo y en este episodio 769 de Atareao con Linux te cuento cómo he integrado un mini teclado programable de apenas 15€ en mi flujo de trabajo diario.
Hablamos de teclados mecánicos, de la comodidad de los teclados partidos y, sobre todo, de cómo no gastarse una fortuna en dispositivos como el Stream Deck de Elgato cuando puedes conseguir resultados similares (¡y más divertidos de configurar!) con hardware económico y un poco de ingenio Linuxero.
Lo que descubrirás en este episodio:
El hardware: Un análisis de este dispositivo de 3 teclas y una rueda (potenciómetro) basado en el chip CH552. Adiós a Windows: Cómo configurar dispositivos que "solo soportan Windows" directamente desde tu terminal Linux. El poder de Rust: Exploramos la herramienta ch57 para el mapeo de teclas y cómo Rust está facilitando la creación de utilidades para hardware. Configuración técnica: Archivos YAML, mapeo de teclas de función extendidas (F13-F24) y reglas de udev para permisos. Capboard: Te presento el demonio que he desarrollado para gestionar este teclado como un servicio de sistema.Si eres de los que disfruta "cacharreando" con archivos de configuración y quieres llevar tu productividad al siguiente nivel sin vaciar la cartera, no te puedes perder este audio.
Capítulos del episodio:
00:00:00 Introducción y mi obsesión por los teclados 00:01:33 ¿Qué es un Stream Deck y por qué no compré el de Elgato? 00:02:47 El mini teclado de 15€: 3 teclas y una rueda 00:05:00 El reto: Configurar hardware diseñado para Windows en Linux 00:06:38 La salvación se llama Rust y el proyecto ch57 00:07:44 Identificando el dispositivo (lsusb y el chip CH552) 00:08:43 Asignando teclas mágicas: de la F13 a la F22 00:10:48 Instalación y mapeo con archivos YAML 00:13:02 Permisos de usuario: Configurando reglas de udev 00:15:08 Bonus: He creado mi propio demonio en Rust (Capboard) 00:17:35 ¿Vale la pena? Mi veredicto y un avance del próximo gadget 00:18:25 Despedida y red de podcastMás información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 09 Feb 2026 - 19min - 769 - ATA 768 Quadlets. La pieza secreta de Podman que cambiará tu servidor para siempre
¿Sigues usando Docker porque te da pereza el cambio? En este episodio de Atareao con Linux te voy a demostrar por qué los Quadlets son la razón definitiva para que te decantes por Podman de una vez por todas. Si ya te hablé de los Pods y te pareció interesante, lo de hoy es llevar la gestión de contenedores al siguiente nivel: la integración TOTAL con SystemD.
En el episodio 768, te explico cómo los Quadlets permiten gestionar tus contenedores, volúmenes y redes exactamente como si fueran servicios nativos de tu sistema operativo. Olvídate de scripts extraños o de depender de herramientas externas; aquí todo se define con archivos de configuración sencillos (.container, .network, .volume) que SystemD entiende a la perfección.
Te cuento mi experiencia real migrando mis proyectos actuales. Ya tengo bases de datos PostgreSQL funcionando bajo este modelo y la estabilidad es, simplemente, de otro planeta. Veremos cómo levantar un stack completo de WordPress con MariaDB y Redis utilizando esta tecnología, gestionando las dependencias entre ellos con las directivas 'After' y 'Requires' de SystemD. ¡Se acabó el que un contenedor intente arrancar antes de que la base de datos esté lista!
Capítulos del episodio:
00:00:00 Introducción y el adiós definitivo a Docker 00:01:33 ¿Qué es un Quadlet y por qué revoluciona Linux? 00:03:22 Los 6 tipos de Quadlets disponibles 00:05:12 Cómo gestionar un Quadlet de tipo contenedor 00:06:46 Definiendo Redes y Volúmenes como servicios 00:08:13 El flujo de trabajo: Git, secretos y portabilidad 00:11:22 Integración con SystemD: Nombres y prefijos 00:13:42 Desplegando un Stack completo: WordPress, MariaDB y Redis 00:16:02 Modificando contenedores y recarga de SystemD (Daemon-reload) 00:17:50 Logs con JournalCTL y mantenimiento simplificado 00:19:33 Auto-update: Olvídate de Watchtower para siempre 00:20:33 Conclusiones y próximos pasos en la migraciónAdemás, exploramos ventajas brutales como el control de versiones mediante Git, la gestión de logs centralizada con JournalCTL y las actualizaciones automáticas nativas que harán que te olvides de Watchtower. Si quieres que tu servidor Linux sea más profesional, robusto y fácil de mantener, no puedes perderte este audio.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 05 Feb 2026 - 22min - 768 - ATA 767 Gestión de secretos extrema. SOPS + AGE + RUST (Más rápido que nunca)
¡Bienvenidos a un nuevo episodio de Atareao con Linux! Soy Lorenzo y hoy te traigo una confesión técnica: he abandonado mi sistema de gestión de contraseñas de toda la vida. ¿El motivo? La pura y dura velocidad.
En el episodio de hoy (el 767), profundizamos en la migración de pass hacia un ecosistema más moderno compuesto por Sops y Age. Te cuento los dolores de cabeza, pero también las inmensas satisfacciones de tener todos tus secretos centralizados en un archivo YAML cifrado de forma inteligente, donde las claves son visibles pero los valores están protegidos.
Si alguna vez has sentido que tu flujo de trabajo con secretos es lento o farragoso, aquí te traigo la solución. Te detallo cómo he programado mis propias herramientas en Fish Shell para gestionar el día a día y, sobre todo, te presento mi nueva creación en Rust: Crypta. Esta herramienta es la pieza que faltaba en el puzzle para que trabajar con credenciales en la terminal sea algo que ocurra a la velocidad del pensamiento.
Además, exploramos conceptos avanzados como el uso de Yadm para gestionar dotfiles y cómo las plantillas Jinja pueden automatizar la configuración de tus aplicaciones inyectando secretos de forma segura en memoria.
Contenido del episodio:
00:00:00 Introducción: El reto de gestionar secretos en la terminal
00:01:23 Por qué migrar de Pass a Sops y Age
00:03:08 La obsesión por la rapidez y el archivo único
00:04:26 Repositorios privados y versionado de secretos
00:06:59 El flujo de trabajo con .secrets.yml
00:08:02 Creando un CRUD personalizado en Fish Shell
00:10:30 Sincronización: Secret Pull, Push y Sync
00:12:46 Integración avanzada con Jinja y Yadm
00:15:28 Kripta: Gestión de secretos de alto rendimiento en Rust
00:18:25 Conclusiones y reflexiones sobre la migración
00:19:42 Despedida y red de podcasts
Acompáñame en esta aventura de optimización extrema. Ya sabes que el día son dos días y uno ya ha pasado, ¡así que vamos a aprovecharlo haciendo que nuestro Linux vuele!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 02 Feb 2026 - 20min - 767 - ATA 766 Adiós a Docker Compose. Cómo usar PODS en Podman. Paso a Paso
¿Sigues usando Docker Compose para todo? Es hora de descubrir la verdadera potencia de Podman: los Pods. En este episodio te acompaño en la migración de un stack completo de WordPress, MariaDB y Redis para que veas cómo simplificar radicalmente la gestión de tus contenedores.
Aprenderás por qué el concepto de "vaina" (Pod) cambia las reglas del juego al permitir que tus contenedores compartan la misma red y dirección IP, atacando directamente a localhost. Veremos desde el funcionamiento técnico del contenedor Infra hasta la automatización profesional con Quadlet y systemd.
¿Qué es un Pod?: El origen del nombre y por qué es la unidad lógica ideal para tus servicios.
Adiós a los problemas de red: Cómo conectar WordPress y base de datos sin crear redes virtuales, usando simplemente 127.0.0.1.
Seguridad y Sidecars: Blindar servicios como Redis dentro de la misma vaina para que sean inaccesibles desde el exterior.
Gestión unificada: Cómo detener, arrancar y monitorizar todo tu stack con un solo comando.
Persistencia y automatización: Generar archivos YAML de Kubernetes y convertirlos en servicios nativos de Linux con archivos .kube.
Si buscas soluciones prácticas para "cualquier cosa que quieras hacer con Linux", este episodio te da las herramientas para profesionalizar tu infraestructura.
Notas completas y comandos utilizados: https://atareao.es/podcast/766
Thu, 29 Jan 2026 - 27min - 766 - ATA 765 Adiós a PASS y GPG. Por qué me pasé a Age y SOPS
🔐 Cifrado Moderno: Migrando de Pass a Age + SOPS
¿Es GPG demasiado lento para tu flujo de trabajo? En este episodio, Lorenzo Carbonell (atareao) explica por qué decidió abandonar su antigua gestión de contraseñas y cómo ha optimizado sus dotfiles y despliegues de Docker utilizando un "dúo dinámico" de herramientas modernas.
El fin de una era: Por qué pass y gopass dejaron de ser la solución ideal para gestionar secretos complejos.
Age (Actual Good Encryption): La alternativa ligera a PGP con llaves pequeñas, seguras y un funcionamiento extremadamente sencillo.
SOPS de Mozilla: Cómo cifrar solo los valores sensibles de tus archivos YAML, JSON o .env, manteniendo la estructura visible para Git.
Productividad real: Un script práctico para levantar stacks de Docker Compose pasando secretos directamente desde SOPS sin escribirlos en el disco.
Si buscas una forma más rápida y profesional de gestionar tus credenciales en Linux, este episodio te da las claves para dar el salto tecnológico.
En este episodio descubrirás:
Mon, 26 Jan 2026 - 23min - 765 - ATA 764 Por qué NO deberías usar ROOT en tus Contenedores (y cómo arreglarlo)
¿Sabías que ejecutar Docker como root es, en esencia, darle las llaves de tu casa a cualquier proceso que corra en un contenedor? En este episodio exploramos el modo Rootless, una configuración que aumenta drásticamente la seguridad de tus servidores al eliminar la necesidad de privilegios de administrador.
El Experimento del Escape: Te explico cómo un atacante puede usar el socket de Docker para "escapar" del contenedor y tomar el control total de tu host.
User Namespaces desmitificados: Entenderás cómo Linux crea una "realidad paralela" donde eres root dentro del contenedor, pero un usuario normal y corriente fuera de él.
La magia de subuid y subgid: Cómo el sistema gestiona los rangos de IDs para que tus procesos vivan en su propia burbuja de seguridad.
Podman vs Docker: Por qué Podman detiene ataques de escalada de privilegios de forma nativa gracias a su arquitectura sin demonio y sin root.
Guía de implementación: Pasos clave para configurar este entorno en Ubuntu y Arch Linux, incluyendo la gestión de almacenamiento y redes.
El truco de los puertos bajos: Cómo permitir que tu usuario use los puertos 80 y 443 sin trucos complejos de firewall, usando simplemente sysctl.
Si te preocupa la seguridad de tus servicios autohospedados (self-hosted) o quieres llevar tu gestión de contenedores al siguiente nivel de profesionalismo, este episodio es para ti.
Notas completas y comandos: Visita atareao.es para ver todos los scripts y configuraciones mencionadas.
YouTube: Busca "atareao" para ver la demostración visual del ataque de escape.
Proyecto: Sigue el podcast para más soluciones sobre cómo optimizar tus sistemas Linux.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao#Linux #Podman #Docker #Rootless #Ciberseguridad #SelfHosted #SysAdmin #Atareao
Thu, 22 Jan 2026 - 28min - 764 - ATA 763 Migra de Bash a Rust. Procesa millones de líneas en segundos
¿Es hora de jubilar tus viejos scripts de Bash? 🦀 En el episodio 763 de "Atareao con Linux", nos enfrentamos a uno de los retos más interesantes para cualquier amante de la automatización: la migración de Bash a Rust. Muchos scripts de Bash crecen hasta volverse inmanejables, lentos o propensos a errores silenciosos. Rust, a través de rust-script, nos ofrece una alternativa con un rendimiento profesional, seguridad de tipos y una gestión de errores que Bash simplemente no puede alcanzar.Lo que aprenderás hoy:
Gestión de estados: Cómo el operador '?' de Rust elimina la necesidad de comprobar manualmente la variable $? tras cada comando.Seguridad en argumentos: Olvídate de las expresiones regulares complejas para validar números; usa el tipado fuerte y el método .parse().Manipulación de rutas: El uso de PathBuf para evitar que un simple espacio en un nombre de archivo rompa toda tu lógica.Rendimiento extremo: Cómo BufReader permite procesar archivos de logs de Gigabytes en segundos, algo que en Bash podría tardar minutos.Concurrencia real: Paraleliza tareas (como pings masivos) de forma segura con hilos nativos o librerías como Rayon.Capítulos del episodio:
00:00:00 Introducción: El reto de migrar a Rust
00:01:05 Gestión de estados y errores: Adiós al $?
00:04:22 Paso de argumentos y seguridad de tipos
00:07:34 Validación semántica con Pattern Matching
00:09:47 Ejecución de comandos externos y captura de salida
00:13:28 Gestión de rutas con PathBuf
00:16:32 Variables de entorno y valores por defecto
00:19:15 Escritura eficiente de logs con BufWriter
00:23:04 Lectura masiva de archivos con BufReader
00:26:18 Concurrencia y paralelismo: std::thread vs Rayon
00:31:45 Conclusión y tabla comparativa final¿Por qué Rust para tus scripts?Migrar a Rust no es solo una cuestión de velocidad; es una cuestión de robustez. Al usar Rust, el compilador te obliga a manejar todos los posibles casos de error, evitando fallos en cadena en tus sistemas. Además, gracias a herramientas como Rayon, la ejecución paralela se vuelve rápida y segura. #Linux #Rust #Bash #Programacion #OpenSource #SysAdmin #Productividad #Atareao #RustLang #Automation
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 19 Jan 2026 - 31min - 763 - ATA 762 ¿Por qué estoy abandonando Docker? Adiós al Demonio
¿Es el fin de una era en mi infraestructura? En este episodio comienzo una de las tareas más importantes de esta temporada: la migración definitiva de Docker a Podman. Si alguna vez te ha preocupado la seguridad de tu servidor o el consumo descontrolado de recursos, este programa es para ti.
Históricamente, Docker ha sido la herramienta de referencia, pero su arquitectura basada en un demonio persistente (dockerd) que corre como root presenta riesgos y puntos únicos de fallo que he decidido dejar atrás. Podman llega para solucionar esto de forma elegante, integrándose orgánicamente en Linux y eliminando la necesidad de privilegios de administrador.
En este episodio exploramos:
El problema del "Gran Hermano": Por qué depender de un proceso centralizado que, si falla, detiene todos tus servicios.
Procesos independientes: Cómo Podman lanza contenedores que son procesos hijos directos, mejorando la fiabilidad.
Seguridad Rootless: La importancia de ejecutar contenedores sin privilegios de root para reducir drásticamente la superficie de ataque.
Transición transparente: Cómo aprovechar lo que ya sabes de Docker usando un simple alias.
Gestión de Logs y Registries: La integración nativa con journald y la libertad de configurar múltiples registros de imágenes.
El concepto de Pods: Una herramienta clave para agrupar contenedores que comparten red y recursos.
Esta es solo la primera entrega de una serie donde profundizaremos en ejemplos prácticos para que tú también puedas optimizar tu sistema Linux.
Capítulos
00:00:00 Introducción y el reto de migrar a Podman
00:01:25 Adiós al demonio: El problema de la arquitectura de Docker
00:02:33 Procesos independientes y aislamiento en Podman
00:03:49 Integración nativa con Systemd y el modelo estándar de Linux
00:04:41 Seguridad: Contenedores sin privilegios de administrador (Rootless)
00:06:10 Una transición indolora: El alias de Docker a Podman
00:07:33 Registries y gestión de imágenes personalizadas
00:09:36 Gestión eficiente de logs y Journald
00:11:20 Los Pods: Agrupación de contenedores y comunicación por localhost
00:14:51 El patrón Sidecar para añadir funcionalidades
00:15:40 Introducción a los Quadlets y futuro de la serie
00:17:36 Conclusión y despedida
¿Te ha resultado útil? Si te gusta el contenido práctico sobre Linux y el código abierto, no olvides seguir el podcast y dejar una valoración de 5 estrellas en Spotify. ¡Nos escuchamos el próximo lunes!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoFri, 16 Jan 2026 - 18min - 762 - ATA 761 Rust-script. El fin de los scripts en Bash
En este episodio de Atareao con Linux, te hablo sobre una de las transiciones más importantes que he hecho últimamente en mi flujo de trabajo: el paso del scripting tradicional hacia el uso de Rust como lenguaje de cabecera para resolver mis problemas cotidianos.
A pesar de que Fish se ha convertido en mi shell por defecto por lo intuitivo que resulta, el día a día me sigue obligando a crear scripts en Bash que, con el tiempo, terminan convirtiéndose en auténticos mastodontes difíciles de gestionar. Cuando un pequeño script crece demasiado, aparecen las limitaciones: una gestión de errores muy limitada, la falta de tests bien integrados, la ausencia de tipado que provoca errores difíciles de depurar y la pesadilla de manejar JSON o YAML dependiendo siempre de herramientas externas como jq.
Para solucionar esto sin tener que montar un proyecto completo de Rust con su Cargo.toml cada vez que quiero hacer algo sencillo, he recuperado una herramienta que es pura magia: Rust Script. Con ella, tengo lo mejor de los dos mundos: la potencia, seguridad y velocidad de Rust, pero con la agilidad y simplicidad de un script de toda la vida.
En este episodio te cuento:
Mi visión sobre Rust Script: Cómo lo utilizo como un lenguaje de scripting puro para sustituir a Bash cuando la cosa se complica.
El fin de la sobrecarga: Te explico cómo escribo scripts sin configurar proyectos completos, eliminando de un plumazo la burocracia de archivos de configuración.
Gestión de dependencias: Te muestro cómo declaro los crates que necesito directamente dentro del código mediante comentarios, haciendo que mis scripts sean totalmente autónomos y fáciles de mover de un sitio a otro.
Bajo el capó: Cómo funciona el sistema de caché y compilación para que, tras la primera ejecución, tus herramientas vuelen y sean instantáneas.
Ejemplos reales: Desde un "Hola Mundo" básico hasta herramientas que consultan APIs REST y procesan información de forma nativa sin herramientas de terceros.
Velocidad y fiabilidad: Por qué prefiero un binario tipado y testeado antes que una cadena de comandos en Bash donde un error en una tubería puede pasar desapercibido.
Además, aprovecho para adelantarte los próximos episodios técnicos donde voy a meterle mano a fondo a Podman. Quiero explicarte por qué, al haber nacido en Linux, tiene una integración mucho más natural que Docker y cómo pienso sacarle todo el partido.
Si tú también sientes que tus scripts de Bash se te están yendo de las manos, te invito a escuchar este episodio y descubrir cómo optimizar tu trabajo diario.
Este podcast forma parte de la red de Sospechosos Habituales. Puedes encontrar todos los detalles y los scripts que menciono en las notas del episodio en mi web, atareao.es.
¿Te gustaría que en el próximo episodio hiciera la migración en directo de uno de mis scripts de Bash a Rust Script para que veas el proceso paso a paso?
Timestamp
00:00:00 Introducción y la transición de Bash a Fish
00:00:50 Las limitaciones de los scripts complejos en Bash y Fish
00:01:26 Por qué elegir Rust para optimizar el trabajo
00:02:07 Introducción a Rust Script: Rust como lenguaje de scripting
00:02:36 Próximos episodios técnicos: Profundizando en Podman
00:03:59 Problemas comunes en Bash: Errores, tipos y datos estructurados
00:04:50 El punto intermedio: Rust Script vs. proyectos completos con Cargo
00:06:47 Ejemplo práctico: Cómo crear un "Hola Mundo" con Rust Script
00:08:07 Funcionamiento interno: Compilación y caché de binarios
00:09:43 Ejecución directa y permisos en archivos .rs
00:10:44 Cómo instalar Rust Script en Arch Linux y vía Cargo
00:11:32 Gestión de dependencias elegante dentro del script
00:14:03 Ejemplo avanzado: Uso de múltiples crates y peticiones web
00:16:32 Ventajas de trabajar con APIs JSON sin herramientas externas
00:18:25 Resumen de beneficios: Potencia, tipado y velocidad
00:20:13 Despedida y red de podcast Sospechosos Habituales
Wed, 14 Jan 2026 - 21min - 761 - ATA 760 La era de las distros. El podcast
¿Sabías que hace poco más de 20 años España fue el epicentro mundial de una revolución tecnológica sin precedentes? En este episodio, nos alejamos de los tutoriales habituales para sumergirnos en la historia viva del software libre en nuestro país.
Tengo el inmenso placer de charlar con Jesús González Barahona, profesor de la Universidad Rey Juan Carlos y referente indiscutible del código abierto, para presentaros un proyecto que nos hace especial ilusión: el nuevo podcast "La era de las distros".
A principios de los 2000, nombres como LinEx, Guadalinex, LliureX o MAX no eran solo nombres de software; eran apuestas políticas y sociales por la independencia digital. En este episodio analizamos:
El rescate de la memoria: Por qué es urgente entrevistar a los protagonistas de esta hazaña antes de que su legado se pierda.
La anomalía española: Cómo fue posible que diversas administraciones públicas lideraran el despliegue de miles de equipos con Linux mucho antes de que fuera "cool".
Soberanía y libertad: El software libre no como un ahorro de costes, sino como una herramienta para adaptar la tecnología a las necesidades de los ciudadanos.
El presente del pasado: El sorprendente hecho de que muchas de estas distribuciones siguen hoy más vivas que nunca en las aulas españolas.
Este nuevo podcast no es solo para técnicos. Es un documental sonoro que explora la intersección entre política, sociedad y tecnología. A través de entrevistas con técnicos, gestores y visionarios, reconstruimos el mapa de una época donde España fue pionera en soberanía tecnológica europea.
Estreno del proyecto: 19 de enero.
00:00:00 Presentación: Atareado con Linux y nuevos proyectos
00:01:42 Introducción al nuevo podcast: La era de las distros
00:01:58 Presentación de Jesús González Barahona
00:02:45 Qué es La era de las distros
00:03:45 El impacto de las distribuciones autonómicas en España
00:05:18 Divulgación y accesibilidad del podcast para no informáticos
00:08:25 Razones por las que estos proyectos no son ampliamente conocidos
00:11:46 Vigencia actual de proyectos como LinEx, LliureX y MAX
00:12:40 Origen y motivación del proyecto de registro documental
00:18:21 Sentimientos encontrados: entre el éxito y la amargura
00:21:32 La colaboración inesperada entre diferentes comunidades
00:24:15 Situación geopolítica actual y soberanía tecnológica europea
00:31:56 Conclusión y fecha de estreno del nuevo podcast
Web oficial: atareao.es
Grupo de Telegram: atareao con linux
Sigue el proyecto en: La era de las distros (disponible a partir del 19 de enero en las principales plataformas).
¿Te gusta este contenido? No olvides dejar una valoración de 5 estrellas en Apple Podcast o Spotify, ¡me ayuda muchísimo a seguir difundiendo el software libre!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 12 Jan 2026 - 33min - 760 - ATA 759 He liberado 600 GB de Docker! El comando que NO conoces
¿Alguna vez has sentido que tu servidor Linux se queda sin aliento por falta de espacio? Muchas veces nos obsesionamos con comprar más almacenamiento, ampliar la cuota de nuestro VPS o añadir discos al NAS, pero la solución no suele ser gastar más, sino limpiar mejor. En este episodio, te cuento cómo descubrí que tenía un "inquilino" con síndrome de Diógenes digital: Docker.
Acompáñame en esta "limpieza de año nuevo" donde pasamos la motosierra a más de 600 GB de basura que no servían para nada y que Docker había ido acumulando silenciosamente en mi sistema.
No podemos limpiar lo que no vemos. El primer paso es realizar un análisis profundo del almacenamiento. Mientras que herramientas como df -h o dust nos dan una idea general, Docker requiere una mirada específica para entender su estructura de datos.
El comando estrella: docker system df es la herramienta fundamental que te dirá exactamente cuántas imágenes, contenedores y volúmenes tienes, pero sobre todo, cuánto espacio es reclaimable (recuperable inmediatamente).
En mi caso, el gran culpable no eran las imágenes activas, sino el Build Cache, con cientos de capas intermedias acumuladas tras semanas programando y compilando proyectos en Rust.
No se trata de borrar por borrar. Si eliminas todo el caché de construcción de golpe, la próxima vez que necesites compilar un proyecto el proceso será eterno porque Docker tendrá que descargar y reconstruir todo desde cero.
Limpieza Quirúrgica: La clave está en usar filtros temporales como --filter "until=48h". Esto permite mantener lo que estás usando en tu desarrollo diario mientras fulminas los archivos obsoletos de la semana pasada.
Volúmenes Huérfanos: Aprenderemos a identificar esos datos que quedan "vivos" después de que el contenedor ha sido eliminado y que solo sirven para ocupar espacio innecesario.
El problema de los Logs: Si no configuras la rotación, los registros de texto pueden crecer hasta el infinito. Te enseño a usar fd para localizarlos de forma rápida y cómo configurar el archivo daemon.json para limitar su tamaño de forma definitiva.
Como buen amante de la eficiencia y la productividad, no quiero tener que ejecutar estos comandos a mano cada semana. He diseñado un script de limpieza llamado docker-clean que gestiona de forma segura contenedores parados, imágenes sin etiqueta y el monstruoso caché de construcción.
Para que el sistema se mantenga "hecho un figurín" de forma automática, te explico cómo programar este script mediante un Systemd Timer. Así, cada domingo a las 8:00 AM, tu servidor realizará su propia labor de mantenimiento sin que tú tengas que mover un dedo.
00:00:00 La obsesión por el almacenamiento
00:01:18 Docker: Un acumulador de basura en tu sistema
00:03:40 Diagnóstico profundo con df y dust
00:05:45 El comando estrella: docker system df
00:07:32 El monstruo del Build Cache y las capas intermedias
00:10:24 Volúmenes huérfanos: el cementerio de datos
00:11:21 Gestión quirúrgica de registros (logs) con fd
00:14:36 Mi script personal de limpieza: docker-clean
00:16:18 Automatización total con Systemd Timers
00:18:07 Conclusión y propósito de año nuevo
Puedes encontrar todos los comandos, el script de limpieza completo y las configuraciones del timer y el servicio en las notas detalladas del episodio en: https://atareao.es
¿Y tú? ¿Has comprobado cuánto espacio te está robando Docker hoy? Pásate por el grupo de Telegram t.me/atareao_con_linux y comparte con la comunidad cuántos gigas has logrado recuperar.
#Linux #Docker #SelfHosted #DevOps #Atareao #Productividad #SysAdmin #Rust #OpenSource
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 08 Jan 2026 - 19min - 759 - ATA 758 - De podcast a vídeo
¡Feliz 2026! Comenzamos el año con un episodio cargado de novedades y proyectos que buscan devolver algo de valor a la comunidad del software libre. En esta entrega, te presento dos "regalos" especiales: el renacimiento de una herramienta técnica para creadores de contenido y el anuncio de un nuevo podcast sobre la historia de Linux en España.
Todo surge a raíz de una invitación de José Jiménez para participar en una mesa redonda sobre el estado de los podcasts de Linux, junto a David Marzal (KDE Express), Jose (KernelCast) y bajo la impecable producción de David Baquero (Cursos de Desarrollo). Durante esa charla, surgió la recomendación de llevar los contenidos de audio a YouTube para alcanzar nuevas audiencias.
Fue en ese momento cuando surgió el recuerdo de Audiowave, un pequeño script que desarrollé hace ocho años para generar vídeos con ondas de audio dinámicas. La idea original era permitir que los audios estuvieran disponibles en plataformas de vídeo incluso cuando el creador no deseara aparecer físicamente en pantalla. El reto actual ha sido no solo recuperar la herramienta, sino darle el "cariño" que merece para los estándares de calidad actuales.
Lo que comenzó como un simple envoltorio (wrapper) de FFmpeg escrito en Bash, ha evolucionado hacia una herramienta robusta desarrollada en Rust. Esta nueva versión no solo es más rápida y segura, sino que introduce un nivel de personalización profesional:
Sistema de plantillas: Ahora es posible definir estilos reutilizables mediante archivos de configuración, controlando dimensiones, colores y la disposición de todos los elementos visuales.
Automatización de metadatos: La herramienta es capaz de extraer el título, el subtítulo y la carátula directamente de los archivos MP3, simplificando al máximo el flujo de trabajo del podcaster.
Filtros visuales avanzados: Gracias a la potencia de FFmpeg, Audiowave permite generar desde ecualizadores de múltiples bandas hasta ondas circulares que se modulan en tiempo real con la voz.
Optimización de renderizado: Aunque los estilos más complejos pueden requerir un tiempo de procesamiento considerable, el resultado final es una pieza de vídeo de alta fidelidad.
La motivación principal para actualizar Audiowave es el lanzamiento de "La era de las distros". Este nuevo podcast documental se centra en las distribuciones Linux autonómicas que nacieron en España a principios de los años 2000, tanto las oficiales respaldadas por instituciones como las iniciativas independientes.
A través de sus propios protagonistas, el podcast explora cómo estos proyectos fueron piezas clave en la estrategia de digitalización de diversas comunidades autónomas. Es un ejercicio de memoria histórica tecnológica que revela hitos asombrosos, como la instalación desde cero de más de 100.000 ordenadores con Linux hace ya un cuarto de siglo. Es un pasado fascinante que a veces olvidamos mientras nos maravillamos con noticias similares que llegan hoy desde otros países.
Este episodio es una invitación a explorar las herramientas que el código abierto pone a nuestra disposición para comunicar mejor, y un adelanto de un viaje sonoro por la historia del software libre en nuestro país.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 05 Jan 2026 - 21min - 758 - ATA 757 Las 20 herramientas que dominaron mi Linux en 2025
¿Qué hace realmente un usuario de Linux durante todo un año? En este episodio no teorizamos: auditamos. He analizado mi historial de comandos de 2025 y los datos no mienten.
Desde el dominio absoluto de Rust hasta la sorprendente eficiencia de uv en Python, hoy te desvelo las 20 herramientas que han vertebrado mi flujo de trabajo. Hablamos de productividad real, de cómo Neovim ha desplazado definitivamente a mis antiguos editores y de por qué herramientas como just o yadm son las joyas ocultas que deberías estar usando ya.
En este episodio descubrirás:
El Stack de la Eficiencia: Mi top 20 analizado por categorías (Desarrollo, Sistema y Navegación).
La transición a Rust: ¿Por qué cargo es el motor de mi día a día?
Adiós a la fricción: Cómo herramientas modernas están sustituyendo a los comandos clásicos de toda la vida.
Telemetría personal: El método para que tú también audites tu terminal.
Si quieres llevar tu productividad en Linux al siguiente nivel y conocer qué software está marcando la diferencia en 2025, este episodio es tu hoja de ruta.
👉 ¿Quieres ver las gráficas y los comandos? Tienes toda la información detallada en las notas del episodio en: https://atareao.es/podcast/757
💬 Únete a la conversación:
Canal de Telegram: https://t.me/atareao_con_linux
Mastodon: @atareao@mastodon.social
¿Te gusta el podcast? No olvides seguir el programa y dejar una valoración de 5 estrellas en Spotify. ¡Me ayuda muchísimo a seguir difundiendo el software libre!
#Linux #Productividad #Rust #Neovim #Terminal #SoftwareLibre #Atareao
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 29 Dec 2025 - 25min - 757 - ATA 756 Mis 6 Contenedores Docker IMPRESCINDIBLES en 2025
¡Bienvenidos a un nuevo episodio de Atareao con Linux! Estamos cerrando este 2025 y toca hacer balance de las herramientas que realmente han marcado la diferencia en mi servidor.
En este episodio te traigo una selección personal de los 6 contenedores Docker que se han vuelto imprescindibles en mi día a día. No solo por su funcionalidad, sino por cómo han simplificado mi flujo de trabajo, mejorado la seguridad y optimizado el rendimiento de mis sistemas.
Lo que encontrarás en este episodio:
1. Dodge: La alternativa ligera a Portainer que gestiona tus archivos YAML de forma reactiva y permite convertir comandos docker run a compose fácilmente.
2. Pocket ID: Seguridad "passwordless" al siguiente nivel. Centraliza tus accesos mediante Passkeys y biometría con soporte OIDC.
3. Doc Pick: El sustituto perfecto para la gestión de actualizaciones. Mantén tus imágenes al día con un panel visual intuitivo.
4. Beszel: Monitorización de recursos (CPU, RAM, Disco) tanto del host como de cada contenedor individual.
5. Quantum: Un fork de File Browser potenciado con búsqueda por lógica difusa e integración con OIDC.
6. Memos: Tu centro de micro-notas privado y extremadamente versátil gracias a su API.
Timestamps:
00:00:00 Introducción y balance del año 2025
00:01:05 Los seis contenedores imprescindibles de 2025
00:02:14 Consideraciones sobre el flujo de trabajo y mantenimiento
00:03:56 Dodge: El reemplazo moderno y ligero de Portainer
00:06:07 Pocket ID: Autenticación passwordless y OIDC
00:08:01 Doc Pick: Información y actualización de imágenes de contenedores
00:10:40 Beszel: Monitor de recursos de CPU, RAM y Docker
00:12:42 Quantum: Fork de File Browser con integración OIDC
00:14:39 Memos: Gestión de micronotas y enlaces mediante API
00:18:28 Resumen final y despedida
Recursos y enlaces:
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoSi te gusta el podcast, no olvides dejar una valoración de 5 estrellas en Spotify para ayudar a que más gente descubra el mundo de Linux y el Self-Hosting.
Thu, 25 Dec 2025 - 19min - 756 - ATA 755 ¡Deja de perder el tiempo! El escritorio Linux definitivo (Niri + DMS)
Hola, soy Lorenzo y esto es Atareao con Linux. Seguramente te ha pasado: te atrae la potencia y la eficiencia de un Tiling Window Manager (TWM), pero en cuanto te asomas al abismo de su configuración, te das la vuelta. No tienes tiempo para pasarte semanas editando archivos CSS, configurando barras de estado a mano o intentando que tus aplicaciones no parezcan un "Frankenstein" visual donde nada combina con nada.
En este episodio, te traigo lo que he bautizado como el Tiling Window Manager para seres humanos. Quiero contarte mi experiencia personal utilizando la combinación de Niri y Dank Material Shell (DMS), una pareja tecnológica que me ha hecho cambiar mis prioridades por completo y ha transformado mi escritorio en una herramienta de productividad pura.
Mi transición: De GNOME a la eficiencia de Niri
Durante mucho tiempo, mi escritorio principal era GNOME en un 80% del tiempo. Sin embargo, las tornas han cambiado drásticamente: ahora Niri ocupa casi la totalidad de mi flujo de trabajo, especialmente cuando me siento a programar. Pero Niri por sí solo puede ser austero; la verdadera magia surge cuando le añadimos Dank Material Shell. Gracias a esta capa, he conseguido tener un entorno de escritorio completo, moderno y espectacular sin las complicaciones habituales de los gestores de ventanas en mosaico.
¿Por qué deberías probar Dank Material Shell?
DMS no es solo un complemento, es una solución integral escrita en Go que utiliza Qt6 para ofrecerte todo lo que necesitas en un escritorio moderno. En este episodio te explico cómo esta herramienta centraliza elementos que normalmente tendrías que configurar por separado, como la barra de estado, el centro de notificaciones o el lanzador de aplicaciones.
Hablamos sobre la personalización inteligente: cómo el sistema es capaz de generar paletas de colores dinámicas basadas en tu fondo de pantalla (al estilo Material You) y, lo más importante, cómo logra una coherencia visual total entre aplicaciones GTK y Qt sin que tengas que mover un dedo. Además, analizamos con total sinceridad el consumo de recursos y por qué, a pesar de usar algo más de RAM que una configuración minimalista, la fluidez y la comodidad que aporta compensan con creces la inversión.
Instalación y ecosistema
Ya seas usuario de Arch Linux o prefieras la estabilidad de Ubuntu, te cuento los pasos clave para que puedas replicar este entorno en tu propia máquina. También exploramos herramientas complementarias del ecosistema como Matugen y Stasis, que terminan de redondear una experiencia de usuario que, sinceramente, creo que es el futuro de los escritorios en Linux.
Si buscas un entorno que se adapte a ti y no al revés, donde la estética y la funcionalidad vayan de la mano desde el primer minuto, acompáñame en este episodio. ¡Vamos directo al turrón!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao#Linux #Niri #DankMaterialShell #TilingWM #Productividad #OpenSource #Ubuntu #ArchLinux #Wayland #Programacion #EscritorioLinux
Mon, 22 Dec 2025 - 27min - 755 - ATA 754 Deja de sufrir con Docker! Mi Navaja Suiza para gestionar Volúmenes y Archivos
En este episodio de atareao con Linux te quiero contar una de mis grandes obsesiones: cómo mantener mis imágenes Docker lo más ligeras y seguras posible sin que eso me penalice cuando tengo que "ensuciarme las manos" dentro de un contenedor.
Si me sigues desde hace tiempo, ya sabes que siempre busco reducir la superficie de ataque de mis despliegues. Cuanto menos software innecesario tenga una imagen, menos vulnerabilidades. Pero claro, esto tiene un problema evidente: cuando entras en un contenedor basado en una imagen minimalista, te encuentras con que no tienes ni un editor de texto, ni un buscador de archivos, ni nada que te facilite la vida.
Para solucionar esto, he actualizado una imagen Docker que es mi auténtica "navaja suiza". En lugar de engordar mis imágenes de producción, utilizo este contenedor especializado que conecto a mis volúmenes cuando necesito gestionar datos, organizar archivos o realizar tareas de mantenimiento.
He reconstruido esta herramienta sobre Alpine 3.23 por su ligereza extrema. Pero lo potente es lo que lleva dentro, un ecosistema centrado en herramientas escritas en Rust que son increíblemente rápidas:
Shell y Prompt: He sustituido la clásica ash por Fish, para tener una shell interactiva y amigable, junto a Starship para un indicador visual ultra rápido.
Productividad: Uso herramientas que reinventan los clásicos: lsd para ver archivos con iconos, bat para leer con resaltado de sintaxis, y fd junto a ripgrep para buscar cualquier cosa en milisegundos.
Gestión y Edición: Para moverme por el sistema uso yazi, que es un gestor de archivos para terminal rapidísimo, y por supuesto Neovim para cualquier edición profesional.
Mi arma secreta (rnr): He incluido rnr para renombrar archivos de forma masiva usando expresiones regulares, algo vital para organizar mis bibliotecas de series y películas.
En este episodio te explico por qué me resulta mucho más cómodo utilizar volúmenes Docker en lugar de mapear directorios del host. Te cuento cómo esta práctica me facilitó la vida al migrar a Dockge y cómo gestiono mis datos multimedia de forma eficiente.
Para que tú también puedas usarlo, te comparto el script que utilizo para levantar este contenedor de forma efímera e interactiva:
Con este comando, el contenedor se destruye al salir, manteniendo mi sistema limpio y mis procesos gestionados correctamente gracias al flag --init.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoEtiquetas: #Linux #Docker #Rust #Productividad #SelfHosted #Neovim #OpenSource #SysAdmin #Contenedores #AlpineLinux #Atareao #PodcastLinux
¿Y tú? ¿Qué herramienta echas en falta en esta imagen? Cuéntamelo en los comentarios de Spotify o en el grupo de Telegram. ¡Espero que te sea de gran utilidad!
Fri, 19 Dec 2025 - 19min - 754 - ATA 753 ¿Que es S3 y por que lo necesitas para Selfhosting?
Hasta hace poco, MinIO era el rey indiscutible para implementar almacenamiento S3 autoalojado. Pero un cambio de licencia polémico (de Apache 2.0 a la estricta AGPL v3) y, lo que es peor para el usuario libre, la eliminación de la Consola GUI de la versión abierta, han forzado a muchos, incluido yo, a buscar una alternativa. ¡Y la hemos encontrado!
En este episodio, te explico a fondo qué es S3, por qué este protocolo de almacenamiento de objetos es una pieza clave e indispensable para cualquier infraestructura de selfhosting o *homelab*, y te presento a RustFS, el nuevo servidor compatible con la API de S3 que está diseñado para la comunidad, manteniendo la promesa de ser libre, transparente, rápido, y lo más importante: con su interfaz gráfica de administración incluida.
🔑 ¿Por Qué Necesitas S3 para Autoalojar?
S3, creado originalmente por Amazon, se ha convertido en el protocolo universal para guardar grandes cantidades de información sin preocuparse por la estructura del sistema de archivos. A diferencia de un sistema de archivos tradicional, S3 almacena los datos como objetos dentro de cubos (buckets).
Usos Prácticos en tu Homelab:
Backups Seguros y Versionados: Configura herramientas como **Restic** o Duplicity para enviar copias incrementales a un *bucket* en RustFS, aprovechando la deduplicación inteligente.Almacenamiento Multimedia Externo: Libera espacio en tu servidor principal configurando aplicaciones como **Jellyfin** o **Immich** para que usen tu *endpoint* S3 (RustFS) como almacenamiento principal para tus bibliotecas.Contenedores y Microservicios: Aloja los archivos subidos de aplicaciones como Nextcloud o Wordpress en el *endpoint* S3 para mayor estabilidad y facilidad de migración.Webs Estáticas: Sirve contenido HTML, CSS y JS directamente desde tu *bucket* a través de tu proxy inverso.❌ El Declive de MinIO: Un Cambio de Estrategia
MinIO cambió su licencia de la permisiva **Apache 2.0** a la estricta **AGPL v3** en 2020. Esta estrategia se enfoca en obligar a las grandes empresas a pagar o contribuir, pero se ha complementado con la **eliminación estratégica de la GUI** de la versión abierta. Considero este movimiento como un "impuesto a la comodidad", una barrera artificial que nos empuja a buscar soluciones que respeten la filosofía del *software* libre y la comodidad del usuario.
🌱 RustFS: El Verdadero Sucesor
RustFS es una implementación de un servidor de almacenamiento de objetos compatible con S3. Gana puntos críticos frente a MinIO porque mantiene la Consola de Administración (interfaz gráfica web) incluida en la versión de código abierto, devolviendo el control y la comodidad al usuario.
🛠️ Cómo Migrar tus Datos de MinIO a RustFS
La buena noticia es que, al ser ambos compatibles con la API S3, la migración es sorprendentemente sencilla. Te explico los comandos clave que puedes utilizar con la herramienta `mc` (MinIO Client) para realizar el *mirror* y la verificación de datos entre tu antiguo servidor y el nuevo *endpoint* de RustFS.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao#S3 #Selfhosting #MinIO #RustFS #Almacenamiento #Backups #Jellyfin #Immich #SoftwareLibre #Docker
Wed, 17 Dec 2025 - 25min - 753 - ATA 752 El detective de archivos abierto en Linux
¿Tu servidor o escritorio Linux está lento o no te deja desmontar un disco? ¿Borraste un archivo gigante pero el espacio no se liberó? ¡Tenemos al culpable!En este episodio de atareao con Linux, te destripo el comando más poderoso para el diagnóstico de sistemas: lsof (List Open Files).Aprenderás a usar este detective de recursos para resolver los problemas más frustrantes de administración de sistemas, desde la configuración de Docker hasta la optimización de tu VPS o Raspberry Pi.🔍 Lo que vas a DESCUBRIR y SOLUCIONAR en este Tutorial Práctico: Bloqueo Total: Cómo encontrar y matar al proceso que te impide desmontar un disco o borrar un directorio (¡Adiós al molesto "Device or resource busy"!). Problemas de Red y Puertos: Identifica INSTANTÁNEAMENTE qué servicio (Apache, Nginx, Traefik, o un contenedor Docker) está usando un puerto específico (80, 443, 8080) antes de que te dé un error. Archivos FANTASMA: Localiza esos archivos de log borrados que siguen siendo referenciados por procesos activos y están CONSUMIENDO tu espacio en disco. ¡Libera GB en segundos! Diagnóstico Avanzado: Aprende a inspeccionar librerías dinámicas (txt/mem) que usa tu aplicación (como Neovim o un servicio Rust) para depurar errores. Seguridad: Descubre qué usuarios o procesos están escuchando o tienen conexiones abiertas en tu servidor.🚀 Comandos y Recursos Clave:Opción Para qué sirvelsof +D /ruta Encontrar quién bloquea un directorio.lsof -i :puerto Saber quién usa un puerto (Ej: lsof -i :8080).lsof -u ^root Ver solo procesos de usuario (excluyendo root).lsof -p PID Inspeccionar los archivos de un solo proceso.lsof | grep deleted Encontrar archivos borrados que aún están abiertos.⏱️ Timestamps del EpisodioMinuto Tema0:00 Intro y Bienvenida: El Detective de Archivos en Linux1:30 El Problema del "Martillo": Por qué lsof es la herramienta que te faltaba2:26 💡 El Principio Fundamental: En Linux "Todo es un Archivo" y el poder de lsof4:07 ¿Qué es lsof? (List Open Files) y el rol de los Descriptores de Archivos (FD)6:05 La Gran Cantidad de Opciones: U, I, P y C7:02 Opciones Clave de lsof: -u (Usuario) y ejemplos7:57 Opciones Clave de lsof: -i (Internet/Red) para puertos (TCP, UDP, :8080)9:09 Opciones Clave de lsof: -p (PID/Proceso) y -c (Comando)10:48 Otras Opciones Útiles: +D (Directorios recursivos) y +L (Links/Archivos borrados)11:48 ❓ ¿Para qué usar lsof? La utilidad práctica12:54 Caso Práctico 1: Encontrar quién está utilizando un directorio (Ej. desmontar un USB)13:37 Caso Práctico 2: Ver procesos por usuario, excluyendo usuarios (usando el sombrerito ^)15:07 Caso Práctico 3: Saber si un servidor (Ej. Nginx) está levantado en un puerto15:44 Caso Práctico 4: Liberar espacio: Encontrar archivos borrados que siguen abiertos (grep deleted)17:06 Caso Práctico 5: Diagnóstico de librerías (mem) o archivos de swap (grep swp)17:46 Caso Práctico 6: Ver qué procesos están Escuchando (grep listen)18:09 Caso Práctico 7: Quién está usando un dispositivo (Ej. Cámara de vídeo /dev/video0)18:46 Conclusión y DespedidaMás información, enlaces y notas en https://atareao.es/podcast/752🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao#Linux #lsof #AdministracionDeSistemas #ServidorLinux #Docker #VPS #RaspberryPi #AtareaoConLinux #TutorialLinux #ComandosLinux #Neovim #SolucionDeProblemas
Mon, 15 Dec 2025 - 20min - 752 - ATA 751 Las 12 Preguntas que Siempre quisiste hacer sobre Self Hosting.
Especial Encuesta de Self-Hosting 2025! 🚀
En este episodio de "atareao con Linux", no solo reviso los resultados de la encuesta más importante de la comunidad self-hosted, sino que respondo a las 12 preguntas cruciales que todo sysadmin o entusiasta del autoalojamiento se hace. ¡Asegúrate de que no estás cometiendo errores críticos!
¿Qué vas a aprender?
⚙️ Hardware: ¿Cuál es el equipo perfecto para el self-hosting? ¿Raspberry Pi o Mini PC?
🐳 Contenedores: ¿Por qué Docker es la opción ganadora para instalar servicios y cómo gestionarlos con Portainer o Dockge?
🛡️ Seguridad: Analizamos los dilemas de acceso: ¿Usar solo VPN o combinarla con un Proxy Inverso (Traefik o NGINX)?
📧 Correo: ¿Es realmente viable alojar tu propio servidor de email? La respuesta de la comunidad te sorprenderá.
🎬 Multimedia: Comparamos al líder Open Source Jellyfin con Plex.
🔒 Datos Sensibles: La verdad sobre si debes guardar tu información más sensible en tu propio servidor y cómo hacer backups correctos (¡el error que el 34% sigue cometiendo!).
Este es un episodio esencial para optimizar tu servidor Linux, mejorar tu productividad y garantizar tu privacidad.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareao#selfhosting #docker #linux #traefik #jellyfin #servidor #productividad #seguridad
Mon, 08 Dec 2025 - 36min - 751 - ATA 750 Niri, Sherlock y Stasis: El Atajo que Disparó mi Productividad en Wayland
Niri, Sherlock y Stasis: El Atajo que Disparó mi Productividad en Wayland 🚀💻
En este episodio de atareao con Linux, me sumerjo de lleno en la configuración de mi escritorio y en los cambios que han transformado mi flujo de trabajo de programación. Durante estas últimas semanas, Niri, el tiling window manager para Wayland, ha superado a GNOME como mi entorno principal. Te explico la razón: Niri me ofrece una disposición de ventanas superior, clave para mi desarrollo web (backend y frontend), permitiendo tener todo lo que necesito a la vista y modificarlo rápidamente. La comodidad y la velocidad de cambio entre espacios de trabajo en Niri son imbatibles para la productividad.
🎯 EL ATAJO DE TECLADO MÁS BUSCADO 🎯
¡Problema resuelto gracias a la comunidad! En un episodio anterior me quejé de un gran inconveniente: el atajo para saltar rápidamente entre distintos monitores. Un oyente me dio la clave y ahora te la comparto. Descubre cómo usar Super+l y la sorprendente funcionalidad de j y k para saltar a espacios de trabajo arriba o abajo. Este pequeño cambio ha sido una gran alegría para mi productividad.
✨ NOVEDADES Y MEJORAS CLAVE DE NIRI ✨
Repasamos todas las novedades que trae la última versión de Niri, un compositor que está evolucionando a pasos agigantados:
Nuevo Cambiador de Ventanas Alt-Tab: Ahora con previsualizaciones en vivo y optimizado para múltiples terminales, permitiendo limitar la vista al espacio de trabajo o monitor actual.
Animaciones Suaves: Las transiciones al entrar o salir del modo pantalla completa ahora están completamente animadas, eliminando saltos bruscos.
Maximizar Real (Wayland): Se implementó el comportamiento de "Maximizar" que hace que una ventana ocupe toda el área de trabajo sin bordes ni huecos.
Configuración Avanzada: Ahora puedes definir diseños y gaps específicos por monitor o por espacio de trabajo, ideal para monitores ultra-anchos.
Soporte Técnico: Mejoras en la compatibilidad con monitores DisplayLink y corrección de errores de accesibilidad para lectores de pantalla como Orca.
🔧 CAMBIOS DE HERRAMIENTAS: Stasis y Sherlock 🔧
1️⃣ Stasis: El Gestor de Estado Inactivo Definitivo
He adoptado Stasis para gestionar el estado inactivo de mi equipo. Te explico cómo este gestor moderno, que evita que el equipo entre en idle cuando no debe, optimiza tu trabajo. Te detallo el proceso de instalación en Arch Linux (paru -S stasis), cómo añadir tu usuario a los grupos input y video, y los comandos para habilitar el servicio con systemctl --user.
2️⃣ Sherlock: Un Lanzador con Lógica Propia (e integrado en Niri)
Mi torpeza me obligó a buscar una alternativa a anyrun, y encontré Sherlock. Aunque está diseñado pensando en Hyprland, confirmo que funciona perfectamente en Niri. Sherlock es un lanzador ligero implementado en Rust y Gtk4, que es rápido, altamente configurable y hace seguimiento de las aplicaciones más usadas.
Características destacadas: Personalización total con CSS, capacidad de definir comandos y flujos de trabajo, y un sistema de plugins (para Wikipedia, diccionario, etc.).
Te muestro cómo instalarlo (paru -S sherlock-launcher-git) y cómo integrarlo con el atajo Super + Space en Niri.
Si buscas soluciones prácticas, tutoriales detallados y métodos para exprimir al máximo tu escritorio Linux, especialmente con entornos Wayland y tiling window managers, este episodio es fundamental. ¡No te pierdas cómo optimizar tu sistema para la productividad extrema!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoFri, 05 Dec 2025 - 22min - 750 - ATA 749 Actualizaciones ROTAS en UBUNTU por las Coreutils en Rust🚨
El título de este episodio podría sonar a clickbait apocalíptico, pero te aseguro que cada palabra es real. Durante un periodo crítico, las actualizaciones automáticas de seguridad en Ubuntu estuvieron completamente rotas. ¿El culpable? Un ambicioso proyecto para modernizar Linux reemplazando utilidades básicas escritas en C por versiones en Rust. Este proceso de "oxidación" nos ha dejado dos fallos críticos que analizaremos a fondo.
En este programa urgente, no solo destripamos lo que falló, sino que lo convertimos en un caso de éxito rotundo para el desarrollo de código abierto. Si eres usuario de Linux, especialmente de Ubuntu, tienes que escuchar esto para entender por qué este tropiezo es, en realidad, un gran salto adelante para la seguridad de tu sistema.
Ubuntu, en su versión intermedia 25.10 (Questing Quokka), decidió introducir dos piezas de software fundamentales escritas en Rust para probar su estabilidad antes de una versión LTS:
uutils coreutils: La reimplementación de los comandos básicos de GNU (como ls, cp, y el protagonista de esta historia, date).
sudo-rs: La reimplementación del comando sudo, la puerta de entrada a los permisos de administrador (root).
Ambas fallaron poco después del lanzamiento. Analizaremos dos problemas principales:
El Problema: El comando date -r se utiliza para obtener la hora de última modificación de un archivo. La versión en Rust de las coreutils tenía un error lógico: en lugar de devolver la fecha del archivo, siempre devolvía la fecha y hora actual del sistema.
La Consecuencia Desastrosa: Te explico cómo esta simple incorrección lógica rompió el mecanismo de actualizaciones automáticas desatendidas (unattended-upgrades). El sistema, al consultar la fecha de un archivo de referencia con el comando defectuoso, creía que la última actualización se había hecho "ahora mismo", y por lo tanto, no ejecutaba ninguna nueva búsqueda ni instalación de parches de seguridad. Un bug silencioso que te deja vulnerable. Esta misma lógica fallida puede afectar scripts de backup que comprueban la antigüedad de las copias de seguridad con date -r.
Exposición de la Contraseña: Cuando un usuario comenzaba a introducir su clave de sudo y el tiempo de espera (timeout) expiraba, el código defectuoso de sudo-rs exponía en pantalla y potencialmente en el historial de la shell la parte de la contraseña que ya se había tecleado. ¡Un fallo de seguridad grave que comprometía la confidencialidad de tu clave de administrador!
Fallo de Autenticación Avanzada: También se produjo un fallo más técnico relacionado con la gestión de las credenciales de root bajo ciertas configuraciones (targetpw o rootpw), permitiendo un posible bypass de autenticación a usuarios locales que reutilizaran "pases rápidos" temporales defectuosos.
La parte más constructiva de esta historia es la velocidad de respuesta. Aquí es donde se demuestra el valor real de probar estos cambios en versiones intermedias:
Respuesta Inmediata.
Divulgación Coordinada (CVD).
El Valor de la LTS.
No podemos olvidar el objetivo principal. El uso de Rust en uutils coreutils y sudo-rs busca la seguridad de la memoria, eliminando las causas fundamentales de la mayoría de los fallos de seguridad críticos en el código C que tienen décadas de antigüedad.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 01 Dec 2025 - 22min - 749 - ATA 748 Docker PRO. Cómo Optimizar Gitea y Stalwart con depends_on y Healthchecks
En este episodio profundizamos en la optimización de tus sistemas Docker. El objetivo de hoy: implementar nuevas y mejores prácticas para que tus contenedores sean más estables y eficientes. Si buscas cómo sacar el máximo partido a tu infraestructura autoalojada, esta es tu guía.
Uno de los problemas más comunes al trabajar con Docker Compose es que los servicios dependientes (como una aplicación web o un servidor de correo) intentan conectarse a la base de datos antes de que esta haya terminado de arrancar, provocando errores.
Te muestro mi solución PRO para esto: utilizamos la combinación de la directiva depends_on con la condición service_healthy.
Esta configuración asegura que servicios críticos como Gitea (mi servicio de alojamiento de repositorios Git) y Stalwart (mi servidor de correo) solo se inician cuando su respectiva base de datos PostgreSQL ha pasado su chequeo de salud y está lista para aceptar conexiones. Esto garantiza una secuencia de inicio robusta y sin fallos, una mejora fundamental en la gestión de tus datos y sistemas.
Gitea : Vemos cómo configurar el healthcheck para la base de datos PostgreSQL usando pg_isready y cómo el servicio Gitea espera por esta condición. También optimizamos el tráfico interno del runner de Gitea para que use la red interna de Docker (http://gitea:3000), reduciendo la carga de Traefik y mejorando la seguridad.
Stalwart : En el caso de mi cliente de correo, he migrado la base de datos de RocketDB a PostgreSQL. La razón es sencilla: PostgreSQL es más transparente y me permite integrar sin esfuerzo mi contenedor personalizado (atareao/postgres-backup:latest) para hacer copias de seguridad eficientes y automatizadas.
En este episodio, también te presento una nueva herramienta que me ha encantado: Dockpeek.
Dockpeek es un panel de control autoalojado y muy ligero para Docker, perfecto para la gestión de contenedores en múltiples hosts. Si te gustan las herramientas que reemplazan funcionalidades complejas con soluciones sencillas, Dockpeek te va a encantar.
Características destacadas: Acceso web con un clic, mapeo automático de puertos, registros de contenedores en vivo, integración con Traefik y chequeo de actualizaciones de imágenes.
Te comparto el compose.yml que utilizo para instalar Dockpeek junto a Traefik.
Quantum (Filebrowser): He ajustado los permisos y la configuración del servicio que utilizo para compartir archivos. Te explico la solución al problema de permisos que surgió al intentar usar un usuario que no es root, modificando el uid, gid y mode en la sección configs del compose.yml.
Escucha el episodio para obtener el tutorial completo y adaptar estas soluciones a tu Raspberry Pi o VPS. ¡Es la forma más práctica de optimizar tu productividad y tus sistemas Linux!
¡Suscríbete a "atareao con Linux" para no perderte ningún tutorial y llevar tu experiencia con Linux a un nivel PRO! 🐧
#docker #linux #dockpeek #gitea #stalwart #postgres #dockercompose #portainer #atareao #productividad #servidores #opensource #tutorial #sysadmin
🐳 Docker PRO: Adiós a los Fallos de Inicio con depends_on y healthcheck🔎 Dockpeek: La Alternativa Ligera a Portainer💻 Otras Actualizaciones🔗 Recursos y Enlaces
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 27 Nov 2025 - 20min - 748 - ATA 747 UBUNTU 25.10. Adiós a Sudo y C , GNOME 49, Rust-Coreutils y la Transición a Arch-Style
En este episodio, me sumerjo en el lanzamiento de Ubuntu 25.10 "Questing Quokka" y analizo las novedades más importantes y controvertidas. Aunque estoy en el mundo Rolling Release (ArchLinux), me gusta centrarme en lo que traen las nuevas versiones.
Temas clave y soluciones prácticas:
Seguridad y Rendimiento: Hablo sobre la gran novedad que ha generado debate: la incorporación experimental de sudo-rs y rust-coreutils. Analizo por qué Canonical está reescribiendo estas utilidades esenciales en Rust y aclaro si esto realmente rompe con la filosofía GNU/Linux.
Escritorio Productivo: Revisamos el nuevo entorno GNOME 49, con mejoras como los controles multimedia en la pantalla de bloqueo y el reemplazo de herramientas como el terminal (por Ptyxis) y el visor de imágenes (por Loupe).
Herramientas para Desarrolladores: Si eres desarrollador o sysadmin, esta versión trae actualizaciones significativas: Python 3.14, Rust 1.85, OpenJDK 25 y soporte experimental para TPM 2.0.
Bonus Práctico: Pacstall: Te muestro qué es Pacstall, un gestor de paquetes alternativo en la línea de los PKGBUILD de ArchLinux, y cómo puede facilitar la instalación de software de terceros en tu sistema Ubuntu. Una herramienta esencial para estar "a la última".
Escucha y descubre todas las soluciones que trae Ubuntu 25.10 para "cualquier cosa que quieras hacer con Linux".
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 24 Nov 2025 - 23min - 747 - ATA 746 Control Docker desde el móvil con Docker Manager
Ya sea que gestiones una instancia de Syncthing, un backend de Obsidian con Docker, o tu proxy inverso con Traefik, sabes que la necesidad de revisar logs o reiniciar un contenedor puede surgir en cualquier momento. La solución habitual es la Terminal SSH, lo que te obliga a sacar el portátil o lidiar con interfaces incómodas en el móvil.
En este episodio, te presento Docker Manager, una aplicación gratuita y open source construida con Flutter y un hermoso diseño Material Design. Esta herramienta es tu centro de comando definitivo para Docker, diseñado específicamente para pantallas pequeñas, permitiéndote abandonar el tedio del SSH para el 99% de las tareas diarias. Es una solución de productividad pura, muy en la línea de lo que buscamos en atareao con Linux: soluciones prácticas para "cualquier cosa que quieras hacer con Linux".
Este episodio es un tutorial práctico paso a paso para que puedas poner Docker Manager en marcha y sacarle el máximo partido:
Conexión Segura Multiserver: Explicaremos detalladamente cómo configurar la conexión a múltiples hosts Linux (VPS, Raspberry Pi, máquinas virtuales) y por qué debes utilizar la autenticación por clave privada SSH para mantener tu infraestructura segura. La app se integra perfectamente con tu pila de red móvil, lo que significa que funciona sin problemas a través de VPNs como WireGuard o Tailscale.
Control Total de Contenedores: La facilidad para realizar operaciones esenciales: Start, Stop, Restart, Inspect y Remove con un solo toque. Haremos hincapié en el filtrado por Docker Compose Stacks, esencial para quien gestiona múltiples servicios como bases de datos o instancias de Rust alojadas en contenedores.
Diagnóstico Avanzado en Movimiento:
Logs en Vivo: Revisar los logs en tiempo real es vital para el debugging de emergencia.
Estadísticas del Contenedor: Ver el uso de CPU y memoria al instante para identificar cuellos de botella.
Shell Interactivo: La característica estrella. Te mostraremos cómo iniciar un shell (bash) dentro de un contenedor o en el host Linux mismo. Esto te da la libertad de usar herramientas como redis-cli o revisar configuraciones rápidas sin abrir un cliente SSH.
Mantenimiento y Limpieza del Sistema: Analizaremos la función System Cleanup (Pruning) para deshacernos de esas imágenes y volúmenes "colgantes" que roban espacio.
Gestión de Imágenes, Redes y Volúmenes: Un vistazo a cómo la aplicación simplifica la visualización y gestión de estos componentes clave de Docker. Incluso hablaremos de la flexibilidad para configurar el Docker CLI Path, lo que abre la puerta a la gestión de Podman también.
Docker Manager es una herramienta indispensable que libera tu escritorio Linux y te da el poder de administración en tu bolsillo. Ya no tendrás que interrumpir tu flujo de trabajo en Neovim o cerrar tu sesión de escritorio GNOME para hacer una comprobación rápida. Es la solución perfecta para mantener tus servicios (desde un servidor web hasta una instancia de Obsidian) funcionando sin problemas 24/7.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 20 Nov 2025 - 13min - 746 - ATA 745 ¿Tu SERVIDOR Linux es SEGURO? Revisa los puntos críticos con DockerShield
¿Estás seguro de que tu servidor Linux y tus contenedores Docker están a salvo de intrusos? 🤔 Hoy desgranamos un agujero de seguridad SILENCIOSO pero CRÍTICO que afecta a la gran mayoría de self-hosters que usan Docker y UFW/iptables. 🚨 Prepara tus oídos para una solución práctica.
🔥 El Problema Real: Docker y el Firewall Fantasma 🔥La creencia popular es que si tienes UFW activo, estás protegido. ¡Falso! Docker tiene la costumbre de saltarse tus reglas de firewall (bypass UFW) al manipular iptables directamente. Esto deja puertos sensibles (como PostgreSQL 5432, Redis 6379, MongoDB 27017, o incluso interfaces de administración como Portainer 9000) ¡EXPUESTOS A INTERNET! 🌐 Es un riesgo que muchos descubren demasiado tarde, como me pasó a mí. 😱 No dejes que te pase a ti.
🛡️ LA SOLUCIÓN: DOCKERSHIELD 🛡️Te presento DockerShield, la herramienta de auditoría de seguridad open source diseñada específicamente para detectar y alertar sobre estos fallos. Es rápida, ligera (solo 8MB) y no requiere dependencias complejas. Perfecta para tu Raspberry Pi o tu VPS. 🚀
🔑 EN ESTE EPISODIO APRENDERÁS (Modo Tutorial):
Cómo usar el instalador de una línea: curl | bash.
Ejecutar el comando mágico: dockershield scan.
Interpretar la Puntuación de Seguridad (0-100) y las alertas 🔴 CRITICAL / 🟡 MEDIUM.
El Fix Inmediato: Cómo limitar los puertos a 127.0.0.1 en tu comando docker run.
DockerShield va mucho más allá de los puertos de Docker, ofreciendo una visión completa de la salud de seguridad de tu sistema Linux.
Análisis Inteligente de Puertos: Detección de más de 50 puertos sensibles de bases de datos, colas de mensajes e interfaces de administración.
Detección de Bypass: Comprobación activa de si tu firewall está siendo ignorado por Docker.
Topología: Mapeo de cómo se conectan tus contenedores y qué redes usan.
Auditoría SSH: ¿Estás usando solo claves? ¿Está el login de root deshabilitado? DockerShield te lo dice. 🔑
Protección de Fuerza Bruta: Revisión de la configuración y estado de fail2ban. ¡Es esencial!
Mantenimiento: Alertas sobre parches de seguridad y actualizaciones pendientes que no puedes ignorar. ⬆️
Comandos de Diagnóstico: Usos de dockershield status, dockershield check ssh y dockershield doctor.
Reporting Accionable: La herramienta te da los comandos exactos para solucionar los problemas detectados.
JSON Output: Cómo usar la salida JSON para automatizar las auditorías en tus scripts de salud del servidor o CI/CD.
Ligera, rápida, local (no envía datos a ningún sitio) y sin dependencias complejas. La tranquilidad en 5 segundos.
Instalación y Primer Escaneo Rápido (60 Segundos) ⏱️2. Auditoría Integral de 360° (Puntos Críticos) 🔎A. Seguridad Docker: Contenedores y Redes 🐳B. Seguridad del Host Linux: Acceso y Mantenimiento 🐧3. Productividad y Automatización ⚙️4. Conclusión y por qué es la herramienta ideal para elself-hoster 🎯
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 17 Nov 2025 - 13min - 745 - ATA 744 COSMIC un prometedor escritorio Linux, pero visualmente de 2015
En este episodio me sumerjo en uno de los entornos de escritorio más comentados y esperados del mundo open source: COSMIC.
Mi podcast se centra en Linux y el software de código abierto, ofreciendo soluciones y métodos para mejorar la productividad, y al ver el hype alrededor de COSMIC, no pude resistirme. Lo instalé en mi ArchLinux con el objetivo de probarlo a fondo, ver cómo se comporta y, sobre todo, evaluar si realmente ofrece algo que me haga considerar migrar de mi combinación actual de GNOME y Niri.
Y lo cierto es que me he encontrado con un escritorio interesante, que combina la opción por un Tiling Window Manager con la de un escritorio tradicional. Pero, como en toda herramienta, tengo mis peros.
Análisis de COSMIC: Lo Bueno, Lo Malo y Mis Críticas Sinceras
La Excelencia en Tiling: Sin lugar a dudas, lo que más me ha gustado de Cosmic es su gestor de ventanas tipo tiling. Sinceramente, es la mejor experiencia deTiling Window Managerque he probado hasta la fecha en un entorno de escritorio tradicional. Esta es una gran ventaja sobre los gestores puros (i3, Sway, Niri) que te obligan a instalar y configurar un lanzador, un gestor de red, una barra de tareas, etc. Si buscas probar el tiling sin complicarte la vida, COSMIC es una gran opción.
Productividad en Código: ¿Mejor que Niri? A pesar de la calidad de su Tiling, no alcanza el nivel de Niri para programar. Con Niri, tengo la facilidad de construir el espacio de trabajo que necesito en cada momento con una rapidez y sencillez inigualables. En este aspecto, COSMIC todavía no se acerca a la fluidez que busco.
Los Auxiliares y Configuración: Cosmic incluye todas esas herramientas que completan la experiencia de usuario: barra de tareas, dock, notificaciones. La herramienta de configuración es bastante completa y muy al estilo GNOME, lo que la hace familiar para muchos usuarios. No tiene tantas opciones como GNOME, pero es funcional.
La Decepción Estética (¡El Aspecto Visual de 2015!): Este es mi gran "pero". Desde mi punto de vista, el aspecto visual de Cosmic es propio de hace diez años. Es como volver al pasado. No está tan pulido como GNOME o KDE; la integración con herramientas de terceros es mejorable y, sinceramente, le queda un largo camino para ser un entorno de escritorio atractivo.
Las Aplicaciones Nativas y mi Problema con Flatpak: Confieso que no me gustan las aplicaciones nativas de Cosmic; creo que el equipo debería centrarse en pulir el entorno para integrar perfectamente las aplicaciones de terceros. Pero lo que realmente "remata la fiesta" es la tienda de aplicaciones. Resulta que todas las aplicaciones que ofrece, o al menos las que vi, hay que instalarlas con Flatpak. Ya sabéis que no puedo con Flatpak; me parece una locura que para instalar una herramienta sencilla haya que descargar paquetes que ocupan una barbaridad, se integran pobremente y, a menudo, ni funcionan correctamente.
Conclusión: El tiling de Cosmic funciona muy bien y es una gran puerta de entrada para los nuevos usuarios. Pero en el resto de aspectos, todavía tiene mucho que recorrer para estar a la altura de entornos más maduros como GNOME o KDE.
Si buscas soluciones prácticas para la gestión de datos, la optimización de sistemas Linux o quieres ver la evolución de tecnologías clave como Docker, Neovim, Rust o Traefik, este episodio te dará una perspectiva útil sobre el futuro de los escritorios Linux.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 13 Nov 2025 - 21min - 744 - ATA 743 Cinco plugins imprescindibles para exprimir Neovim en 2025
En este nuevo episodio del podcast nos sumergimos de lleno en la evolución constante de Neovim para asegurar que tu entorno de desarrollo y tu productividad sigan a la vanguardia en 2025.
Como sabéis, mi podcast "atareao con Linux" se centra en Linux y el software de código abierto, con un estilo muy práctico y orientado a tutoriales, buscando ofrecer soluciones y métodos para mejorar la productividad. Y no hay mejor herramienta para la productividad que un editor de código optimizado.
De vez en cuando, es crucial revisar qué se está cocinando en el mundo Neovim, no solo para incorporar novedades sino para actualizar y optimizar la configuración de plugins ya existentes. Es un mundo que no para, con nuevos complementos apareciendo constantemente. Por eso, un año después de mi último recopilatorio similar (episodio 649, donde, por cierto, 3 de 5 plugins siguen siendo fundamentales), he vuelto a hacer un paseo por dotfiles.
El resultado son cinco complementos que son IMPRESCINDIBLES para cualquiera que busque la máxima eficiencia al codificar, administrar archivos o gestionar repositorios, todo dentro de Neovim.
Estos son los 5 Plugins que te permitirán EXPRIMIR Neovim:
atone: Una auténtica genialidad y un descubrimiento que no imaginaba. Se trata de un árbol de deshacer visual. Este plugin resuelve el problema de tener que deshacer todos los cambios para volver a un estado anterior; con :Atone abres un historial visual donde puedes navegar y restaurar fácilmente. Es como tener un control de versiones a nivel de edición local.
flash: Pasamos una enorme cantidad de tiempo navegando por nuestro código. flash es más que una simple mejora de los movimientos f o t; permite saltar a cualquier parte del texto de manera eficiente, buscar palabras completas o patrones, y realizar búsquedas contextuales, por ejemplo, saltando directamente a la siguiente función o variable. Acelera tu flujo de trabajo de forma dramática.
tiny-inline-diagnostic: Este plugin soluciona uno de los problemas más molestos con los diagnósticos largos, especialmente los de Rust (que son increíblemente verbosos): el texto se cortaba. Ahora, con este complemento, los mensajes de error y sugerencias aparecen completos en vivo y en directo, sin necesidad de recurrir a plugins auxiliares.
NeoGit: Un complemento que tenía instalado pero no interiorizado, y que he recuperado con un atajo de teclado (<C-g>) para forzar su uso. Neogit es una interfaz de usuario completa para git dentro de Neovim. Facilita todas las operaciones comunes de Git (ver estado, hacer commits, gestionar ramas) sin tener que abandonar la comodidad de tu editor. Un gran paso hacia la centralización de tareas de desarrollo.
yazi: Finalmente, he resucitado este complemento que me permite utilizar el gestor de archivos Yazi integrado en Neovim. Aunque uso Neotree, la familiaridad y rapidez de Yazi para tareas específicas, como renombrar y reorganizar archivos de episodios, es una gran ventaja en mi flujo de trabajo.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 10 Nov 2025 - 19min - 743 - ATA 742 - Cuatro herramientas IMPRESCINDIBLES para programar en Linux
¿Cansado del "trabajo sucio" en tus proyectos de código? En este episodio te muestro mi kit de supervivencia en la Terminal de Linux: 4 herramientas CLI que automatizan desde el mensaje de commit con IA hasta el versionado completo del proyecto con Rust.
. just (Task Runner) 🤖
just es un gestor de tareas que sustituye a los Makefiles con una sintaxis más sencilla y moderna.
Permite definir "recetas" (comandos complejos) en un Justfile para acciones como just test o just build.
Unifica y estandariza los comandos del proyecto, soportando la carga de variables desde archivos .env.
Su principal ventaja es simplificar la ejecución de comandos para que todo el equipo use el mismo script.
fish es una shell de línea de comandos que ofrece características avanzadas "out of the box" sin configuración adicional.
Su función estrella es la autosugestión predictiva basada en el historial, ahorrando tiempo en la escritura de comandos largos.
Proporciona syntax highlighting (resaltado de sintaxis) y completado de comandos automáticamente.
Utiliza un lenguaje de scripting más limpio y consistente que Bash, ideal para funciones rápidas y sencillas.
dime es un cliente ligero en Rust que lleva la Inteligencia Artificial (p.ej., OpenAI) directamente a tu terminal.
Permite definir el comportamiento o rol del sistema mediante el argumento -i antes de la consulta.
Es ideal para tareas auxiliares de desarrollo, como generar mensajes de commit o crear snippets de Dockerfile.
Requiere un archivo dime.yml para gestionar la clave API, asegurando que la herramienta esté siempre enfocada y segura.
vampus es una herramienta en Rust que automatiza la actualización de la versión de tu proyecto bajo el esquema SemVer.
Asegura la consistencia del número de versión (--patch, --minor, --major) en múltiples archivos de configuración (Cargo.toml, README.md).
Utiliza el archivo .vampus.yml para definir los patrones de búsqueda y reemplazo en el código fuente o documentación.
Incluye un modo preview que permite verificar el resultado del cambio de versión antes de aplicarlo de forma permanente.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 06 Nov 2025 - 20min - 742 - ATA 741 No Pierdas tus Fotos de Immich. El Método de Seguridad DEFINITIVO
Si confías tus recuerdos a Immich (tu servidor de fotos self-hosted), la seguridad de esos datos no es opcional, es obligatoria. En este episodio, te muestro el método definitivo para garantizar la seguridad de tus fotos y metadatos sin depender de soluciones comerciales.
El desafío de Immich es realizar un backup coherente que sincronice los archivos y la base de datos (PostgreSQL) al mismo tiempo. Para resolver esto, he creado una solución robusta y práctica.
Veremos en detalle:
El Orquestador: Te presento mi proyecto rubadb, la herramienta que he desarrollado para automatizar el flujo de backup de principio a fin, incluyendo la gestión de retención automática.
El Especialista en Bases de Datos: Analizamos a fondo postgresus, la utilidad que nos asegura un dump limpio y comprimido de la base de datos de PostgreSQL (la clave de tus metadatos), con soporte para múltiples destinos (S3, Dropbox, etc.).
La Configuración Práctica: Te explico cómo integrar ambas herramientas en un entorno Docker para conseguir un proceso automatizado, ultra-seguro y que te dará la tranquilidad de saber que tus recuerdos están a salvo.
Si quieres llevar la protección de tus aplicaciones self-hosted al siguiente nivel con soluciones de código abierto y prácticas, este episodio es para ti.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 03 Nov 2025 - 23min - 741 - ATA 740 GHOSTTY: El Terminal ULTRA-RAPIDO con GPU que DEBES Probar en Linux y macOS 🔥
En este episodio, exploramos a fondo Ghostty, el emulador de terminal que está generando entusiasmo en la comunidad Linux y de código abierto. Si buscas una terminal que combine velocidad y funcionalidad sin compromisos, Ghostty es la respuesta.
Te explico cómo Ghostty logra ser ULTRA-RÁPIDO utilizando la aceleración por GPU y por qué su diseño nativo lo hace sentir tan integrado en tu escritorio Linux (GTK4 en el caso de Linux).
Puntos clave que cubriremos:
La importancia del Renderizado por GPU y cómo mejora el rendimiento en Linux.
Características avanzadas de productividad: Gestión nativa de pestañas, ventanas y paneles (splits).
El innovador Protocolo Gráfico Kitty, que te permite ver imágenes directamente en la terminal.
Cómo la configuración sencilla y el soporte para ligaduras y temas automáticos impulsan tu flujo de trabajo.
Ghostty es una alternativa sólida y moderna a Kitty o Alacritty, ofreciendo velocidad y una serie de características avanzadas que lo posicionan como uno de los emuladores de terminal del futuro.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 30 Oct 2025 - 20min - 740 - ATA 739 El MISTERIO del consumo de CPU de PostgreSQL
En este episodio, me enfrento a un desafío de rendimiento real: el consumo de CPU de PostgreSQL se dispara, pero sin alta actividad de lectura/escritura.
Viajaremos a través de un diagnóstico detallado utilizando herramientas nativas de Postgres como pg_stat_activity y pg_stat_statements para desenmascarar las causas ocultas:
La Sobrecarga de Conexión: Descubriremos cómo un simple healthcheck de Docker (pg_isready) configurado incorrectamente puede paralizar tu servidor por el alto overhead de gestión de procesos.
El Cuello de Botella de la Aplicación: Analizamos y corregimos un error de diseño de código en Rust/Axum donde se recompilan Expresiones Regulares (Regex) en cada petición, consumiendo innecesariamente ciclos de CPU.
Una lección práctica esencial para cualquiera que gestione bases de datos, despliegues en Docker o desarrolle aplicaciones eficientes en Rust en entornos Linux. Aprende a identificar estos fallos y a optimizar tu código mediante la precompilación de Regex utilizando TryFrom y Arc<Regex>.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 27 Oct 2025 - 19min - 739 - ATA 738 Olvida WordPress! Tu propio blog minimalista en 60 segundos
En este episodio de "atareao con Linux", abordamos una frustración común: la sobrecarga de complejidad en el mundo del blogging. Si has intentado usar WordPress y te has cansado de gestionar plugins, temas y vulnerabilidades, o si las soluciones de Static Site Generator (SSG) te parecen excesivas para simplemente publicar notas y código, Noet es la solución que has estado buscando.
Noet es una plataforma de blogging de código abierto con una filosofía clara: priorizar la escritura. Su diseño se basa en quitar todo lo que se interpone entre tú y la publicación de tu contenido. Es, esencialmente, un editor de texto avanzado que guarda posts en una base de datos y los sirve como un sitio web limpio y legible.
La verdadera magia de Noet reside en su simplicidad técnica, lo cual lo hace perfecto para nuestro entorno Linux (VPS, Raspberry Pi, o tu servidor local):
Single Binary (Go): Todo el backend se compila en un único ejecutable (escrito en Go), lo que facilita enormemente el despliegue y el mantenimiento en cualquier plataforma Linux.
SQLite para la Gestión de Datos: En lugar de depender de bases de datos externas como MySQL o PostgreSQL, Noet usa SQLite. Esto significa que todos tus posts y configuraciones se almacenan en un solo archivo, noet.db. Esta característica es fundamental para una gestión de datos eficiente y para realizar copias de seguridad de forma increíblemente sencilla.
Despliegue con Docker: Fieles a nuestro estilo práctico, te mostramos el archivo docker-compose.yaml necesario para poner Noet en marcha en cuestión de minutos. Si ya usas Docker para servicios como Traefik, Syncthing o tus bases de datos [cite: 2025-07-15], añadir Noet a tu stack es trivial.
Para el escritor técnico o el power user de Linux, Noet brilla en su editor:
Soporte Markdown Nativo: Usa la sintaxis que ya conoces.
Código y LaTeX: El editor soporta resaltado de sintaxis para bloques de código y permite incrustar ecuaciones matemáticas con LaTeX/KaTeX. Es ideal para documentar tus proyectos o publicar tutoriales avanzados.
Auto-guardado: No pierdas ni una línea de lo que escribes.
Sencillez en Imágenes: Arrastra y suelta para subir imágenes y gestiona su tamaño con un clic.
Si buscas mejorar tu productividad, simplificar tu infraestructura y tener un blog que se sienta tan ligero y moderno como Neovim u Obsidian [cite: 2025-07-15] pero listo para publicar en la web, tienes que probar Noet.
Escucha el episodio para obtener todos los comandos, el archivo docker-compose y los mejores consejos de uso.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoFri, 24 Oct 2025 - 18min - 738 - ATA 737 Automatiza Docker sin Desastres: Tugtainer, el Watchtower con Interfaz Web
¿Tu Watchtower te ha dejado alguna vez un servicio crítico caído? Es hora de automatizar la seguridad de tus contenedores Docker, ¡pero con control total y una Interfaz Gráfica (Web UI)! Tugtainer es la alternativa que estabas buscando para decirle adiós a las vulnerabilidades y a los "desastres del sábado". Si gestionas tu propio stack en Linux, esta herramienta self-hosted te va a cambiar la vida. Escucha y descubre cómo tener contenedores siempre al día, pero con seguridad.
Hay dos cosas que obsesionan a cualquier administrador de sistemas que utiliza Docker en entornos self-hosted: las copias de seguridad de las bases de datos y la actualización constante de las imágenes para evitar vulnerabilidades. Aunque la actualización automática es fundamental como acción preventiva, si se hace de forma completamente desatendida, puede causar más de un trastorno.
Durante años, he usado Watchtower para la mayoría de mis servicios. Sin embargo, esta herramienta, aunque se integra perfectamente con Docker y las etiquetas, tiene dos grandes problemas: carece de una interfaz gráfica para ver qué está ocurriendo y lleva tiempo sin recibir actualizaciones.
El Dilema del Control:Los servicios críticos, como las páginas web que administro (con stacks de WordPress, MariaDB y Nginx), no pueden permitirse caídas. Por eso, dejé la política de actualizaciones diarias y la cambié por una revisión semanal (los sábados). Hoy, vamos a resolver este dilema: ¿Cómo conseguimos la automatización de la seguridad sin sacrificar la estabilidad?
Llega Tugtainer: El Control Gráfico que Necesitabas
En este episodio, te presento una herramienta nueva y prometedora (¡con solo un mes de vida!) que se posiciona como una alternativa a Watchtower y Ouroboros. Se trata de Tugtainer, la solución que añade una Web UI completa a la gestión de actualizaciones de Docker.
Lo que Aprenderás en el Episodio:
Por qué mistackweb (con dependenciasservice_healthy) sigue dándome problemas al actualizar, y la lección aprendida.
Las advertencias cruciales del desarrollador de Tugtainer: por qué no se recomienda para entornos de producción (¡al menos por ahora!).
Análisis a fondo de las siete características de Tugtainer que te dan control total:
Configuración por Contenedor: Decidir si un servicio CRÍTICO (como Traefik) solo se verifica o si se auto-actualiza.
Programación Crontab: Control total sobre cuándo se lanzan las comprobaciones.
Autenticación y Notificaciones: Seguridad y visibilidad al instante.
Limpieza de imágenes: Adiós a las imágenes obsoletas que ocupan espacio.
Mi propia implementación de Tugtainer con Docker Compose, Traefik y Dockge (¡una herramienta que deberías conocer!).
Si utilizas Linux, Docker y buscas maximizar tu productividad y seguridad en tu VPS o Raspberry Pi, este episodio es una guía esencial para pasar de la automatización ciega a la automatización inteligente.
¡Dale al play y descubre si Tugtainer se queda o no en mi propio stack de atareao!
Soy Lorenzo Carbonell, "atareao". En este podcast me centro en el software libre y Linux. Mi estilo es práctico y te traigo soluciones, métodos y tutoriales para mejorar la productividad, gestionar datos y optimizar sistemas Linux. Si te interesa Docker, Neovim, Rust, Syncthing o configurar servicios en plataformas como Raspberry Pi o VPS, ¡suscríbete!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram 👉 https://t.me/atareao_con_linux🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 20 Oct 2025 - 24min - 737 - ATA 736 La herramienta que REVOLUCION la gesión de AUR en Arch Linux
¡Atención usuarios de Arch Linux! En este nuevo episodio de Atareao con Linux, te desvelo la herramienta TUI (Terminal User Interface) que está cambiando por completo la forma de gestionar paquetes, tanto de los repositorios oficiales como del vasto ecosistema del Arch User Repository (AUR). Si el factor productividad es más importante para ti que el factor ilusión de las nuevas versiones, y valoras la filosofía KISS (Keep It Simple, Stupid) y el modelo rolling release, este tutorial práctico es crucial para optimizar tu flujo de trabajo.
Mi nombre es Lorenzo Carbonell ("atareao"), y mi podcast se centra en ofrecer soluciones para cualquier cosa que quieras hacer con Linux. Este episodio es el ejemplo perfecto: te muestro cómo simplificar lo que antes requería múltiples comandos.
Comenzamos profundizando en la que es, para muchos, la razón principal para elegir Arch Linux: el AUR (Arch User Repository). Este es un gran repositorio comunitario que te da acceso a una cantidad inmensa de software, incluyendo herramientas de nicho, versiones *-git y *-svn con las últimas características de desarrollo.
Pero, ¿cómo gestionamos este poder?
El AUR no contiene binarios, sino PKGBUILDs—scripts de compilación escritos por la comunidad que instruyen a tu sistema a descargar, verificar, compilar e instalar el paquete. Para manejar esto, necesitas un AUR Helper.
He estado utilizando Paru durante mucho tiempo, y sigo encantado con él. Es una herramienta escrita en Rust que combina las funciones del gestor oficial pacman y la gestión de AUR.
Características clave de Paru para la productividad:
Herramienta Unificada.
Seguridad y Transparencia.
Gestión de Huérfanos.
Y ahora, la estrella del episodio: Pacsea. Esta es una nueva herramienta de terminal, presentada como una TUI, que simplifica enormemente las tareas de búsqueda e instalación. También escrita en Rust, pacsea ofrece una interfaz intuitiva para buscar, filtrar e instalar paquetes.
Por qué Pacsea es ungame changerpara tu productividad:
Diseño de Tres Paneles: Interfaz clara con resultados, búsquedas recientes/instalación e información detallada del paquete.
Seguridad Visual: Incorpora un visor de PKGBUILD que puedes abrir con Ctrl+x o un solo clic. Esto te permite revisar el código antes de la compilación e instalación.
Instalación por Cola (Queueing): Pulsa la tecla Espacio para añadir varios paquetes a la cola y confirmar la instalación por lotes con Enter.
Búsqueda Instantánea y Optimizada: El sistema de búsqueda utiliza debouncing para ser inmediato y simultáneo en repos oficiales y AUR.
Filtros Clicables: Puedes filtrar los resultados directamente haciendo clic en las etiquetas [AUR], [core], [extra], etc..
Información Esencial al Instante: Muestra la popularidad del AUR (estrellas), el estado de los servicios Arch/AUR y las noticias críticas que requieren intervención manual.
Aunque siempre se puede exprimir más a herramientas nativas como paru y pacman, la facilidad de uso y la eficiencia de Pacsea la convierten en una herramienta imprescindible para mi flujo de trabajo en Arch Linux.
Si buscas soluciones claras y directas para mejorar tu productividad, gestionar servidores web, proxies inversos (como Traefik) o utilizar herramientas avanzadas (como Docker, Neovim o Rust) [cite: 2025-07-15], este podcast es tu guía.
🔔 ¿Quieres más tutoriales prácticos y soluciones para optimizar tu Linux?
¡Suscríbete ahora a "Atareao con Linux" y asegura tu dosis semanal de productividad con el código abierto!
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 16 Oct 2025 - 26min - 736 - ATA 735 ¿Quien Visita Tu Servidor? Descubre BOTS y HACKERS que Te Roban Recursos
Si tienes un servidor Linux expuesto a Internet, ya sea un VPS o una Raspberry Pi alojando tus servicios Docker, este es un episodio que no te puedes saltar. Detrás de ese proxy inverso (Traefik es mi elección), se esconde un tráfico que rara vez revisamos, y te aseguro que no todo el mundo tiene buenas intenciones.
Tras un incidente reciente que me obligó a abrir mi servidor al mundo (y no solo a España, como lo tenía restringido inicialmente), la cantidad de visitantes desconocidos y peticiones curiosas que encontré me hizo poner manos a la obra. No es solo un tema de seguridad; es de recursos.
Cada visita cuesta. Sí, has oído bien. Cada interacción con tu servidor requiere un gasto de CPU y memoria RAM. Los bots y scanners que buscan vulnerabilidades o hacen peticiones inútiles están consumiendo silenciosamente la capacidad de tu sistema, dejando menos para tus visitas de calidad (las que realmente quieres). Es esencial saber quién te visita, dónde va, y con qué intenciones, para poder actuar y liberar esos recursos.
Mi objetivo, como siempre en atareao con Linux, era encontrar una solución de código abierto que fuera sencilla de implementar y, crucialmente, que no se llevara por delante todos los recursos de mi propio servidor.
El punto de partida de la investigación es siempre el access.log de Traefik, que es el registro fundamental de todas las peticiones.
Estuve probando distintas combinaciones, incluyendo algunas pesadas y complejas, como:
Vector, Prometheus, Grafana y Loki.
Vector, Victorialogs, Grafana y Loki.
Si bien estas son soluciones potentes, su complejidad y el alto consumo de recursos me hicieron descartarlas. La solución no debe ser un problema de rendimiento en sí misma.
Finalmente, di con la combinación que es simple, eficiente y con la que estoy realmente enamorado por su facilidad de uso e implementación.
Vector es la herramienta clave para recopilar, transformar y enrutar todos tus logs, métricas y trazas. Es de código abierto, hasta 10 veces más rápido que cualquier alternativa y es lo que me permite un enriquecimiento de datos sin precedentes.
En este episodio aprenderás cómo:
Configurar el compose.yml de Vector en tu entorno Docker.
Utilizar las Transforms de Vector para parsear los logs de Traefik.
Integrar la base de datos GeoIP (GeoLite2-City.mmdb) para geolocalizar la IP de procedencia de cada petición.
Enrutar los logs enriquecidos a la base de datos de destino.
OpenObserve (O2) es la plataforma de observabilidad nativa de la nube que unifica logs, métricas y trazas en una única interfaz. Es la alternativa que he adoptado a soluciones como ElasticSearch y se ha convertido en una herramienta imprescindible en mi día a día.
Es increíblemente sencillo de instalar y configurar (lo tienes funcionando en minutos).
Es el lugar donde guardo y analizo toda la información de tráfico y rendimiento de mi infraestructura Docker y Traefik.
Te proporciono el código compose.yml para que puedas desplegar esta base de datos en cuestión de minutos y empezar a interactuar con los datos geolocalizados que envía Vector.
Además de la solución Vector/OpenObserve, te presento un interesante descubrimiento: el Traefik Log Dashboard. Este proyecto de código abierto (backend en Go, frontend en React) te permite tener información en tiempo real de los logs de Traefik con geolocalización incluida.
Monitorización en tiempo real vía WebSocket.
Soporte para trazas en tiempo real (OpenTelemetry OTLP).
Analíticas completas de tiempos de respuesta, códigos de estado y tasas de solicitud.
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoMon, 13 Oct 2025 - 22min - 735 - ATA 734 Buscar y Eliminar Duplicados en Linux de forma RÁPIDA y Efectiva
¿Tu sistema Linux se siente lento, saturado y desorganizado? ¿Sospechas que hay archivos idénticos ocupando valiosos gigas sin que te des cuenta? ¡Es hora de ponerle fin a ese problema! En este episodio especial, nos sumergimos en una de las tareas de mantenimiento más subestimadas pero cruciales para cualquier usuario de Linux: la búsqueda y eliminación eficiente de archivos duplicados.
Con el paso del tiempo, es increíble la cantidad de copias idénticas de fotos, vídeos, documentos o incluso archivos del sistema que se acumulan silenciosamente. Y aunque el almacenamiento sea más barato que nunca, estos "clones" pueden ralentizar tu equipo, complicar tus respaldos y, en definitiva, generar un caos innecesario.
En este episodio descubrirás:
La verdad detrás de los duplicados: Entenderás por qué son un problema real y cómo afectan el rendimiento y la organización de tu Linux, especialmente si trabajas con archivos pesados como RAW de fotografía o vídeos 4K.
Herramientas de TERMINAL que marcan la diferencia: Te presentamos dos joyas escritas en Rust que están revolucionando la forma de encontrar duplicados:
fclones: Una utilidad poderosa y flexible que no solo encuentra, sino que te permite agrupar, remover, enlazar e incluso desduplicar con funcionalidades avanzadas. Analizamos sus comandos básicos (group, remove, link, dedupe) y cómo usar la opción --dry-run para una eliminación segura. ¡No querrás perderte los detalles de su instalación y configuración para autocompletado!
yadf (Yet Another Duplicate Finder): Otra herramienta ultra-rápida y fácil de usar, también desarrollada en Rust. Te desglosamos su sintaxis sencilla y te mostramos cómo filtrar tus búsquedas por tamaño, patrones o expresiones regulares.
Soluciones GRÁFICAS para todos: Si prefieres la comodidad de una interfaz visual, no te dejamos atrás. Exploraremos czkawka (y su versión más ligera krokiet) y fclones-gui.
czkawka / krokiet: Dos opciones de código abierto y multiplataforma, con un potente motor en Rust, que no solo buscan duplicados, sino también archivos grandes, vacíos y más, todo desde una interfaz intuitiva.
fclones-gui: La interfaz gráfica simplificada de fclones, ideal si buscas una solución directa para las tareas más comunes de limpieza.
¡La Prueba Definitiva! Benchmarks de rendimiento: ¿Cuál es la herramienta más rápida? ¿Cuál consume menos memoria? Te traemos los resultados de benchmarks comparativos con otras herramientas clásicas como rmlint, jdupes, fdupes, rdfind y dupeguru. ¡La eficiencia es clave y los datos no mienten!
Nuestras recomendaciones y consejos prácticos: Después de analizar todas las opciones, compartiremos nuestra opinión sobre cuándo elegir una herramienta de terminal o una gráfica, y qué consideraciones tener en cuenta para que tu proceso de limpieza sea un éxito.
¡Participa en la conversación!
¿Cuál es tu herramienta favorita para buscar y eliminar duplicados? ¿Conoces alguna otra joya que debamos explorar? ¡Queremos oírte! Déjanos tus comentarios y sugerencias en nuestra comunidad de Telegram o en la sección de comentarios de este episodio en tu plataforma de podcast favorita.
Recursos y enlaces del episodio:
Más información y enlaces en las notas del episodio
🌐 Aquí lo puedes encontrar todo 👉 https://atareao.es✈️ Telegram (el grupo) 👉 https://t.me/atareao_con_linux✈️ Telegram (el canal) 👉 https://t.me/canal_atareao🦣 Mastodon 👉 https://mastodon.social/@atareao🐦 Twitter 👉 https://twitter.com/atareao🐙 GitHub 👉 https://github.com/atareaoThu, 09 Oct 2025 - 19min
Podcast simili a <nome>
ROCA PROJECT Carlos Roca
Criminopatía Clara Tiscar
El Partidazo de COPE COPE
Herrera en COPE COPE
La Linterna COPE
Tiempo de Juego COPE
Crónica Rosa esRadio
Es la Mañana de Federico esRadio
La noche de Cuesta esRadio
La Trinchera de Llamas esRadio
Noches de Historia Iván Patxi Gómez
La Ruina La Ruina
El colegio invisible OndaCero
Julia en la onda OndaCero
La Rosa de los Vientos OndaCero
Más de uno OndaCero
La escóbula de la brújula Podium Podcast
Espacio en blanco Radio Nacional
El Larguero SER Podcast
Nadie Sabe Nada SER Podcast
SER Historia SER Podcast
Todo Concostrina SER Podcast
Un Libro Una Hora SER Podcast
HISTORIAS DE LA HISTORIA VIVA RADIO
