2026-01-04

Cómo solucionar problemas de impresión con la Ricoh SP 201 en Linux

Si usas Linux Mint y tienes una impresora Ricoh SP 201 N, puede que te hayas encontrado con una situación bastante frustrante: el sistema reconoce la impresora, al mandar a imprimir hace ruido… pero no sale ninguna hoja. Lo curioso es que en Windows funciona perfectamente.

En este artículo te explico por qué ocurre este problema y cómo solucionarlo paso a paso.


El problema: imprime en Windows, pero no en Linux

La Ricoh SP 201 es una impresora de tipo GDI (Graphic Device Interface). Esto significa que no procesa por sí misma los documentos, sino que depende totalmente del driver para convertirlos en un formato que la impresora entienda.

  • En Windows, el driver oficial de Ricoh se encarga de todo este trabajo.
  • En Linux, si no se instala el filtro correcto, la impresora recibe datos que no puede interpretar.

Por eso ocurre lo siguiente:

  • Linux Mint reconoce la impresora.
  • Al imprimir, la impresora se inicializa (hace ruido).
  • Pero no imprime nada.

Solución: instalar el driver y el filtro correcto en Linux Mint

Si el PPA automático no te funciona o prefieres hacerlo de forma manual, sigue estos pasos.

1. Descargar el driver desde un repositorio funcional

El repositorio original ya no siempre funciona, pero existe un fork corregido que sí lo hace:

git clone https://github.com/devararendy/ricoh-sp100.git

Si no tienes git instalado:

sudo apt install git

2. Instalar la dependencia crítica

Este paso es imprescindible para que la impresora funcione correctamente:

sudo apt install jbigkit-bin

Sin esta herramienta, la impresora no podrá procesar los datos enviados.

3. Copiar el filtro de impresión al sistema

Accede a la carpeta descargada:

cd ricoh-sp100

Copia el filtro necesario a CUPS:

sudo cp pstoricohddst-gdi /usr/lib/cups/filter/

4. Asignar permisos correctos

Asegúrate de que el sistema pueda ejecutar el filtro:

sudo chown root:root /usr/lib/cups/filter/pstoricohddst-gdi
sudo chmod 755 /usr/lib/cups/filter/pstoricohddst-gdi

5. Configurar la impresora en Linux Mint

  1. Ve a Configuración → Impresoras.
  2. Pulsa Añadir.
  3. Selecciona tu Ricoh SP 201.
  4. Cuando te pida el driver, elige “Proporcionar archivo PPD”.
  5. Selecciona el archivo:
    RICOH_Aficio_SP_204.ppd

Este archivo se encuentra dentro de la carpeta ricoh-sp100 y es totalmente compatible con la SP 201.


¿Por qué ahora sí funciona?

Porque ahora Linux tiene:

  • El filtro pstoricohddst-gdi, que convierte los documentos al formato que la impresora entiende.
  • La herramienta jbigkit, necesaria para la compresión de los datos gráficos.

Sin estos componentes, la impresora solo se inicializa, pero no recibe instrucciones válidas para imprimir.


Último paso recomendado

Si después de configurar todo sigue sin imprimir, reinicia el servicio de impresión:

sudo systemctl restart cups

Conclusión

Aunque la Ricoh SP 201 no tiene soporte oficial moderno para Linux, sí es totalmente usable en Linux Mint con la configuración adecuada. Una vez instalado el filtro correcto, la impresora funciona de forma estable y sin problemas.

Si tienes una Ricoh GDI y te ocurre algo similar, este método probablemente también te ayude.

¡Feliz impresión en Linux! 🐧🖨️

2022-12-08

Comprobar código de respuesta desde google sheets

El uso de Google Sheets es una forma de automatizar una gran amplitud de tareas. Hay varias funciones que pueden realizar varias operaciones dentro de una hoja de Google, incluida la verificación del estado de un sitio web. Abre una hoja de googe sheets haz Click en extensiones y vas a app script Allí puedes pegar este código:
function httpstatuscode(url) {
    var result = [];
        url.toString().trim();
       var options = {
        'muteHttpExceptions': true,
        'followRedirects': false,
    };
        try {
        result.push(UrlFetchApp.fetch(url, options).getResponseCode());
    }
       catch (error) {
        result.push(error.toString());
    } finally {
        return result;
    }
}

2022-05-03

Cambiar los colores de los iframes de Hubspot

 Son muchos los servicios que uan iframes para cargar contenido desde oro sitio. Un ejemplo sería Hubspot que tiene una versión gratuita hasta los 2000 contactos pero que no deja cambiar los colores de los campos del formulario.


Esto se puede solucionar vía javascript inyectando css directamente al iframe. Vamos a ver las formas que hay para hacerlo:


Con Jquery:




setTimeout(function(){

var head = jQuery("#hs-form-iframe-0").contents().find("head");
var css = '<style type="text/css">' +
'.hs-button {' +
          'border-color: #ffffff !important;' +
'background-color: #ffffff !important;'+
'color:#007396 !important;}'+
          '.hubspot-link__container{display:none;} label{color:#ffffff;} a{color:#ffffff !important;}</style>';

jQuery(head).append(css);

}, 1100);
});


Con Vanilla JS


<pre>

setTimeout(function(){

   let myiFrame = document.getElementById("hs-form-iframe-0");

   let doc = myiFrame.contentDocument;

   doc.body.innerHTML = doc.body.innerHTML + '<style>.hs-button {border-color: #ffffff !important; background-color: #ffffff !important; color:#007396 !important;} .hubspot-link__container{display:none;} label{color:#ffffff;} a{color:#ffffff !important;}</style>';

   }, 1100);

});

}</pre>


También se puede enlazar un fichero css:


<pre>window.onload = function() {

  let link = document.createElement("link");

  link.href = "style.css";      /**** your CSS file ****/ 

  link.rel = "stylesheet"; 

  link.type = "text/css"; 

  frames[0].document.head.appendChild(link); /**** 0 is an index of your iframe ****/ 

}</pre>


Cambiando el nombre del ID del iframe podéis atacar cualquier iframe ya sea el de un chat o cualquier otro servicioo que tengáis enveustra página web.


2021-12-06

Trabajar con archivos grandes

 A veces toca trabajar con archivos frandes de más e 1GB y comienzan a salir errores de memoria.


Lo primero es dividirlo en trozos más pequeños:


split -b 300000k se.txt file-


Con este comando de linux dividimos en partes de 300Mb mas o menos que ya es un tamaño más manejable.


Luego coges tu fichero de python

import time
start = time.time()

file1=open("C:\\proyectos\\bak\\ps2\\se-aa.txt","r")
file2=open("C:\\proyectos\\bak\\ps2\\se1.txt","w")
data1 = set(file1.read().splitlines())
for list in data1:
try:
x = list.index(".se.")
y=x+3
z=list[0:y]
file2.write(z)
file2.write('\n')
except ValueError:
print ("error")

file1.close()
file2.close()

end = time.time()
print(end - start)

Coges el fichero de 300 megas lo metes en un set para que quede en memoria y el proceso sea más rápido. Después vas línea a línea y buscas un patrón. en este caso '.se.' 

Quiero que cuando se encuentre se coja toda la línea hasta .se y entonces lo guarde en un fichero.


Mi equipo estaba algo saturado y tardaba 8 segundos en leer los 300Mb .


Debo comprar mas RAM y así podré trabajar bien con archivos de pocas gigas.

2021-03-23

Hacer responsive una página de wix





El que no haya probado como hacer una web en wix mejor que no lo intente.

Código sucio es poco y un asesor SEO que te obliga a hacer las cosas mal si lo sigues al pie de la letra.

Las páginas de wix, supongo que para los usuarios no la cagasen en 2005, sólo permiten una anchura de 980px como máximo.

Si tienes un monitor de 24 pulgadas en el año 2021 verás un gran espacio a ambos lados del contenido de tu página.

Wix recomienda si quieres hacer algo más moderno pasarte a editorx. Esta sería otra historia.

Los chicos de wix también han creado un editor avanzado de javascript. Tan avanzado que no tiene acceso al DOM y se han inventado un javascript propio para que solo puedas hacer cosas mínimas.


El truco para conseguir pasar de las majaderías de esta empresa, es inyectar código en el único sitio donde lo admiten. La zona especial donde se suele meter el código de analytics.


Hay que seguir la siguiente ruta:

Panel de control -> Opciones -> Código personalizado -> añadir

hay qeu incluir el código antes del body así que "Cuerpo final"
Elegir en 2Todas las páginas" y "subir código una vez".

Un código que funciona es escalar el div princpl de nuestro contenido #masterPage. Se puede usar tanto zoom como transform: scale()


<style>
@media only screen and (min-width: 1367px) {
	#masterPage{	
		zoom:1.3;
		-moz-transform: scale(1.3);
		-moz-transform-origin: top;
	}
}
@media only screen and (min-width: 1900px) {
	#masterPage{	
		zoom:1.6;
		-moz-transform: scale(1.6);
		-moz-transform-origin: top;
	}
}
</style>

Con este código insertado, vuestra página se ampliará sin dejar esos huecos tan grandes a los lados. Se debe jugar con las cifras para obtener el mejor resultado.

Poco más se puede hacer con css en wix. La mayoría de los divs están fijados a fuego con código en el html.

No he probado a inyectar javascript. Supongo que también funcionaría.


2020-11-14

Hacer foto de una web con python desde consola

A veces nos resulta necesario hacer una comprobación visual y automática del estado de una página web.

Se puede hacer de muchas maneras. En este ejemplo, vamos a usar la consola de linux. En mi caso, un ubuntu sin entorno gráfico puesto.

Necesitamos instalar Selenium y el chrome driver. Juntos nos proporcionan una forma muy rápida y eficaz de hacer estas fotos.

Instalamos Selenium. Un software que nos puede valer para testear nuestros proyectos web.

pip install -U selenium


Ahora instalamos el chrome driver que básicamente es un navegador desde el cual se hace la foto. Nos renderiza la url que le enviemos.

sudo apt-get install chromium-chromedriver
 
Creamos el fichero makeImg.py con este código:
 
#coding=utf-8                                                                                      >
import time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options


options = webdriver.ChromeOptions()
options.headless = True
driver = webdriver.Chrome(options=options)

URL = 'https://avanzaweb.net'

driver.get(URL)

S = lambda X: driver.execute_script('return document.body.parentNode.scroll'+X)
driver.set_window_size(S('Width'),S('Height')) # May need manual adjustment >
driver.find_element_by_tag_name('body').screenshot('avanzaweb.png')

driver.quit() 
 
 
Cambiando avanzaweb por la url y nombre de imagen de vuestro agrado tenemos la imagen generada justo en la carpeta de ejecución del script.

Más sencillo imposible. 

2020-04-22

Añadir más RAM al fichero Swap en ARMBIAN



Por ejemplo, si queremos añadir un giga al fichero ram y evitar que nuestro kernel kill algún proceso por falta de memoria. Esta sería una posible solución:

swapoff -a
dd if=/dev/zero bs=1M count=1024 of=/var/swap.img
mkswap /var/swap.img
editar el fichero fstab
nano /etc/fstab
y añadir esta línea:
/var/swap.img none swap sw 0 0
swapon -a

Haciendo esto ya tenéis al momneto el giga . en mi caso tenía 400 megas así que he aumentado el swap en 600 Mb más.

También dicen que no es muy bueno tener el swap en la tarjeta SD pero no he visto forma de ponerla. En principio no tengo punto de montaje ni acceso a esa parte del cacharro. Sería mejor solución poner el swap en esa otra memoria.