Básicamente, un nuevo blog relacionado a todo lo que este humilde servidor dice y hace, más allá de la temática que se cubre en el blog de tecnología.

Sobre este sitio

Esto no es nada más que una bitácora que continúa lo que comenzó en la anterior, con las facilidades de Blogger (ya saben).

Mostrando las entradas con la etiqueta tutoriales. Mostrar todas las entradas
Mostrando las entradas con la etiqueta tutoriales. Mostrar todas las entradas

viernes, 10 de abril de 2020

IDE's legendarios: EMACS (Introducción)




A lo largo y ancho del mundo de programación, podemos toparnos con varias interfaces de entorno de desarrollo interactivo (Interactive Development Enviroment o IDE en inglés), las cuales no sólo nos permiten editar de una forma bastante práctica o gráfica un aplicativo y/o parte de un código fuente. No obstante, al haber IDE's de código fuente ya populares como Visual Studio Code y Sublime Text, digamos que el pionero en dar forma al concepto acutal de IDE optimizado para código fuente ha de ser GNU EMACS, el cual viene a ser de los pioneros en brindar opciones de personalización, a tal grado de ser igual o más versátil que las opciones anteriormente mencionadas.

En esta ocasión, toca echar un vistazo a GNU EMACS, el editor de texto que surgió en el año 1984 como proyecto independiente tras 9 años de ser un complemento para un editor de texto conocido como TECO, de la mano de Richard Stallman. Dicho IDE logró destacar por varias implementaciones, como la de tener un intérprete LISP, agenda en texto plano (alias, org mode), machine learning e inteligencia artificial para codificación, cliente de correo electrónico, juegos incluídos y cualquier otra extravagancia que hasta ahora no me acuerdo.

Interfaces


Sí, tal y como dije: interfaces. GNU EMACS tiene dos interfaces: una interfaz gráfica, la cual tiene un mejor aspecto en varias distros GNU/Linux y MacOS (bueno, la versión de Windows te muestra todos los atajos de teclado e íconos paridos de Windows 2000/ME), y una interfaz en modo texto, la cual se invoca con emacs -nw desde cualquier terminal en sistemas operativos tipo UNIX.

Emacs en Windows. Nótese que la versión empleada no es la versión estable que encuentra en la web oficial de EMACS.
EMACS en modo texto (versión para Windows ejecutada en símbolo de sistema). Una auténtica delicia para quienes deseen programar y/o editar código fuente de forma remota.

Para instalarlo en Windows, debemos recurrir por el momento a la rama de desarrollo del IDE anteriormente mencionado, ya que la versión actual (26.3) simplemente está disponible en un ZIP y ejecutarlo desde ahí. En el caso de la distro GNU/Linux, está ya disponible desde el repositorio de su distro preferida, y por defecto les aparecerá la versión estable disponible (en el caso de Debian, está la versión 26.1, mientras que Arch y derivados está la versión 26.3).

Atajos de teclado más habituales


Aquí yace lo interesante de Emacs, ya que seguramente habrán visto varios atajos de teclado, los cuales se basan en las teclas CTRL y ALT. Pues, Emacs tiene la particularidad que buena parte de sus combinaciones de teclas aparentemente "abusan" de éstas (de ahí el por qué el mito del "meñiqe de Emacs", aunque tengamos en cuenta que buena parte de los comandos originales estaban pensados en las distribuciones de teclado diseñadas para las máquinas Lisp).

Teclado Space-Cadet empleado para las máquinas LISP de aquellos años. Nótese la posición de las teclas CONTROL y META.

Yendo al grano. Emacs tiene la particularidad de disponer de atajos de teclados en donde son relevantes las teclas CTRL y ALT, aunque a la hora de ver los atajos de teclado, lo único que veamos sean las letras C y M con guiones a diversas letras minúsculas. Ya que actualmente usamos la actual y casi estandarizada distribución de teclado basada en las de los IBM modelo M, aquí les explico en un breve gráfico el significado de dichas letras:

M [META] >> ALT
C [CONTROL] >> CTRL

Así es. La principal ventaja de dicha metodología de atajos de teclado es que es independiente de la distribución de teclado a la que hayamos estado acostumbrado, por lo que los comandos para poder hacer uso de una función resultan ser prácticas, sin importar si la distribución de teclado fuese francesa (AZERTY), alemana (QWERTZ) o Dvorak.

Por cierto, buena parte de las combinaciones de teclado de Emacs pueda que resulten incómodas al principio, por lo que también pondremos atajos de teclado alternativos que resulten ser mucho más rápidos de aprender, aliviando la tensión que puedan sentir las muñecas tras tanto estirar los dedos.

Apertura de archivos

  • Nuevo archivo >> C-x C-f
  • Abrir archivo >> C-x C-d
  • Guardar archivo >> C-x C-s
  • Guardar como >> C-x C-w

Edición de texto

  • Cortar >> C-w
  • Copiar >> M-w
  • Pegar (yank) >> C-y
  • Seleccionar  >> C-SPC
  • Seleccionar todo >> C-x h
  • Deshacer >> C-x u | C-_ | C-/
  • Rehacer >> C-f | C-c C-/
  • Reemplazar >> M-%

Manejo de búfers (o "ventanas")

  • Abrir nuevo búfer (horizontal) >> C-x 2
  • Abrir nuevo búfer (vertical) >> C-x 3
  • Cerrar otros búfers abiertos >> C-x 1
  • Cerrar búfer en uso >> C-x 0
  • Cambiar a otro búfer >> C-x o
  • Desplazarse entre búfers en una sola "ventana" >> C-x <LEFT> | C-x <RIGHT>

Manejo de pestañas (muy pronto, en Emacs 27.1 y sucesores)

  • Abrir nueva pestaña >> C-x t 2
  • Cambiar pestaña >> C-x t o
  • Cambiar búfer en otra pestaña >> C-x t b
  • Editar archivo en otra pestaña >> C-x t f

Cambio de mayúsculas/minúsculas en palabras

  • Letra Mayúscula (Uppercase) >> M-u
  • Letra minúscula (Lowercase) >> M-l
  • Todo en mayúsuclas (capitalize) >> M-c
  • Selección en mayúsculas >> C-x C-u
  • Selección en minúsculas >> C-x C-l

Extras

  • Abrir terminal (UNIX) | símbolo de sistema (Windows) >> M-x shell
  • Lector de noticias, cliente de correo y RSS >> M-x gnus
  • Calculadora >> M-x calculator
  • Calendario >> M-x calendar
  • Calendario lunar >> M-x phases-of-moon
  • Tetris >> M-x tetris
  • Torre de Hanoi >> M-x hanoi
  • Terapeuta >> M-x doctor
  • Modo VI/VIM (para los usuarios de VIM) >> M-x viper-mode

Por el momento, éstos son los atajos de teclado más usados que hay en Emacs. La inclusión de los atajos de teclado para las pestañas se debe a que es una de las funciones más esperadas en dicho IDE, por lo que sería injusto no incluirlos por más que fuesen banales en la versión actual (26.3). Además, Emacs también puedes usarlo como una agenda y/o suite ofimática minimalista a través del complemento Org Mode, por lo que te puede servir como agenda para cualquier plan.

De todas formas, les recomiendo seguir el tanto el tutorial (disponible en español) ejecutando la combinación de teclas C-h t (CTRL-H y la letra t) y también la guía rápida que ofrece la Free Software Foundation para así hacerse una idea de las diversas funciones que tiene este aplicativo.

sábado, 4 de agosto de 2018

BIOS, tenemos un problema III (y sí, logré solucionarlo de momento)


Siguiendo con la saga de las dos anteriores bitácoras (la primera, explicando el origen de esta ptaleta; y la segunda, explicando el por qué), ahora escribo plácidamente desde la ya restaurada HP Compaq DC7700 SFF, por lo que continuaré con explicarles la solución que les ayudará a lidiar perfectamente con el dilema del BIOS y los procesadores Intel Core 2 Duo basdos en Wolfdale junto con el chiste de actualizar el microcódigo y hacer el hard reset para así recuperar el acceso a dicho componente del BIOS.

Así que si bien, empecemos con esta solución que les propongo. Estos pasos son los que se aconsejan en este tutorial que saqué tanto de este sitio como también de otros que sugieren estos pasos:

  1. Apagamos la PC.
  2. Desconectamos los cables y periféricos que estén conectados al dispositivo en cuestión (salvo el de energía).
  3. Retiramos la pila del CMOS. Mantenemos presionados tanto el botón amarillo del botón de encendido por tres segundos. Pasado ese lapso, volvemos a instalar la pila del CMOS.
  4. En caso de tener dos memorias RAM instaladas, retiramos una para efectuar el cambio. De usar una memoria RAM y tener otra de emergencia, reemplacemos dicha memoria RAM para descartar posibles fallos o si dicha memoria RAM sea la responsable de tal comportamiento.
  5. Confirmamos los cambios hechos pulsando la tecla F1. En seguida aparece la pantalla del BIOS del PC y pulsamos F10 para acceder a la configuración, y entramos a la sección File (Archivo) >> Set Time and Date (Cambiar Fecha y Hora).
  6. Efectuados los cambios, pulsamos dos veces F10 para confirmar los cambios.

Ahora, procederemos a descargar los siguientes autoextraíbles que nos ayudarán a efectuar la integración del BIOS con el microcódigo de Intel:


Y a partir de este punto, empezamos a hacer lo siguiente:

En Windows, elegimos el segundo enlace, el cual contiene el ejecutable "HQFlash" (ubicado en C:\hwsetup\sp54656). Dicho aplicativo se encarga de actualizar el BIOS a la versión más reciente para procesadores Core 2 Duo, ya que dicha versión del BIOS contiene las capacidades para poder así sacarle provecho al procesador. Habiendo seguido los pasos para actualizar el BIOS a la versión correcta, procederemos a descargar Rufus para así crear un USB autoarrancable con FreeDOS (dentro de la sección "elección de arranque"). Copiamos la carpeta DOS Flash en el USB y quitamos el espacio en el nombre de la carpeta, quedándonos con el nombre DOSFlash.

Ahora, reiniciamos el equipo y pulsamos nuevamente F10 para configurar el orden de arranque, yendo a las opciones Storage (Almacenamiento) >> Boot Order (Orden de Arranque). Pulsamos tres veces F10 para efectuar los cambios en el arranque del PC.

Tras el inicio, insertamos la memoria USB con la cual hemos formateado para que arranque con FreeDOS. Elegimos la primera opción debido a que tiene configurado la distribución de teclado que teníamos en Windows. Escribimos cd dosflash (y la tecla Enter, obviamente) para irnos a la carpeta correspondiente y escribimos flashbin para completar la actualización del BIOS. Nos preguntará si deseamos efectuar la actualización del microcódigo al BIOS, por lo que procederemos a pulsar la tecla "Y" para proceder a la actualización del microcódigo del BIOS.

Volviendo a Windows, hacemos clic en el primer enlace que dimos en la lista, el cual contiene el microcódigo que ha de efectuar la actualización correspondiente tanto al BIOS como también al procesador en cuestión (en mi caso, el Intel Core 2 Duo E7500 de la serie Wolfdale). Copiamos la carpeta ME Flash en nuestra memoria USB, y la renombramos MEFlash para repetir el mismo procedimiento, no sin antes copiar el ejecutable FWUpdLcl.exe de la carpeta Local-DOS y pegarla en la misma ubicación que el archivo 22301046.BIN.

Ahora, reiniciamos nuestro PC, y en la pantalla del BIOS, hacemos la combinación de teclas Ctrl + P para acceder a las opciones de Intel AMT (el manual lo pueden encontrar aquí). Ingresamos la contraseña "admin" y luego elegimos la opción Change Intel ME Password. Tengan a la mano papel y lápiz para anotar la contraseña que han de crear, ya que ésta sí o sí es necesaria para acceder a estas opciones del microcódigo, además de ser exigente con el nivel de dificultad (si la contraseña tiene más de seis dígitos y contiene caracteres alfanuméricos y especiales como una "@", basta y sobra). Pulsen la tecla "Bloq Num/Num Lock" para usar las combinaciones de caracteres especiales ASCII.

Dentro de las opciones del Intel ME, en la opción "Intel ME State Control" elegimos "enabled". En la opción "Intel ME Firmware Local Update Qualifier", también elegimos "enabled". Ahora, elegimos "Return to Previous Menu" para efectuar el reinicio del PC

Después de haber configurado nuestro PC para aceptar las actualizaciones del microcódigo de Intel, arrancamos desde la memoria USB con la misma opción ya mencionada. Escribimos cd meflash (con la tecla Enter, como corresponde), y escribimos fwupdlcl 22301046 para efectuar la actualización del microcódigo. Hacemos la combinación Ctrl + Alt + Supr para reiniciar.

Y así tenemos habilitado nuestro PC para que funcione correctamente con procesadores Core 2 Duo con la tecnología Intel vPro.

En fin, ésto es todo por hoy. Lastimosamente, Coreboot no soporta PC's OEM como las insufribles HP (ni tampoco Libreboot). Por eso es que hice este tutorial, además que los foros de HP que literalmente son un mar de lágrimas en los foros hispanos. Veamos si esta vez aguanta un año más, pero con el Intel AMT habilitado (y éso que hasta ahora, Intel no ha dicho nada sobre estos modelos a pesar que ya están condenados a sufrir con Meltdown y Spectre).

domingo, 8 de octubre de 2017

Experiencia con NVIDIA GeForce 210 (serie Tesla) e Intel Core 2 Duo


Hace poco adquirí dos componentes para mi HP DC-7700 SFF: un procesador Intel Core 2 Duo E7500 de 2.93 GHz (Wolfdale), y una tarjeta de video NVIDIA GeForce 210 de 1 GB DDR3, ensamblado por MSI. La razón: algo de potencia extra para mi PC, además de descartar cualquier error que ocasione un mal desempeño por culpa del chipset y otras cosas. En un principio, tenía considerado una ATI/AMD HD 6450, pero tomé en cuenta que mi primera tarjeta de video dedicada fue una ATI Radeon 7000, la cual sufrió el infortunio de fundirse y quedarse daltónica en cuanto a coloración hace varios años, opté por NVIDIA.

Para ello, tengo 3 sistemas operativos en mi PC: Windows Vista SP2 de 32 bits (Q.E.P.D., soporte oficial), Debian GNU/Linux 9.1 "Stretch" y Parabola GNU/Linux-libre. El primero, usa el driver suministrado oficialmente por NVIDIA, el cual soporta desde Windows Vista hasta Windows 8.1 (sí, irónicamente, para ese modelo de tarjeta de video, no dan soporte a Windows 10); el segundo, recurro al blob disponible en la rama non-free de Debian; el último, se queda con nada más ni nada menos que el driver libre, Nouveau en su versión más reciente.

1.- Houston, tenemos un problema


Lo primero que me topé a la hora de hacer el repotenciado es el inconveniente que tuve con el BIOS de mi PC, ya que la variante que tengo vino para específicamente funcionar con procesadores Pentium D como el que me vino de serie (Intel Pentium D 915 de 2.8 GHz), por lo que me tocó hacer dos actualizaciones: la del BIOS y la del microcódigo requerido para procesadores Core 2 Duo en adelante.

El flasheo del BIOS fue bastante sencillo, el del microcódigo, no. Tuve que darme cuenta un día después que lo que tenía que hacer era formatear una de mis memorias USB de 8 GB para que arrancase con FreeDOS y meter los utilitarios requeridos para flashear el microcódigo del BIOS, ya que si no lo hacía, no sólo me aparecía el error 1801 en cuestión, sino que la velocidad del ventilador se disparaba al medio minuto.

Y sí, eso significa que tu PC se convierte en una turbina.
Por fortuna, encontré un video de YouTube en el cual, buscando en los comentarios, indicó de forma escueta pero efectiva, la forma en la cual debía instalar el bendito microcódigo que pide el BIOS. Efectuada dicha operación, adiós turbina.

2.- A probar el repotenciado


Teniendo en cuenta los cambios previamente mencionados, empezamos.

A la hora de instalar el driver que me vino de serie en el DVD de la tarjeta de video del "fabricante" (bueno, del ensamblador, el cual es MSI, pero el chipset y el GPU lo ha hecho NVIDIA), me topé con la sorpresa que la versión que venía incluida no era la más reciente. Afortunadamente, el driver no pesaba más de 200 MB para la descarga, por lo que sí pude aplicar la instalación, y asunto arreglado.

Specificaciones de mi PC, desde Windows (gracias, Speccy).


Pude jugar varios juegos y aplicativos que con la tarjeta de video integrada de Intel (GMA 3000) era insufrible la experiencia: las mejoras eran brutales al igual que varios otros factores gracias al OpenGL 3.0. Incluso, para mi "austera" cantidad de aplicativos, el Core 2 Duo me ha beneficiado. Sin lugar a dudas.

En el caso de GNU/Linux, el goce era el doble gracias a que Debian y Parabola los instalé en versiones de 64 bits: en el caso de Debian, el driver privativo (o blobs) de NVIDIA estaba disponible en los repos, además que vienen con un tutorial bastante práctico para configurarlo (sí, hay tanto para modelos antiguos y modernos que tengan soporte oficial vigente). A diferencia de otras distros, en el caso de Debian, los blobs estaban ya optimizados para que los parámetros que brinda funcionen correctamente. Y por supuesto, menos mal que conservé a Debian debido a que facilita bastantes parámetros para descartar cualquier cambio con blobs. Con el caso de Parabola, opté por Nouveau, el cual ando viendo la evolución de este controlador libre para ver si algunas funciones están disponibles. Debido a las limitaciones que tiene dicho controlador, Nouveau a duras penas me permite disfrutar de contenido a Full HD a 30 FPS como máximo, y no tiene acceso a CUDA y demás.

Por el lado del procesador, lo que le habilité fue el acceso a la virtualización y deshabilité el Intel ME en la placa base. Cero quejas en ese apartado, además que la virtualización me ha ayudado en gran manera a poder así manejar con soltura las máquinas virtuales que tengo en VirtualBox.

3.- Conclusiones


Para ser una de las primeras actualizaciones serias que hago a mi PC, se ajusta a mis necesidades que tenía delegadas. Edición multimedia, videojuegos, virtualización, entre otros lares. No voy a pedir más a una PC que tiene más de una década de antigüedad, pero en muchos casos, tener Linux es una buena opción a tener en cuenta, si consideramos que Windows 7 pronto va a terminar su soporte dentro de un par de años y Windows 10 literalmente no tiene buen soporte en sus drivers integrados, por lo que cualquier distribución GNU/Linux le caería a pelos por el soporte de hardware.

En fin, con el trato que tiene actualmente Microsoft con el hardware con varios años de antigüedad, me hacen confiar más en GNU/Linux y BSD (incluyendo MacOS) por encima de Windows mismo.

viernes, 18 de agosto de 2017

[Tutorial] ¿Cómo volver a usar el correo de OpenMailBox desde un cliente de correo?


Desde que OpenMailBox ha cambiado su enfoque comunitario a comercial, además de la comunicación del creador con sus usuarios con respecto a los usuarios del servicio se ha vuelto mucho más escueta, ha dejado en entredicho la calidad del servicio de OpenMailBox. Aprovechando que mi sitio web principal aún le estoy encontrando solución para migrar de hosting (debido a que el anterior literalmente no me habilita todas las funciones para empezar la migración de Wordpress a Drupal), decidí aprovechar el poco tiempo que me queda de días libres para ayudarles a usar el correo de OMB desde sus servidores.

Para empezar, ingresemos al sitio web en cuestión.






Luego, iniciamos sesión como siempre:




Ahora, procedemos a irnos a la sección de cuenta:





Luego, vayamos a la sección de configuración:





Hacemos clic en la opción "Contraseña de la aplicación":





Elegimos "Añadir una contraseña". En este caso, usaremos el cliente de correo Icedove (fork de Mozilla Thunderbird). Copien la clave, la cual usaremos a continuación y hacemos clic en "Añadir la contraseña":


Ahora, abrimos en el cliente de correo electrónico del cual accedíamos a nuestro correo la sección de configuración:


Efectuamos la eliminación del correo en cuestión, incluyendo la opción "Eliminar datos de mensajes":


Ahora, procedemos a añadir de nuevo el correo electrónico con la contraseña previamente copiada:





Hacemos clic en "Configuración manual" para cambiar la dirección de los servidores. Éstos se encuentran en la sección "Acceso IMAP/SMTP" dentro del panel de configuración de OpenMailBox:




Ahora, procedemos a copiar esos mismos datos en el formulario de configuración de correo de nuestro cliente:



Confirmamos los datos y a disfrutar de nuevo de nuestro correo OMB desde nuestro cliente de correo preferido.


No me gusta el rumbo que ha tomado OMB. ¿Hay otras alternativas que me permitan acceder desde mi cliente de correo favorito?


Para empezar, hasta ahora no encuentro esa opción en ProtonMail, pero en Cock.li, digamos que es el servidor de correo electrónico comunitario más resiliente que hay. Tanto así que el autor ha tenido una odisea para salvar su servicio con el apoyo de los usuarios de 8chan. Y sí, su representante legal es la misma que la de Edward Snowden, con lo que pueden contar con dicho servicio, el cual tiene desde servicio Jabber, servidor Mumble y hasta canario de garantía.

Compartan este artículo para que detesten la actual interfaz de OMB, o simplemente úsenla como madriguera de spam.