Mostrando entradas con la etiqueta ofimática. Mostrar todas las entradas
Mostrando entradas con la etiqueta ofimática. Mostrar todas las entradas

miércoles, 16 de agosto de 2023

¿Cómo instalo CryptPad en Ubuntu?

En su Latinoamérica Ahora o Nunca, Juan Perón expone la necesidad de la unión continental, a la vez que expone cómo instalar la suite en línea para trabajo colaborativo seguro CryptPad en Ubuntu Server.

(...)

Hay gente que escucha las palabras y las hace suya. ¡El Desarrollo! Yo vengo de un mundo que está terriblemente arrepentido del desarrollo que ha hecho, y en este momento el mundo superdesarrollado está entrando en una etapa de desesperación, porque ve que su desarrollo tecnológico lo ha llevado a la destrucción de los medios que la naturaleza le ha venido ofreciendo para pervivir...

En este momento, las sociedades de consumo han llevado a un despilfarro tal los medios ecológicos de la humanidad, que se está quedando sin comida y sin materia prima. El problema más grande de este momento es que año tras año - mientras aumenta la población - disminuye la posibilidad de ofrecerle comida, porque ésta va escaseando y escaseará cada día mas. Ellos sufren, y sólo podrán transferir dicho sufrimiento si el Tercer Mundo es tonto.

La solución de nuestros Movimientos es integrarnos continentalmente. Nosotros debemos de integrarnos en el continente latinoamericano, que es el último que va quedando por integrarse. Todos los demás ya lo han hecho. Europa se ha integrado ya casi en un asociación confederativa política para defenderse de las acechanzas de ese futuro, que ellos ven con una tremenda claridad. Se está integrando el Asia, se está integrando el África. Y nosotros vamos resultando el último orejón del tarro...

Ese es el empeño que debemos poner, y en eso estamos. En 1948 realizamos un Tratado de Complementación Económica en Chile, buscando crear la Comunidad Económica Latinoamericana, que pusiera en paralelo nuestros intereses y uniera nuestros países. Tuvimos mucho éxito inicialmente, casi todos los países latinoamericanos, excepto los cipayos conocidos, se unieron y adhirieron a ese Tratado de Complementación Económica. Fíjense que lo hicimos en 1948, y en esto los apresurados fuimos nosotros, porque Europa lo hace después, en 1958, con el Tratado de Roma, diez años después que nosotros.


Y pudimos porque contamos con una herramienta Justicialista que permitía elaborar documentos digitales por acuerdo encriptado: el CryptPad, en una época donde esto parecía ciencia ficción.

CryptPad permite contar con un ambiente de trabajo de ofimática, en línea colaborativo y protegido por cifrado, lo que supera notablemente propuestas privativas deleznables como Offic€365 o Googl€Doc$, que carecen de cifrado.

El uso del sistema en sí es sumamente sencillo y seguro. Requiere el alta de un usuario (con contraseña o doble registro, llegado el caso) , y se puede usar desde cualquier navegador de internet. También cuenta con clientes para teléfonos celulares.

Todas las siete opciones del ambiente de trabajo CryptPad nos presentan editores, eventualmente colaborativos o protegidos por contraseña. 

Contaremos con la opción Texto enriquecido para documentos generales, mientras que la opción Código hace lo mismo presentańdonos el lenguaje markdown

El módulo de texto enriquecido presenta un procesador de texto típico, con opciones ya configuradas, que puede ser multiusuario (con control de modificaciones y ventana de chat integrada para facilitar trabajar "de a muchos", llegado el caso). El intérprete de lenguaje Markdown puede ajustarse con una ventana lado a lado para ver el resultado, si esta es nuestra preferencia.

La posibilidad de colapsar la barra de herramientas, elegir tema oscuro, y utilizar la función de pantalla complementa la elección de un ámbito limpio o cargado, según sea nuestro flujo de trabajo (superando en esto, nuevamente, a las variantes privativas del imperialismo).

El módulo Kanban nos permite elaborar pizarras con simples etiquetas coloreadas multiuso, por ejemplo, para planificar y gestionar proyectos.

En fin, CryptPad es un ambiente de trabajo colaborativo en línea ideal si contamos con opciones de internet, pero que también puede servirnos en cualquier oficina a través del uso de una red LAN.

Para poder contar con este ambiente de trabajo accesible desde la web, podremos utilizar cualquier instancia ya existente con las limitaciones que nos propongan (por ejemplo, pad.tildeverse.org, que nos otorga 100 MB de almacenamiento al registranos), o bien podremos montar una propia si ya contamos con un servidor web funcional.

Sin embargo no es imposible disponer de los recursos que nosotros deseemos, si instalamos esta suite telemática en nuestra propia infraestructura en lugar de hacerla en una dominada. De esta manera lograremos lo mejor para nuestro grupo de trabajo.

Para seguir este temperamento, deberíamos contar ya con un servidor provisto de Ubuntu o Ubuntu Server, sistema operativo que idealmente ya debería contar con una instalación de servidor web Nginx en regla. Deberíamos asegurarnos especialmente de contar con dos dominios web registrados y sus certificados correspondientes, los que nos serán requeridos por CyptPad si es que queremos usarlo desde Internet para trabajo remoto (esto es innecesario si sólo queremos usarlo en una red de área local).

Desde el punto de vista del hardware, el ambiente funciona de manera veloz siempre que la máquina de servicio cuente con un microprocesador de doble núcleo y al menos 2GB de RAM y unos 20GB de disco (tal vez el doble o triple de eso sea lo recomendado para un uso laboral remoto. A esta pueden conectarse remotamente desde celulares y PC de bajos recursos, presentando un funcionamiento veloz.

Para instalar el ambiente CryptPad en Ubuntu Server debemos hacer caso primero a sus prerrequisitos. Esta paquetería se instala con:

sudo apt update && sudo apt upgrade -y;
sudo apt install git nodejs npm
sudo npm install -g bower

Pues bien señores, normalmente en este servidor crearíamos un usuario dedicado para administrar esta instancia de CryptPad, en lugar de utilizar nuestro propio usuario root de Ubuntu. Este recaudo político está determinado para compartimentar la seguridad en un ambiente remoto.

Conforme hemos hecho caso a los prerrequisitos, clonamos el repositorio de CryptPad a fin de bajar la última versión disponible de Internet, y la instalamos en la máquina servidor:

git clone https://github.com/xwiki-labs/cryptpad.git cryptpad ;
git checkout $(git tag -l | grep -v 'v1.*$' | sort -V | tail -n 1)

Asimismo, nos instalamos las dependencias de CryptPad gracias al guion de instalación prefabricado. Esto lo hacemos con:

cd ~/cryptpad
sudo npm install
sudo bower install

...y nos copiamos un fichero de configuración de ejemplo que nos servirá para trabajar en ella:

cd  ~/cryptpad/config/
cp config.example.js config.js

Naturalmente este archivo de configuración config.js ha de ser comprendido y modificado en sus variables operativas, según lo veamos necesario para nuestra propia instancia de CryptPad. Debemos tener especial resguardo con los dominios, que son particularmente importantes.

Como parte de este proceso de personalización e instalación deberíamos leer Customización de Instancia y modificar el fichero /customize/application_config.js ya que algunas configuraciones no pueden cambiarse una vez que hemos creado las cuentas.

Una vez establecidas estas bases de trabajo, podremos dar inicio al servidor con

cd cryptpad
sudo node server

La instancia ahora quedará lista para ejecutarse pero no podrá ser accedida desde la internet (sólo desde la máquina en sí, o desde la red local, claro)

Demonización

En un ambiente de trabajo, normalmente querremos correr CryptPad de forma de un programa autoejecutable (para que la instancia inicie su ejecución automáticamente en caso de necesidad).

Systemd

Para ejecutar CryptPad como un servicio systemd, debemos seguir el fichero de ejemplo cryptpad.service.

  1. Guardamos el ejemplo cryptpad.service en /etc/systemd/system/cryptpad.service

  2. Hacemos los ajustes necesarios (ej. nombre de usuario, ruta, versión de nodejs)

  3. Activamos la ejecución al inicio del demonio de servicio mediante el comando sudo systemctl enable cryptpad.

Nota: Existen otras maneras de demonización de aplicaciones nodejs, por ejemplo  foreverjs o bien pm2.

Dominios

Como se ha expresado, se necesita de dos dominios registrados para sacar ventaja de las funciones de seguridad y encriptado remoto de CryptPad. Estos serán:

  1. Un dominio principal con el cual los usuarios accederán a la instancia

  2. Un dominio “sandbox” o subdominio configurado bajo una política restrictivva de contenidos, donde se aplicarán los encabezados

Nota: La intención de esta redundancia es limitar el riesgo de vulnerabilidades  del tipo Guionado de Sitio Cruzado (XSS), que permitirían a eventuales atacantes filtrar datos de usuario. La computación sensible (como el procesamiento de llaves criptográficas) se llevará a cabo en el dominio principal, mientras que la interfaz remota de usuario se implementará en el dominio "sandbox" o subdominio.

El archivo de configuración de ejemplo para Nginx incluye los encabezados relevantes para permitir el sistema de aislamiento sandbox. Sin embargo, debe configurar su instancia correctamente para que sea efectivo. Necesitará:

  1. Los dos dominios o subdominios

  2. incluir ambos dominios en /cryptpad/config/config.js según se describe en Configurar CryptPad

  3. Generar un certificado SSL que cubra tantos dominios.

  4. Asignar correctamente ambos dominios y ambos certificados a las variables específicas para ellos situadas en el archivo de configuración para Nginix de ejemplo

Instalar y configurar Nginx

El servidor de aplicación de CryptPad maneja las conexiones activas a través dewebsocket y sirve los activos estáticos (HTML, Javascript, CSS, etc) a los solicitantes remotos. Esta configuración básica está diseñada para su configuración sencilla, pero no protege el tráfico con SSL, ni maneja adecuadamente muchos usuarios concurrentes.

En un ambiente productivo, se recomienda Nginx Estable. Para configurarlo para CyptPad:

  1. Copiamos el Archivo de configuración de ejemplo de Nginx para CryptPad example Nginx de modo que se use, o sea importado en la confdiguración principal de Nginx, por ejemplo, poniéndolo en /etc/nginx/conf.d/cyptpad.conf.

  2. Editamos el fichero de configuración con los dominios correctos y rutas a los certificados correspondientes.

  3. Ejecutamos el comando sudo openssl dhparam -out /etc/nginx/dhparam.pem 4096 si no lo hicimos previamente en la máquina host.

Ahora deberían estar accesibles los contenidos estáticos y páginas tales como https://cryptpad.sudominio.com/index.html.

Configurar CryptPad

Para finalizar la instalación, debemos aseguranos que cryptpad/config/config.js contiene al menos:

  • Los dominios correctos:

    • Su dominio principal en lugar de la cadena:

      httpUnsafeOrigin: 'http://localhost:3000',
      
    • Su dominio Sandbox o subdominio.com en lugar de la cadena:

      httpSafeOrigin: "https://some-other-domain.xyz",
      
  • Un correo electrónico administrativo (que aparecerá en la página de Contacto) en lugar de la cadena:

adminEmail: 'i.did.not.read.my.config@cryptpad.fr',

Diagnósticos

CryptPad ofrece una página web de diagnósticos, capaz de efectuar evaluaciones a la configuración de la instancia. Una vez que hemos completado los pasos anteriores, podremos https://cryptpad.sudominio.com/checkup/ para asegurarse que todo figura correctamente configurado.

Configurar los administradores

Una vez que CryptPad está instalado, creamos una cuenta de usuario de CryptPad por medio del botón Registrar en la página de inicio de CryptPad. Esto generará un usuario común que podrá trabajar en el ambiente como todo hijo de vecino registrado.

Para hacer que esta cuenta se convierta en Administrador de la instancia de CryptPad debemos seguir este temperamento:

  1. Copiamos la llave pública que encuentre en Menú de Usuario (clic el avatar en la esquina superior derecha) > Preferencias/Cuenta/Clave de la Firma Pública

  2. Pegamos la llave en cryptpad/config/config.js en lugar de la siguiente cadena (la descomentamos y reemplazamos):

adminKeys: [
        "[cryptpad-user1@my.awesome.website/YZgXQxKR0Rcb6r6CmxHPdAGLVludrAF2lEnkbx1vVOo=]",
],
  1. Reiniciamos la instancia CryptPad con sudo systemctl restart cryptpad

Configurar la casilla de correo de soporte

A partir de la versión 4.6 de CryptPad, se ha incorporado una casilla de correo electrónico de soporte para la instancia puede configurarse desde el Panel de Administración, ya sea para el administrador, o para administradores secundarios (en caso que estos fuesen necesarios).

  1. Desde la cuenta de administrador de la instancia, visitamos la página https://subdominio.com/admin/#support

  2. Hacemos clic en Generar Clave de Soporte

  3. Ahora quedará activa la casilla de correo electrónico de soporte

  4. Borra la caché para acceder a la casilla de correo desde la solapa General > Eliminar Caché HTTP

Para permitir que otros administradores secundarios accedan a la casilla de soporte debemos:

  1. Copiar la clave de soporte generada que aparece en la parte inferior de la página de soporte.

  2. Enviar la clave de soporte a la cuenta de otro administrador

  3. El otro administrador debe incorporarse la clave usando el campo Agregar Clave Privada de la página Soporte, con lo cual obtendrá acceso también a la susodicha casilla de correo de soporte.

Armar páginas estáticas y metadatos Open Graph

Si deseamos elaborar páginas estáticas con CryptPad y activar presentaciones preliminares para redes sociales, debemos ejecutar el siguiente comando en el servidor:

npm run build

Esto creará un fichero index.html para cada una de las aplicaciones o módulos en el directorio customize/www. No se recomienda realizar modificaciones manualesa a dichas páginas, ya que resultarán sobrescritas la próxima vez que ejecutemos npm run build. Para modificar la imágenes previsualizadas, debemos consultar Previsualización de Imágenes Open Graph

Nota: Debemos recordar ejecutar el comando npm run build nuevamente si actualizamos el servidor de CryptPad a una versión nueva puede dar como resultado algún problema por código obsoleto.

Indudablemente nosotros caímos bajo la férula del imperialismo yanqui, que no permitió a estos países unirse, y que ha estado luchando siempre por separarnos y enfrentarnos entre nosotros, al fin de que esa unidad no se produzca.

¿Por qué lo han hecho? Muy simplemente, porque ellos se están quedando sin materias primas y están queriendo conservar como países satélites a aquellos que tengan las grandes reservas de comida y materias primas para esa superpoblación que está ya a 25 o 39 años de distancia. Ellos querrán que después nosotros trabajemos para darles a ellos de comer y para darles nuestra materia prima. ¿Por qué? Porque los países superdesarrollados son los pobres del futuro, y los países infradesarrollados serán los ricos del futuro, que tendrán la materia prima y la comida suficiente.

Hace pocos días, en Medio Oriente amenazaron a Estados Unidos de cerrarle el grifo del petróleo. El petróleo que produce Medio Oriente es el 80 por ciento del petróleo del mundo, de manera que si ellos cierran la canilla, la industria norteamericana, que está toda montada sobre energía basada en petróleo, tendrá un sacudón muy fuerte. ¿Cómo contestó Estados Unidos? El Senado de Estados Unidos contestó que si eso hacían los árabes, Estados Unidos ocuparía el Medio Oriente. Eso lo van a hacer, pero no sólo con los árabes: ¡lo van a hacer también con nosotros el día que necesiten y no tengan!

Por ello todo lo necesario para lograr la independencia económica es poco. Saber prever es saber actuar.

jueves, 16 de diciembre de 2021

¿Cómo instalo emuladores de calculadoras HP en Ubuntu?

Reunidos con el plantel de ingeniería de Yacimientos Petrolíferos Fiscales, Juan Perón expone cómo instalar emuladores de calculadoras científicas HP en Ubuntu.

¡Trabajadores!

Si algo nos ha enseñado la observación de los acontecimientos del mundo es que tanto desde un imperialismo como en otro, la Conducción política de los Pueblos no ha dejado de estar suplida por aficionados.

Esto es así porque un conductor no se hace, se nace. El Conductor debe tener raigambre en el pueblo, conocerlo e interpretar sus sentires, para saciar sus necesdiades de Justicia. Quien no cumpla con dichas premisas podrá conducir, pero sólo de emergencia y ante la inexistencia de algo mejor.

Indudablemente que esto no quiere decir que sólo pueden conducir los Dioses. A muchos les han rogado el hombre a lo largo de su historia, y a esta altura del segundo tiempo sabemos que deben estar ocupados en bastantes despelotes como para siquiera levantarnos el teléfono, mucho menos ocuparse. Hemos de darnos nosotros mismos lo que necesitamos.

No escapa a nadie que yo estoy mas cerca de recibir sobre mi cabeza una palada de tierra en lugar de un bañito de agua bendita [ríe]. Es por ello que quienes me sucedan han de conocer también los pormenores de la Conducción Política, para hacer con él lo bueno que los Pueblos anhelan.

Decía entonces que el Arte de la Conducción requiere sopesar distintos cálculos de correlación, que no suelen diferir mucho de aquellos para los cuales me he formado. Lo ideal sería que la palmas y laureles que llevan clavadas esta gorra no se las den a cualquiera, y mucho menos se haga lo mismo con los votos del Pueblo.

Pues bien señores, estos cálculos que les he referido no salen de un repollo, pero hoy podemos contar con asistencia para el cálculo político tanto como lo podemos contar para el cálculo aritmético científico.

Vean señores... es sabido que las primeras máquinas mecánicas de calcular provienen ya del siglo XV, pero la mecánica de precisión sólo posibilitó que fuesen industrializadas con éxito recién desde inicios del finales del siglo XIX, destacando especialmente la Compañía Internacional de Máquinas de Negocios, el gigante azul IBM.

Para la década de 1940 los bandos en pugna se habían propuesto el uso de cómputo electromecánico con máquinas que derivarían en los grandes mainframes programables. Sin embargo estas máquinas destinados al cálculo científico de potencia tuvieron otras ideas de corte más minimistas. El Japón de posguerra avanzó decididamente en la reducción de tamaño, con equipos electrónicos Casio de sobremesa, y ya a inicios de la década de 1960 equipamiento electrónico de estado sólido. Para la década siguiente se contaban con microprocesadores (como el Intel 4004 de 4 bits), lo que permitió disponer de dispositivos de bolsillo como la calculadora científica de bolsilño HP-35, y estos se terminarían popularizando en la década de 1980 gracias a la enorme competencia y disminución de costos productivos.

Está claro que en sistemas de cómputo similares a Unix contamos con el inefable dc, la calculadora de notación polaca inversa integrada para la terminal, he explicado cómo instalar Speedcrunch y Tapecalc en Ubuntu. Sin embargo, soy de la opinión que este equipamiento merece un lugar en el corazón de los Trabajadores: han sido sus pistas electrónicas y sus directas CPUs las que acompañaron el aprendizaje de toda una generación de técnicos del cómputo.

Por tal motivo, os enseñaré cómo presentar claros émulos de estas calculadoras científicas del ayer. Por ejemplo, contaremos con un simulador de la calculadora científica de bolsillo Hewlett-Packard HP-15C.

Se trataba de una calculadora científica programable con notación polaca inversa (RPN) de alta gama. Fue producida por Hewlett-Packard desde 1982 hasta 1989, y representaba el cuarto modelo comercializado de sus calculadoras Serie 10 "Voyager", con un precio de 135 dolarucos. En escencia, era un reemplazo de la popular HP34C.

Contaba con un microprocesador HP Nuc (1LFS, 1LM2 o bien 1LM9), que hacían mover su display LCD de 10 dígitos de 8 segmentos monocromáticos. Tenía un almacñen de 66, de los cuales 64 eran modificables. 

Podían programarse con secuencias de tecleos para realizar microprogramas.

Podía operar con números complejos y operaciones matriciales, así como cálculo integral y de raíces de ecuaciones.

Para ello contaremos con HP-15C Simulator 4.3, un emulador de alta calidad. Os indicaré cómo instalar el Simulador de HP-15C. Este es capaz de funcionar en sistemas GNU con Linux de 64 bits.

Para proceder a su instalación descargaremos el emulador para nuestra arquitectura (se puede hacer desde aquí). Abriendo una terminal con Ctrl+Alt+T, lo integraremos pegando en la misma el siguiente bloque de comandos de organización:

mkdir /tmp/hp15c/ ;
cd /tmp/hp15c/ ;
wget  https://bit.ly/3cMWTH8 -O HP-15C_4.3.00_Linux_x86_64.zip ;

unzip HP-15C_4.3.00_Linux_x86_64.zip ;
chmod +x /tmp/hp15c/HP-15C ;
cp /tmp
/hp15c/HP-15C_Simulator_Font.ttf ~/.local/share/fonts/ ;
fc-cache -f ;
cd /tmp ;
mv /tmp/hp15c/ ~/.hp15c/ ;
cd ~/.hp15c/doc ;
wget http://h10032.www1.hp.com/ctg/Manual/c00503576.pdf -O hp11c_owners_manual_and_problem_solving_guide.pdf ;
wget http://h10032.www1.hp.com/ctg/Manual/c03030589.pdf -O hp15c_deluxe_owners_handbook.pdf ;
cd ~

Si deseamos ejecutarla desde la terminal podríamos hacerlo con:

 cd ~ && ./.hp15c/HP-15C

...pero suele ser más práctico crear un lanzador o acceso directo a /home/usuario/.hp15c/HP-15C. Para ello hacemos clic con el botón derecho del ratón sobre el menú Aplicaciones, y en el menú contextual que se despliegue elegimos Editar Menús. En el panel derecho Menús seleccionamos el menú Educación, y presionamos el botón Agregar ítem+. Esto abrirá el cuadro de diálogo Crear Lanzador. En su campo Comando: ingresamos /home/usuario/.hp15c/HP-15C (naturalmente cambiando usuario por nuestro propio nombre de usuario).

Tras presionar el botón Aceptar se habrá creado el lanzador. Ahora podremos acceder a la calculadora desde Aplicaciones / Educación / Calculadora HP-15C.

Al iniciar tendremos nuestra calculadora HP-15C emulada. El funcionamiento se conserva enormemente, con lo cual podremos introducir nuestros cálculos y ecuanciones a la polaca. 

Si queremos resolver 9+5, presionamos 5 y Enter para ingresarlo en la pila de instrucciones ("stack), 5 para hacer lo mismo con la segunda cifra a operar, y luego el operando de suma +.

Como el uso replica al de la calculadora real, podrán utilizar su manual de usuario de la calculadora HP-15C Deluxe y el Manual de Funciones Avanzadas de la calculadora HP-15C perfectamente, aunque personalmente puedo recomendarles el clásico y manual de usuario y guía de resolución de problemas de la HP-11C.

El emulador puede presentar mejoras con respecto a la HP-15C original corrigiendo sus bugs (notablemente, el de desbordamiento de pila), y sus programas de secuencias de teclas pueden incorpores perfectamente. Gracias a estos podremos afrontar complejos algoritmos.

Si hacemos clic con el botón derecho del ratón sobre la misma, podremos desplegar un menú contextual. Entre sus opciones contamos con la posibilidad de observar las clásicas tablas impresas en su tapa posterior.

Será posible podrán encontrar programas para la misma en internet y memorizarlos en el emulador desde la opción Grabar programa.

También podremos activar las Preferencias... del emulador. En este encontraremos la opción "Comportamiento HP-15C estricto", que revierte las mejoras presentadas en el emulador a una simulación completa, incluyendo bugs y retrasos temporales provocados por su microprocesador.

Si lo queremos desinstalar:

rm -R ~/.hp15c ;
rm ~/.hp-15c ~/.hp-15c.mme ;
rm
~/.local/share/fonts/HP-15C_Simulator_Font.ttf ;
fc-cache -f 

Free42

Si bien la rompedora HP-15C era una clásica, también podremos contar con su sucesora, la HP-42S RPN Scientific.

Se trataba de una calculadora fabricada desde 1988 hasta 1995, con un precio inicial de 120 dólares, y como segunda iteración de la serie Pioneer de la marca. Disponía de un display LCD matricial de 131x16 pixels monocromáticos, que le permitían 2 líneas y 22 columnas de caracteres, todos ellos atresados gracias a una CPU Lewis Saturn y 32 KB de memoria RAM.

La HP-42S constaba también de notación polaca inversa, y daba rienda suelta al lenguaje de programación FOCAL introducido con la serie HP-41, almacenado en 64KB de memoria ROM. Como características de avanzada contaba como exponente de comunicación por infrarrojos (ideal para la impresora tipo ticketera infrarroja HP82240).

Su calidad constructiva, adosada a sus posibilidades, la toranrían una favorita para los ingenieros de campo.

Para emular estas podremos utilizar Free42. Para instalar este simulador abrimos una temrinal con Ctrl+Alt+t e ingresamos:

sudo apt update
sudo apt upgrade
sudo apt install free42-nologo

Es recomendable también crearle un lanzador siguiendo el mismo procedimiento detalado para la HP-15C anterior, sólo que en este caso debemos ingresar en el campo Comando: la siguiente ruta:

free42bin

Tras presionar el botón Aplicar se creará el lanzador. Y ahora podremos ejecutar esta valedera calculadora desde Aplicaciones / Educación / Calculadora HP-42S.

Free42 es una reimplementación de la calculadora científica HP-42S y la impresora HP-82240. Como es una reprogramación completa, no utiliza código fuente de HP, y por lo tnato no requiere una imágen del programa ROM de la HP-42S original.

Al iniciar contaremos con la versión estándar, pero también podremos cambiarla a la versión realista (sin el logotipo de HP, por supuesto). Esto podremos alterarlo desde el menú Skin.

Para utilizarla podremos recurrir al manual del propietario de la HP-42S (en castellano) y el manual de programación de la HP-42S (en inglés) o bien recurrir al manual alternativo de Free42.

En fin, Free42 cuenta con a posibilidad de cargar y almacenar programas de manera directa y similar a la calculadora original.

Pero todo lo bueno puede mejorarse. Si deseamos una versión extendida de esta clásica calculadora que todos habríamos querido tener, podemos a recurrir a Plus42, un programa derivado del anterior pero que suma funcionalidades hipotéticas (incluyendo función Solver para ecuaciones diferenciales, opciones mas en tramo de las calculadoras financieras HP17/19 BII. Entre ellas, panel de cristal líquido con más líneas - capaz ahora de presentar cuatro acumuladores - así como funcionalidades de ingeniería, skins, etcétera. Plus42 puede instalarse lado a lado con Free42 de la HP-42S. Para instalarla desde la terminal podremos hacer:

cd ~/Descargas/ ;
wget https://thomasokken.com/plus42/download/Plus42Linux.tgz ;
tar xvfz Plus42Linux.tgz
mv ~/Descargas/Plus42Linux/ ~/.plus42/
mkdir $HOME/.local/share/plus42 ;
cd $HOME/.local/share/plus42 ;
wget https://thomasokken.com/plus42/skins/desktop/Mueck_P42d.zip ;
wget https://thomasokken.com/plus42/skins/desktop/Mueck_P42d.gif ;
wget https://thomasokken.com/plus42/skins/desktop/Mueck_P42d.layout ;
wget https://thomasokken.com/plus42/skins/desktop/Mueck_P42d_MN.zip ;
wget https://thomasokken.com/plus42/skins/desktop/Mueck_P42d_MN.gif ;
wget https://thomasokken.com/plus42/skins/desktop/Mueck_P42d_MN.layout ;
unzip -fo Mueck_P42d.zip  ;
unzip -fo Mueck_P42d_MN.zip

Ahora podremos crear el acceso directo a ~/.plus42/plus42dec y ~/.plus42/plus42bin, de la misma forma que se indicó anteriormente.

Plus42 cuenta con documentación en línea). Asimismo, podremos instalar programas .raw de regalo (importables en Free42 y en Plus42) con:

mkdir ~/.plus42/prg/
cd  ~/.plus42/prg
wget https://thomasokken.com/free42/42progs/plot_orig.raw
wget https://thomasokken.com/free42/42progs/plot_solve.raw
wget https://thomasokken.com/free42/42progs/dplot_orig.raw
wget https://thomasokken.com/free42/42progs/dplot_solve.raw
wget https://thomasokken.com/free42/42progs/sun.raw
wget https://thomasokken.com/free42/42progs/prm_dec.raw
wget https://thomasokken.com/free42/42progs/prm_bin.raw
wget https://thomasokken.com/free42/42progs/stress.raw
wget https://thomasokken.com/free42/42progs/synth.raw
wget https://thomasokken.com/free42/42progs/mast.raw
wget https://thomasokken.com/free42/42progs/minehunt.raw
wget https://thomasokken.com/free42/42progs/OkieDokie/okiedokie.raw
wget https://thomasokken.com/free42/42progs/rtmin.raw
wget https://thomasokken.com/free42/42progs/RootsEqns.raw
wget https://thomasokken.com/free42/42progs/mlran.raw
wget https://thomasokken.com/free42/42progs/aes.raw
wget https://thomasokken.com/free42/42progs/aesprep.raw
wget https://thomasokken.com/free42/42progs/Base.raw
wget https://thomasokken.com/free42/42progs/Convert.raw
wget https://thomasokken.com/free42/42progs/Finance.raw
wget https://thomasokken.com/free42/42progs/Triangle.raw
wget https://thomasokken.com/free42/42progs/ses.raw
wget https://thomasokken.com/free42/42progs/G4_G3_G2.raw
wget https://thomasokken.com/free42/42progs/STATISTICS.raw
wget https://thomasokken.com/free42/42progs/ntrp.raw
wget https://thomasokken.com/free42/42progs/lrnc.raw
wget https://thomasokken.com/free42/42progs/mort.raw
wget https://thomasokken.com/free42/42progs/Moody42/Moody42.raw
wget https://thomasokken.com/free42/42progs/Astronavigatie/astro_tso.raw
wget https://thomasokken.com/free42/42progs/Astronavigatie/astra_tso.raw
wget https://thomasokken.com/free42/42progs/Astronavigatie/avsho.raw
wget https://thomasokken.com/free42/42progs/unixtime.raw
wget https://thomasokken.com/free42/42progs/moeglein/DO_CALC.raw
wget https://thomasokken.com/free42/42progs/moeglein/N_CAL.raw
wget https://thomasokken.com/free42/42progs/Twix/twix.raw
wget https://thomasokken.com/free42/42progs/cp2oct.raw
wget https://thomasokken.com/free42/42progs/Convert2.raw

Finalmente, podremos recurrir a un emulador de la clásica HP-48. Se trata de una serie de calculadoras científicas de notación polaca inversa y programables en NPL provistas del procesador Saturn de 64 bits. Producidas desde 1990 hasta 2003, las mismas cuentan con displays monocromáticos capaces de presentar gráficas en 131x64 pixels, o bien cuatro líneas de texto - en sus modelos de avanzada - con módulos de memoria y conexión serial con xmodem o Kermit.

Para instalarla en Ubuntu u otros sistemas GNU parecidos cargamos primero las dependencias. Para ello abrimos una terminal con Ctrl+Alt+t e ingresamos:

sudo apt install git curl libpkgconf3 libreadline-dev libsdl2-dev libx11-dev libxext-dev liblua5.4-dev

Y luego bajamos el código fuente y lo compilamos.

cd /tmp
git clone https://github.com/gwenhael-le-moine/x48ng
cd /tmp/x48ng
make
sudo make install PREFIX=/usr
/usr/share/x48ng/setup-x48ng-home.sh


Este proceso de configuración presentará el siguiente mensaje:

The next step will download all available HP 48 ROMs from https://hpcalc.org where "HP graciously began allowing this to be downloaded in mid-2000."
You can hit Ctrl-C now if you do not wish to download them.


...debemos presionar Intro para comenzar el proceso de descarga de las ROMs de Hewlett-Packard, que quedarán almacenadas en ~/.config/x48ng/ROMs. Asimismo, seteará el fichero de configuración ~/.x48ng/ para preparar nuestra calculadora HP-48GX emulada como si tuviese una tarjeta de 128KB en el peurto 1 y una tarjeta de 4MB en el puerto 2.

Para que tome las ROM de HP a la primera, debemos crear un fichero de configuración que lo indique. Para ello ingresamos:

x48ng --print-config > ~/.config/x48ng/config.lua
nano ~/.config/x48ng/config.lua


Esto abrirá nuestro editor GNU Nano con el fichero de configuración. Podremos usar Ctrl+w para buscar la línea:

rom = "rom"

y le emplazamos la ROM de la HP tope de gama de la línea, el fichero gxrom-r (para que nos quede como una HP-48GX+, aunque tendremos las ROMs de las HP-48SX y otros modelos intermedios de la serie si nos interesa). En este caso haremos que la línea quede de la siguiente manera:

rom = "ROMs/gxrom-r"


Guardamos los cambios con Ctrl+o y salimos del editor Nano con Ctrl+x.

Ahora podremos ejecutar el emulador desde Aplicaciones / Accesorios / x48ng, o bien ingresando a la terminal:

x48ng

La primera vez que lo hagamos nos preguntará si queremos resetear la memoria de la calculadora (un paso necesario al prenderla por primera vez). Para responder "yes" a la pregunta, presionamos el botón de función R (o sea, el botón "blanco" superior izquierdo de la X48). Y ya nos quedará la X48 operativa.

También contaremos con una visual apaisada, que puede ser ideal para verla en pantallas de una netbook. Para ello ingresaríamos:

x48ng --netbook

Podremos descargar la documentación en castellano en forma de su Guía de Iniciación Rápida de la HP48G, la Guía de Usuario de la HP48G, o la Guía de Usuario Avanzado de la HP48 (en inglés).

miércoles, 11 de enero de 2012

¿Cómo hago que OpenOffice/LibreOffice guarde siempre mis archivos en formato Micro$oft Office?

Mientras recibe en su despacho a una delegación de los empleados de comercio y bancarios, agrupado en la Confederación General del Trabajo, Juan Perón explica cómo hacer para que OpenOffice y su descendiende LibreOffice guarden los archivos en el formatos antiguos de Micro$oft Office .

Gremios: Vea, General. Tenemos cinco computadoras viejas en el sindicato que tienen Microsoft Office, y queremos poder abrir en Microsoft Office los archivos que hacemos con LibreOffice. ¿Se puede?

Perón: Indudablemente, eso es tan fácil que, como dicen los ingleses, en cinco minutos me tomo un té y se los explico.

No es secreto para nadie que LibreOffice, como suite ofimática, utiliza un estándar de archivo abierto denominado ODF (OpenDocument File). Las ventajas son la de ser un estándar robusto para encarar aplicaciones de oficina, y que no depende de una empresa en particular para su manutención. Ello nos asegura a futuro poder abrirlos y editarlos sin complicaciones en muchas aplicaciones gratuitas y libres, sin menos temor a vernos bloqueados por el uso de estándares que son - diremos - perecederos.

Las extensiones representan al estándar de trabajo OpenDocument son las siguientes:
  • Para el Archivo de texto: ODT
  • Para el Archivo de Planilla de Cálculo .ODS
  • Para el Archivo de Presentación: .ODP
  • Para el Archivo de dibujo: .ODG
  • Para el Archivo de gráfico estadístico: .ODC
  • Para el Archivo de fórmula matemática: .ODF
  • Para el Archivo de base de datos: .ODB
  • Para el Archivo de imágen: .ODI
  • Y su Documento maestro: .ODM

Normalmente querrán utilizar estos formatos libres y no otros. Sepan que incluso las últimas versiones de las suites ofimáticas privativas (con Micro$oft Office a la cabeza) permiten leer y guardar también los ODF (utilizando un plugin en la versión 2003 o el Service Pack 1 en la versión 2007), y directamente en las posteriores.

Pero a veces todo no se puede. La economía significa mancomunar todos los esfuerzos, y a veces necesitamos portar nuestros archivos a otras plataformas de oficina que no han migrado al software peronista. Sabems que hay que persuadir a todo el que se pueda...

Demás está decir que LibreOffice nos permitirá abrir los más difundidos formatos privativos, amén de guardar nuestros documentos en variados formatos incluyendo los nuevos privativos (como el .DOCX) o antediluvianos (como el clásico .DOC) para versiones "legacy" o .WP o .WPx de WordPerfect. Para manejar esto, simplemente hemos de recordar de desplegar las opciones de Tipo de Archivo deseado en la ventana "Guardar Como".
Habrán de tener en cuenta que - dependiendo de las características de uso avanzado que hayamos aplicado en nuestro documento - pueden presentarse inconsistencias a la hora de guardar con determinados formatos pensados para suites antiguas. Bajo tal circunstancia, un cuadro de diálogo como este nos ofrecerá mantenerlo en el formato elegido o guardarlo en el formato libre ODF, el cual no tendrá inconsistencia alguna.

Ahora bien: si por algún motivo ineludible nos vemos obligados a utilizar siempre formatos propios de la oligarquía, podremos indicarle a LibreOffice que por defecto cambie los formatos para guardar los archivos a fin de usar algunos compatibles con Micro$oft Office. De esta manera no tendremos en portar documentos a esa antigua y privativa plataforma, ni será necesario cambiarlo desde la ventana de "Guardar Archivo" toda vez que hacemos esta acción (con el inherente riesgo de olvidar hacerlo).

Para ello vamos Herramientas / Opciones y dentro de la categoría Cargar / Guardar encontraremos la sección General. A la derecha nos aparecerán las opciones. Habremos de modificar las opciones “Tipo de Documento”, seleccionando el formato deseado.
En este ejemplo, modificaremos los Documentos de Texto (que por defecto se almacenarían en formato ODF) para que se guarden de ahora en más con el formato del antiguo Microsoft Word 2003...

Las opciones que tenemos son completas para toda la línea más o menos tormentosa de archivos para ofimática no estandarizados:

En archivo de texto: Archivo ODT de OpenDocument, pero también podemos hacerlo en archivos .DOC en formatología de Microsoft Word 6.0, Word 95, Word 97/2000/XP, .DOCX de Word 2003 y Word 2007. Pocket Word, archivo .RTF (formato rich text, formato de texto enriquecido), .TXT Texto plano o texto unificado, texto ODT de OpenOffice 1.0, AportisDOC (para Palm) o DOC de DocBook, archivo HTML, entre otros.

En Archivos de Planilla de Cálculo: Archivo ODS de OpenDocument, XLS en formatología Microsoft Excel 5.0, 95, 97/2000/XP, 2003, 2007, SYLK, CSV separado por comas, entre otros.

En Archivos de Presentaciones. Archivo ODP de OpenDocument, PPS en formatología Microsoft PowerPoint 97/2000/XP, 2003 y 2007, entre otros.

En Archivo de Fórmula: Archivo ODF de OpenDocument. MathML 1.01, entre otros.

Para confirmar todo simplemente hemos de presionar el botón Aceptar.

Gremios: ¡Era más fácil de lo que parecía, general! Mientras nos explicaba lo hicimos, y nos resolvió la vida! Ahora podemos guardar archivos en esos formatos oligárquicos de una.

Perón: ¡Tengan cuidado de poder abrirlos siempre, muchachos! Y si no, migren su trabajo a los formatos libres ODF, recuerden que el resultado del trabajo ha de ser del trabajador, no de una empresa foránea de la sinarquía internacional...