Adds more reviews of 500_graph.md

una
Sergio Alvariño 4 years ago
parent 110c2f0280
commit 445735d57f

@ -25,6 +25,9 @@ parece funcionar correctamente.
Linux Mint incluye `sudo` \[1\] y las aplicaciones que uso habitualmente
para gestión de paquetes por defecto (*aptitude* y *synaptic*).
Interesa tener instalado `sudo apt install ppa-purge`. Sirve para
eliminar ppas junto con los programas instalados desde ese ppa.
Tampoco voy a enredar nada con los orígenes del software (de momento)
## Firmware
@ -1830,7 +1833,16 @@ El programa libre para creación y edición de gráficos vectoriales.
El programa para edición y retocado de imágenes.
Parece que ahora mismo los repos están más actualizados que el ppa.
Parece que ahora mismo los repos están más actualizados que el ppa. Así
que bastaría con:
``` {bash}
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic
```
De todas formas dejo aquí las instrucciones para instalar desde el ppa
por si hacen falta algún dia:
sudo apt remove gimp gimp-data
sudo add-apt-repository ppa:otto-kesselgulasch/gimp

@ -18,6 +18,8 @@ Esta tarjeta provocaba todo tipo de problemas de sobrecalientamiento, pero en la
Linux Mint incluye ''%%sudo%%'' ((ya no incluye gksu pero tampoco es imprescindible
)) y las aplicaciones que uso habitualmente para gestión de paquetes por defecto (//aptitude// y //synaptic//).
Interesa tener instalado ''%%sudo apt install ppa-purge%%''. Sirve para eliminar ppas junto con los programas instalados desde ese ppa.
Tampoco voy a enredar nada con los orígenes del software (de momento)
===== Firmware =====
@ -1603,3 +1605,662 @@ Instalamos dependencias:
pip install python-usb
</code>
Instalamos el fichero ''%%.deb%%'' desde la web https://github.com/fablabnbg/inkscape-silhouette/releases
====== Aplicaciones de gráficos ======
===== LibreCAD =====
Diseño en 2D
<code>
sudo apt install librecad
</code>
===== FreeCAD =====
No hay ppa disponible para Ubuntu 20.
Instalamos //AppImage// desde [[https://wiki.freecadweb.org/AppImage#FreeCAD_AppImages|aquí]]
Dejo la instalación desde ppa como recordatorio.
<code>
sudo add-apt-repository ppa:freecad-maintainers/freecad-stable
sudo apt update
sudo install freecad
</code>
----
**NOTA:** the ccx package brings CalculiX support to the FEM workbench, and needs to be installed separately.
----
===== Inkscape =====
El programa libre para creación y edición de gráficos vectoriales.
<code>
sudo add-apt-repository ppa:inkscape.dev/stable
sudo apt update
sudo apt install inkscape
</code>
===== Gimp =====
El programa para edición y retocado de imágenes.
Parece que ahora mismo los repos están más actualizados que el ppa. Así que bastaría con:
<code>
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic
</code>
De todas formas dejo aquí las instrucciones para instalar desde el ppa por si hacen falta algún dia:
<code>
sudo apt remove gimp gimp-data
sudo add-apt-repository ppa:otto-kesselgulasch/gimp
sudo apt update
sudo apt upgrade
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic gimp-python
</code>
==== Plugins de Gimp ====
Para instalar los principales plugins basta con:
<code>
sudo apt install gimp-plugin-registry
</code>
|Esta sección ya no está vigente |
|#### resynthesizer |
|Descargamos el plugin desde [[https://github.com/bootchk/resynthesizer|aquí]] y descomprimimos el fichero en ''%%~/.config/GIMP/2.10/plug-ins%%'' |
|Tenemos que asegurarnos que los fichero //python// son ejecutables: |
|~~~~ chmod 755 ~/.config/GIMP/2.10/plug-ins/*.py ~~~~ |
===== Krita =====
La versión disponible en orígenes de software está bastante por detrás de la disponible en la web. Basta con descargar el //Appimage// desde la [[https://krita.org|página web]]
Lo copiamos a ''%%~/apps/krita%%'' y creamos un lanzador con el editor de menús.
Alternativamente también lo tenemos disponible por ppa en https://launchpad.net/~kritalime/+archive/ubuntu/ppa
===== MyPaint =====
Desde el [[https://github.com/mypaint/|github]] tenemos disponible la última versión en formato //appimage//. La descargamos la dejamos en ''%%~/apps%%'' y creamos un acceso con //Menulibre//, como siempre.
===== Alchemy =====
Igual que el //MyPaint// descargamos desde [[http://al.chemy.org|la página web]], descomprimimos en ''%%~/apps%%'' y creamos un accso con //Menulibre//.
===== Capturas de pantalla =====
El [[https://flameshot.js.org/#/|//flameshot//]] cubre el 99% de mis necesidades: ''%%sudo apt install flameshot%%''
El [[https://github.com/DamirPorobic/ksnip|//ksnip//]] por si tenemos que hacer una captura con retardo lo instalé con un //appimage//.
Shutter vuelve a estar disponible, al instalar desde este ppa ya queda con las opciones de edición habilitadas:
<code>
sudo add-apt-repository ppa:linuxuprising/shutter
sudo apt update
sudo apt install shutter
</code>
===== Reoptimizar imágenes =====
==== ImageMagick ====
Instalamos desde los repos, simplemente:
<code>
sudo apt install imagemagick
</code>
==== Imagine ====
Nos bajamos un //AppImage// desde el [[https://github.com/meowtec/Imagine/releases|github]] de la aplicación
===== dia =====
Un programa para crear diagramas
<code>
sudo apt install dia dia-shapes gsfonts-x11
</code>
===== Blender =====
Bajamos el Blender linkado estáticamente de [[https://www.blender.org|la página web]] y lo descomprimimos en ''%%~/apps/blender%%''.
===== Structure Synth =====
Instalado desde repos, junto con sunflow para explorar un poco.
<code>
sudo apt install structure-synth sunflow
</code>
===== Heron animation =====
Descargamos el programa desde [[https://heronanimation.brunolefevre.net/|su página web]] y como siempre descomprimimos en ''%%~/apps/heron%%''
===== Stopmotion =====
Primero probamos el del repo: ''%%sudo apt install stopmotion%%''
===== Instalación del driver digiment para tabletas gráficas Huion =====
He intentado un par de veces instalar con el fichero ''%%deb%%'' pero parece que no funciona.
Para hacer la instalación via DKMS el truco está en:
* Dejar el código fuente en un directorio de la forma ''%%/usr/src/<PROJECTNAME>-<VERSION>%%''
* Lanzar el ''%%build%%'' pero usando esta vez ''%%<PROJECTNAME>/<VERSION>%%''
Descargamos los últimos drivers desde [[https://github.com/DIGImend/digimend-kernel-drivers/releases|la página oficial de releases]], en el momento de escribir esto descargamos la versión V9.
Descomprimimos en ''%%/usr/src/digimend-9%%''
<code>
cd /usr/src
sudo xvzf <path-to-digimend-kernel-drivers-9> .
sudo dkms build digimend-kernel-drivers/9
sudo dkms install digimend/9
</code>
Para comprobar:
<code>
xinput --list
dkms status
</code>
Referencia:
* [[https://davidrevoy.com/article331/setup-huion-giano-wh1409-tablet-on-linux-mint-18-1-ubuntu-16-04|Aquí]]
====== Sonido ======
===== Spotify =====
Spotify instalado desde las opciones de Linux Mint
===== Audacity =====
Añadimos ppa:
<code>
sudo add-apt-repository ppa:ubuntuhandbook1/audacity
sudo apt-get update
sudo apt install audacity
</code>
Instalamos también el plugin [[https://theaudacitytopodcast.com/chriss-dynamic-compressor-plugin-for-audacity/|Chriss Dynamic Compressor plugin]]
===== Clementine =====
La version disponible en los orígenes de software parece al dia:
<code>
sudo apt install clementine
</code>
====== Video ======
===== Shotcut =====
Nos bajamos la //AppImage// para Linux desde la [[https://www.shotcut.org/|página web]].
La dejamos en ''%%~/apps/shotcut%%'' y:
<code>
cd
chmod 744 Shotcutxxxxxx.AppImage
./Shotcutxxxxxx.AppImage
</code>
===== kdenlive =====
Está disponible como ppa o como //appimage//. Lo he bajado como //appimage// para probarlo.
===== Openshot =====
También descargado desde su web como //appimage//.
===== Grabación de screencast =====
==== Vokoscreen y Kazam ====
Instalados desde los repos oficiales:
<code>
sudo apt update
sudo apt install vokoscreen kazam
</code>
===== Grabación de podcast =====
==== Mumble ====
Instalamos desde PPA
<code>
sudo add-apt-repository ppa:mumble/release
sudo apt update
sudo apt install mumble
</code>
====== Fotografía ======
===== Rawtherapee =====
Bajamos el AppImage desde la [[http://rawtherapee.com/|página web]] al directorio ''%%~/apps/rawtherapee%%''.
<code>
cd
chmod 744 RawTherapeexxxxxx.AppImage
./RawTherapeexxxxxx.AppImage
</code>
Al ejecutarla la primera vez ya se encarga la propia aplicación de integrarse en nuestro sistema.
===== Darktable =====
Instalamos ppa:
<code>
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/graphics:/darktable/xUbuntu_18.04/ /' > /etc/apt/sources.list.d/graphics:darktable.list"
wget -nv https://download.opensuse.org/repositories/graphics:darktable/xUbuntu_18.04/Release.key -O Release.key
sudo apt-key add - < Release.key
sudo apt update
sudo apt install darktable
</code>
Se instala la última versión de Darktable (3.0.0)
====== Seguridad ======
===== Autenticación en servidores por clave pública =====
Generar contraseñas para conexión servidores remotos:
<code>
cd ~
ssh-keygen -b 4096 [-t dsa | ecdsa | ed25519 | rsa | rsa1]
cat .ssh/
</code>
Solo resta añadir nuestra clave pública en el fichero ''%%authorized_keys%%'' del servidor remoto.
<code>
cat ~/.ssh/id_xxx.pub | ssh user@hostname 'cat >> .ssh/authorized_keys'
</code>
[[https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process|¿Cómo funciona esto?]]
===== Claves gpg =====
''%%gpg --gen-key%%'' Para generar nuestra clave.
* **Siempre** hay que ponerle una fecha de expiración, la puedes cambiar más tarde.
* **Siempre** hay que escoger la máxima longitud posible
===== Seahorse =====
Para manejar todas nuestras claves con comodidad:
''%%sudo apt install seahorse%%''
===== Conexión a github con claves ssh =====
Usando este método podemos conectarnos a github sin tener que teclear la contraseña en cada conexión.
==== Claves ssh ====
Podemos echar un ojo a nuestras claves desde ''%%seahorse%%'' la aplicación de gestión de claves que hemos instalado. También podemos ver las claves que tenemos generadas:
<code>
ls -al ~/.ssh
</code>
En las claves listadas nuestras claves públicas aparecerán con extensión ''%%.pub%%''
También podemos comprobar que claves hemos añadido ya a nuestro agente ssh con:
<code>
ssh-add -l
</code>
Para generar una nueva pareja de claves ssh:
<code>
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
</code>
Podremos dar un nombre distintivo a los ficheros de claves generados y poner una contraseña adecuada a la clave. Si algún dia queremos cambiar la contraseña:
<code>
ssh-keygen -p
</code>
Ahora tenemos que añadir nuestra clave ssh en nuestra cuenta de github, para ello editamos con nuestro editor de texto favorito el fichero ''%%~/.ssh/id_rsa.pub%%'' y copiamos el contenido integro. Después pegamos ese contenido en el cuadro de texto de la web de github.
Para comprobar que las claves instaladas en github funcionan correctamente:
<code>
ssh -T git@github.com
Hi salvari! You've successfully authenticated, but GitHub does not provide shell access.
</code>
Este mensaje indica que todo ha ido bien.
Ahora en los repos donde queramos usar ssh debemos cambiar el remote:
<code>
git remote set-url origin git@github.com:$USER/$REPONAME.git
</code>
===== Signal =====
El procedimiento recomendado en la página oficial:
<code>
curl -s https://updates.signal.org/desktop/apt/keys.asc | sudo apt-key add -
echo "deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main" | sudo tee -a /etc/apt/sources.list.d/signal-xenial.list
sudo apt update && sudo apt install signal-desktop
</code>
----
**NOTA**: Parece que no funciona. Lo he instalado via //flatpack//
----
===== Lector DNI electrónico =====
Instalamos:
<code>
sudo apt-get install pcscd pcsc-tools libccid
</code>
Como root ejecutamos pcsc_scan:
<code>
root@rasalhague:~# pcsc_scan
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.8.11
Using reader plug'n play mechanism
Scanning present readers...
Waiting for the first reader...
</code>
Si insertamos el lector veremos algo como esto:
<code>
root@rasalhague:~# pcsc_scan
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.8.11
Using reader plug'n play mechanism
Scanning present readers...
Waiting for the first reader...found one
Scanning present readers...
0: C3PO LTC31 v2 (11061005) 00 00
Wed Jan 25 01:17:20 2017
Reader 0: C3PO LTC31 v2 (11061005) 00 00
Card state: Card removed,
</code>
Si insertamos un DNI veremos que se lee la información de la tarjeta insertada:
<code>
Reader 0: C3PO LTC31 v2 (11061005) 00 00
Card state: Card inserted,
</code>
y mas rollo
Instalamos ahora el modulo criptográfico desde [[https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112|este enlace]]
Y además:
<code>
aptitude install pinentry-gtk2 opensc
</code>
====== Virtualizaciones y contenedores ======
===== Instalación de virtualBox =====
Lo hacemos con los origenes de software oficiales (alternativamente, podríamos hacerlo manualmente):
<code>
# Importamos la clave gpg
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
# Añadimos el nuevo origen de software
sudo add-apt-repository "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(. /etc/os-release; echo "$UBUNTU_CODENAME") contrib"
# Actualizamos la base de datos de paquetes
sudo apt update
</code>
Ahora podemos comprobar que además del paquete //virtualbox// tenemos varios paquetes con número de versión (p.ej. _virtualbox.6.1), estos últimos son los que hemos añadido (compruebalo con ''%%apt-cache policy [nombrepaquete]%%'')
Instalamos el que nos interesa:
<code>
sudo apt install virtualbox-6.1
</code>
Descargamos también el [[https://www.virtualbox.org/wiki/Downloads|VirtualBox Extension Pack]], este paquete lo instalaremos desde el propio interfaz de usuario del //VirtualBox//. Y lo instalamos con el comando:
<code>
sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-6.1.2.vbox-extpack
</code>
Sólo nos queda añadir nuestro usuario al grupo ''%%vboxusers%%'', con el comando ''%%sudo gpasswd -a username vboxusers%%'', y tendremos que cerrar la sesión para refrescar nuestros grupos.
===== qemu =====
Instalamos desde el repo oficial:
<code>
sudo apt install qemu-kvm qemu virt-manager virt-viewer libvirt-bin
</code>
===== Docker =====
Tenemos que añadir el repositorio correspondiente a nuestra distribución:
<code>
# Be safe
sudo apt remove docker docker-engine docker.io
sudo apt autoremove
sudo apt update
# Install pre-requisites
sudo apt install ca-certificates curl
# Import the GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# Next, point the package manager to the official Docker repository
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(. /etc/os-release; echo "$UBUNTU_CODENAME") stable"
# Update the package database
sudo apt update
#
apt-cache policy docker-ce
sudo apt install docker-ce
sudo gpasswd -a salvari docker
</code>
Esto dejará el servicio //docker// funcionando y habilitado (arrancará en cada reinicio del ordenador)
La forma de pararlo es:
<code>
sudo systemctl stop docker
sudo systemctl disable docker
systemctl status docker
</code>
Añadimos el //bundle// **docker** en nuestro fichero ''%%~/.zshrc%%'' para tener autocompletado en comandos de docker.
Para usar //docker// tendremos que arrancarlo, con los alias de nuestro sistema para //systemd// ejecutamos:
<code>
scst docker # para arrancar el servicio
scsp docker # para parar el servicio
</code>
==== docker-compose ====
* Nos bajamos la última versión disponible de [[https://github.com/docker/compose/releases|las releases de github]]
* Movemos el fichero que hemos descargado a ''%%/usr/local/bin/docker-compose%%''
* Y le damos permisos de ejecución ''%%sudo chmod +x /usr/local/bin/docker-compose%%''
====== Utilidades para mapas y cartografía ======
===== josm =====
Descargamos y añadimos la clave gpg:
<code>
wget -q https://josm.openstreetmap.de/josm-apt.key -O- | sudo apt-key add -
</code>
Añadimos el origen de software:
<code>
sudo add-apt-repository "deb [arch=amd64] https://josm.openstreetmap.de/apt $(. /etc/os-release; echo "$UBUNTU_CODENAME") universe"
</code>
Y ahora procedemos a la instalación:
<code>
sudo apt update
sudo apt install openjfx josm
</code>
Alternativamente también podemos instalar la versión “nightly” con el siguienete comando, pero tendréis actualizaciones diarias:
<code>
sudo apt josm-latest
</code>
Ya estamos listos para editar Open Street Map offline.
===== MOBAC =====
Bajamos el paquete desde [[http://mobac.sourceforge.net/|la página web]] y descomprimimos en ''%%~/apps/mobac%%'' como de costumbre nos creamos una entrada de menú con //MenuLibre//.
Conviene bajarse wms adicionales para MOBAC y leerse [[http://mobac.sourceforge.net/wiki/index.php/Custom_XML_Map_Sources|la wiki]]
==== Referencias ====
*[Cartografía digital] (https:%%//%%digimapas.blogspot.com.es/2015/01/oruxmaps-vii-mapas-de-mobac.html)
===== QGIS =====
Añadimos la clave gpg:
<code>
wget -q https://qgis.org/downloads/qgis-2017.gpg.key -O- | sudo apt-key add -
</code>
Ejecutamos:
<code>
sudo add-apt-repository "deb [arch=amd64] https://qgis.org/debian $(. /etc/os-release; echo "$UBUNTU_CODENAME") main"
</code>
E instalamos como siempre
<code>
sudo apt update
sudo apt install qgis
</code>
==== Referencias ====
* [[https://mappinggis.com/2015/09/como-conectar-con-servicios-wms-y-wfs-con-arcgis-qgis-y-gvsig/|Conectar WMS con QGIS]]
* [[https://www.altergeosistemas.com/blog/2014/03/28/importando-datos-de-osm-en-qgis-2/|Importar OSM en QGIS]]
* [[http://learnosm.org/es/osm-data/osm-in-qgis/|Learn OSM]]
* [[http://www.qgistutorials.com/es/docs/downloading_osm_data.html|QGIS Tutorials]]
====== Recetas variadas ======
===== Solucionar problemas de menús duplicados usando menulibre =====
|**Nota**: Ya no uso //MenuLibre// |
En el directorio ''%%~/.config/menus/applications-merged%%'' borramos todos los ficheros que haya.
===== Formatear memoria usb =====
“The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.”
Este comando borró todas las particiones de la memoria:
''%%sudo dd if=/dev/zero of=/dev/sdd bs=2048 count=32 && sync%%''
Im assuming your using gparted.
First delete whatever partitions you can…just keep pressing ignore.
There will be one with a black outline…you will have to unmount it…just right click on it and unmount.
Again you will have to click your way through ignore..if fix is an option choose it also.
Once all this is done… you can select the device menu and choose new partition table.
Select MSdos
Apply and choose ignore again.
Once its done it show its real size.
Next you can format the drive to whichever file system you like.
Its a pain in the behind this way, but its the only way I get it done..I put live isos on sticks all the time and have to remove them. I get stuck going through this process every time.
===== Copiar la clave pública ssh en un servidor remoto =====
''%%cat /home/tim/.ssh/id_rsa.pub | ssh tim@just.some.other.server 'cat >> .ssh/authorized_keys'%%''
O también:
''%%ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote.server%%''
===== ssh access from termux =====
https://linuxconfig.org/ssh-into-linux-your-computer-from-android-with-termux
===== SDR instalaciones varias =====
Vamos a trastear con un dispositivo [[https://www.rtl-sdr.com/|RTL-SDR.com]].
Tenemos un montón de información en el blog de [[https://sdrgal.wordpress.com/|SDR Galicia]] y tienen incluso una guia de instalación muy completa, pero yo voy a seguir una guía un poco menos ambiciosa, por lo menos hasta que pueda hacer el curso que imparten ellos mismos (SDR Galicia)
La guía en cuestión la podemos encontrar [[https://ranous.wordpress.com/rtl-sdr4linux/|aquí]]
Seguimos los pasos de instalación:
* La instalación de ''%%git%%'', ''%%cmake%%'' y ''%%build-essential%%'' ya la tengo hecha.
<code>
sudo apt-get install libusb-1.0-0-dev
</code>
===== Posible problema con modemmanager y micros programables =====
Programando el //Circuit Playground Express// con el //Arduino IDE// tenía problemas continuos para hacer los //uploads//, al parecer el servicio //ModemManager// es el culpable, se pasa todo el tiempo capturando los nuevos puertos serie por que considera que todo es un modem.
Una prueba rápida para comprobarlo: ''%%sudo systemctl stop ModemManager%%''
Con esto funciona todo bien, pero en el siguiente arranque volvera a cargarse.
Para dar una solución definitiva se puede programar una regla para impedir que el //ModemManager// capture el puerto con un dispositivo
Creamos un fichero con permisos de ''%%root%%'' en el directorio ''%%/etc/udev/rules.d%%'' que llamaremos: ''%%99-arduino.rules%%''
Dentro de ese fichero especificamos los codigos VID/PID que se deben ignorar:
<code>
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}=="1b4f", ENV{ID_MM_DEVICE_IGNORE}="1"
</code>
Ojo que si tienes SystemV no va a funcionar.
https:%%//%%starter-kit.nettigo.eu/2015/serial-port-busy-for-avrdude-on-ubuntu-with-arduino-leonardo-eth/
https:%%//%%www.codeproject.com/Tips/349002/Select-a-USB-Serial-Device-via-its-VID-PID
===== Programar los nanos con chip ch340 o ch341 =====
Linux mapea el chip correctamente en un puerto ''%%/dev/ttyUSB0%%'' y con eso basta, que no te lien con el cuento de “drivers para linux”
Todo lo que hace falta es configurar correctamente el //Arduino IDE//, hay que escoger:
<code>
Board: "Arduino Nano"
Processor: "ATmega168"
Port: "/dev/ttyUSB0"
</code>
Y ya funciona todo.

Binary file not shown.

@ -17,6 +17,8 @@ Esta tarjeta provocaba todo tipo de problemas de sobrecalientamiento, pero en la
Linux Mint incluye <code>sudo</code> <ref>ya no incluye gksu pero tampoco es imprescindible</ref> y las aplicaciones que uso habitualmente para gestión de paquetes por defecto (''aptitude'' y ''synaptic'').
Interesa tener instalado <code>sudo apt install ppa-purge</code>. Sirve para eliminar ppas junto con los programas instalados desde ese ppa.
Tampoco voy a enredar nada con los orígenes del software (de momento)
== Firmware ==
@ -1378,4 +1380,571 @@ Instalamos dependencias:
<pre class="{bash}">pip install python-usb</pre>
Instalamos el fichero <code>.deb</code> desde la web https://github.com/fablabnbg/inkscape-silhouette/releases
= Aplicaciones de gráficos =
== LibreCAD ==
Diseño en 2D
<pre>sudo apt install librecad</pre>
== FreeCAD ==
No hay ppa disponible para Ubuntu 20.
Instalamos ''AppImage'' desde [https://wiki.freecadweb.org/AppImage#FreeCAD_AppImages aquí]
Dejo la instalación desde ppa como recordatorio.
<pre>sudo add-apt-repository ppa:freecad-maintainers/freecad-stable
sudo apt update
sudo install freecad</pre>
-----
'''NOTA:''' the ccx package brings CalculiX support to the FEM workbench, and needs to be installed separately.
-----
== Inkscape ==
El programa libre para creación y edición de gráficos vectoriales.
<pre>sudo add-apt-repository ppa:inkscape.dev/stable
sudo apt update
sudo apt install inkscape</pre>
== Gimp ==
El programa para edición y retocado de imágenes.
Parece que ahora mismo los repos están más actualizados que el ppa. Así que bastaría con:
<pre class="{bash}">sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic</pre>
De todas formas dejo aquí las instrucciones para instalar desde el ppa por si hacen falta algún dia:
<pre>sudo apt remove gimp gimp-data
sudo add-apt-repository ppa:otto-kesselgulasch/gimp
sudo apt update
sudo apt upgrade
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic gimp-python</pre>
=== Plugins de Gimp ===
Para instalar los principales plugins basta con:
<pre>sudo apt install gimp-plugin-registry</pre>
{|
|width="98%"| Esta sección ya no está vigente
|-
| #### resynthesizer
|-
| Descargamos el plugin desde [https://github.com/bootchk/resynthesizer aquí] y descomprimimos el fichero en <code>~/.config/GIMP/2.10/plug-ins</code>
|-
| Tenemos que asegurarnos que los fichero ''python'' son ejecutables:
|-
| ~~~~ chmod 755 ~/.config/GIMP/2.10/plug-ins/*.py ~~~~
|}
== Krita ==
La versión disponible en orígenes de software está bastante por detrás de la disponible en la web. Basta con descargar el ''Appimage'' desde la [https://krita.org página web]
Lo copiamos a <code>~/apps/krita</code> y creamos un lanzador con el editor de menús.
Alternativamente también lo tenemos disponible por ppa en https://launchpad.net/~kritalime/+archive/ubuntu/ppa
== MyPaint ==
Desde el [https://github.com/mypaint/ github] tenemos disponible la última versión en formato ''appimage''. La descargamos la dejamos en <code>~/apps</code> y creamos un acceso con ''Menulibre'', como siempre.
== Alchemy ==
Igual que el ''MyPaint'' descargamos desde [http://al.chemy.org la página web], descomprimimos en <code>~/apps</code> y creamos un accso con ''Menulibre''.
== Capturas de pantalla ==
El [https://flameshot.js.org/#/ ''flameshot''] cubre el 99% de mis necesidades: <code>sudo apt install flameshot</code>
El [https://github.com/DamirPorobic/ksnip ''ksnip''] por si tenemos que hacer una captura con retardo lo instalé con un ''appimage''.
Shutter vuelve a estar disponible, al instalar desde este ppa ya queda con las opciones de edición habilitadas:
<pre class="{bash}">sudo add-apt-repository ppa:linuxuprising/shutter
sudo apt update
sudo apt install shutter</pre>
== Reoptimizar imágenes ==
=== ImageMagick ===
Instalamos desde los repos, simplemente:
<pre>sudo apt install imagemagick</pre>
=== Imagine ===
Nos bajamos un ''AppImage'' desde el [https://github.com/meowtec/Imagine/releases github] de la aplicación
== dia ==
Un programa para crear diagramas
<pre>sudo apt install dia dia-shapes gsfonts-x11</pre>
== Blender ==
Bajamos el Blender linkado estáticamente de [https://www.blender.org la página web] y lo descomprimimos en <code>~/apps/blender</code>.
== Structure Synth ==
Instalado desde repos, junto con sunflow para explorar un poco.
<pre>sudo apt install structure-synth sunflow</pre>
== Heron animation ==
Descargamos el programa desde [https://heronanimation.brunolefevre.net/ su página web] y como siempre descomprimimos en <code>~/apps/heron</code>
== Stopmotion ==
Primero probamos el del repo: <code>sudo apt install stopmotion</code>
== Instalación del driver digiment para tabletas gráficas Huion ==
He intentado un par de veces instalar con el fichero <code>deb</code> pero parece que no funciona.
Para hacer la instalación via DKMS el truco está en:
* Dejar el código fuente en un directorio de la forma <code>/usr/src/&lt;PROJECTNAME&gt;-&lt;VERSION&gt;</code>
* Lanzar el <code>build</code> pero usando esta vez <code>&lt;PROJECTNAME&gt;/&lt;VERSION&gt;</code>
Descargamos los últimos drivers desde [https://github.com/DIGImend/digimend-kernel-drivers/releases la página oficial de releases], en el momento de escribir esto descargamos la versión V9.
Descomprimimos en <code>/usr/src/digimend-9</code>
<pre class="{bash}">cd /usr/src
sudo xvzf &lt;path-to-digimend-kernel-drivers-9&gt; .
sudo dkms build digimend-kernel-drivers/9
sudo dkms install digimend/9</pre>
Para comprobar:
<pre>xinput --list
dkms status</pre>
Referencia:
* [https://davidrevoy.com/article331/setup-huion-giano-wh1409-tablet-on-linux-mint-18-1-ubuntu-16-04 Aquí]
= Sonido =
== Spotify ==
Spotify instalado desde las opciones de Linux Mint
== Audacity ==
Añadimos ppa:
<pre>sudo add-apt-repository ppa:ubuntuhandbook1/audacity
sudo apt-get update
sudo apt install audacity</pre>
Instalamos también el plugin [https://theaudacitytopodcast.com/chriss-dynamic-compressor-plugin-for-audacity/ Chriss Dynamic Compressor plugin]
== Clementine ==
La version disponible en los orígenes de software parece al dia:
<pre>sudo apt install clementine</pre>
= Video =
== Shotcut ==
Nos bajamos la ''AppImage'' para Linux desde la [https://www.shotcut.org/ página web].
La dejamos en <code>~/apps/shotcut</code> y:
<pre>cd
chmod 744 Shotcutxxxxxx.AppImage
./Shotcutxxxxxx.AppImage</pre>
== kdenlive ==
Está disponible como ppa o como ''appimage''. Lo he bajado como ''appimage'' para probarlo.
== Openshot ==
También descargado desde su web como ''appimage''.
== Grabación de screencast ==
=== Vokoscreen y Kazam ===
Instalados desde los repos oficiales:
<pre>sudo apt update
sudo apt install vokoscreen kazam</pre>
== Grabación de podcast ==
=== Mumble ===
Instalamos desde PPA
<pre>sudo add-apt-repository ppa:mumble/release
sudo apt update
sudo apt install mumble</pre>
= Fotografía =
== Rawtherapee ==
Bajamos el AppImage desde la [http://rawtherapee.com/ página web] al directorio <code>~/apps/rawtherapee</code>.
<pre>cd
chmod 744 RawTherapeexxxxxx.AppImage
./RawTherapeexxxxxx.AppImage</pre>
Al ejecutarla la primera vez ya se encarga la propia aplicación de integrarse en nuestro sistema.
== Darktable ==
Instalamos ppa:
<pre>sudo sh -c &quot;echo 'deb http://download.opensuse.org/repositories/graphics:/darktable/xUbuntu_18.04/ /' &gt; /etc/apt/sources.list.d/graphics:darktable.list&quot;
wget -nv https://download.opensuse.org/repositories/graphics:darktable/xUbuntu_18.04/Release.key -O Release.key
sudo apt-key add - &lt; Release.key
sudo apt update
sudo apt install darktable</pre>
Se instala la última versión de Darktable (3.0.0)
= Seguridad =
== Autenticación en servidores por clave pública ==
Generar contraseñas para conexión servidores remotos:
<pre>cd ~
ssh-keygen -b 4096 [-t dsa | ecdsa | ed25519 | rsa | rsa1]
cat .ssh/</pre>
Solo resta añadir nuestra clave pública en el fichero <code>authorized_keys</code> del servidor remoto.
<pre>cat ~/.ssh/id_xxx.pub | ssh user@hostname 'cat &gt;&gt; .ssh/authorized_keys'</pre>
[https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process ¿Cómo funciona esto?]
== Claves gpg ==
<code>gpg --gen-key</code> Para generar nuestra clave.
* '''Siempre''' hay que ponerle una fecha de expiración, la puedes cambiar más tarde.
* '''Siempre''' hay que escoger la máxima longitud posible
== Seahorse ==
Para manejar todas nuestras claves con comodidad:
<code>sudo apt install seahorse</code>
== Conexión a github con claves ssh ==
Usando este método podemos conectarnos a github sin tener que teclear la contraseña en cada conexión.
=== Claves ssh ===
Podemos echar un ojo a nuestras claves desde <code>seahorse</code> la aplicación de gestión de claves que hemos instalado. También podemos ver las claves que tenemos generadas:
<pre>ls -al ~/.ssh</pre>
En las claves listadas nuestras claves públicas aparecerán con extensión <code>.pub</code>
También podemos comprobar que claves hemos añadido ya a nuestro agente ssh con:
<pre>ssh-add -l</pre>
Para generar una nueva pareja de claves ssh:
<pre>ssh-keygen -t rsa -b 4096 -C &quot;your_email@example.com&quot;</pre>
Podremos dar un nombre distintivo a los ficheros de claves generados y poner una contraseña adecuada a la clave. Si algún dia queremos cambiar la contraseña:
<pre>ssh-keygen -p</pre>
Ahora tenemos que añadir nuestra clave ssh en nuestra cuenta de github, para ello editamos con nuestro editor de texto favorito el fichero <code>~/.ssh/id_rsa.pub</code> y copiamos el contenido integro. Después pegamos ese contenido en el cuadro de texto de la web de github.
Para comprobar que las claves instaladas en github funcionan correctamente:
<pre>ssh -T git@github.com
Hi salvari! You've successfully authenticated, but GitHub does not provide shell access.</pre>
Este mensaje indica que todo ha ido bien.
Ahora en los repos donde queramos usar ssh debemos cambiar el remote:
<pre>git remote set-url origin git@github.com:$USER/$REPONAME.git</pre>
== Signal ==
El procedimiento recomendado en la página oficial:
<pre>curl -s https://updates.signal.org/desktop/apt/keys.asc | sudo apt-key add -
echo &quot;deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main&quot; | sudo tee -a /etc/apt/sources.list.d/signal-xenial.list
sudo apt update &amp;&amp; sudo apt install signal-desktop</pre>
-----
'''NOTA''': Parece que no funciona. Lo he instalado via ''flatpack''
-----
== Lector DNI electrónico ==
Instalamos:
<pre>sudo apt-get install pcscd pcsc-tools libccid</pre>
Como root ejecutamos pcsc_scan:
<pre>root@rasalhague:~# pcsc_scan
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau &lt;ludovic.rousseau@free.fr&gt;
Compiled with PC/SC lite version: 1.8.11
Using reader plug'n play mechanism
Scanning present readers...
Waiting for the first reader...</pre>
Si insertamos el lector veremos algo como esto:
<pre>root@rasalhague:~# pcsc_scan
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau &lt;ludovic.rousseau@free.fr&gt;
Compiled with PC/SC lite version: 1.8.11
Using reader plug'n play mechanism
Scanning present readers...
Waiting for the first reader...found one
Scanning present readers...
0: C3PO LTC31 v2 (11061005) 00 00
Wed Jan 25 01:17:20 2017
Reader 0: C3PO LTC31 v2 (11061005) 00 00
Card state: Card removed,</pre>
Si insertamos un DNI veremos que se lee la información de la tarjeta insertada:
<pre>Reader 0: C3PO LTC31 v2 (11061005) 00 00
Card state: Card inserted, </pre>
y mas rollo
Instalamos ahora el modulo criptográfico desde [https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112 este enlace]
Y además:
<pre>aptitude install pinentry-gtk2 opensc</pre>
= Virtualizaciones y contenedores =
== Instalación de ''virtualBox'' ==
Lo hacemos con los origenes de software oficiales (alternativamente, podríamos hacerlo manualmente):
<pre># Importamos la clave gpg
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
# Añadimos el nuevo origen de software
sudo add-apt-repository &quot;deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(. /etc/os-release; echo &quot;$UBUNTU_CODENAME&quot;) contrib&quot;
# Actualizamos la base de datos de paquetes
sudo apt update</pre>
Ahora podemos comprobar que además del paquete ''virtualbox'' tenemos varios paquetes con número de versión (p.ej. _virtualbox.6.1), estos últimos son los que hemos añadido (compruebalo con <code>apt-cache policy [nombrepaquete]</code>)
Instalamos el que nos interesa:
<pre class="{bash}">sudo apt install virtualbox-6.1</pre>
Descargamos también el [https://www.virtualbox.org/wiki/Downloads VirtualBox Extension Pack], este paquete lo instalaremos desde el propio interfaz de usuario del ''VirtualBox''. Y lo instalamos con el comando:
<pre>sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-6.1.2.vbox-extpack </pre>
Sólo nos queda añadir nuestro usuario al grupo <code>vboxusers</code>, con el comando <code>sudo gpasswd -a username vboxusers</code>, y tendremos que cerrar la sesión para refrescar nuestros grupos.
== qemu ==
Instalamos desde el repo oficial:
<pre>sudo apt install qemu-kvm qemu virt-manager virt-viewer libvirt-bin</pre>
== Docker ==
Tenemos que añadir el repositorio correspondiente a nuestra distribución:
<pre># Be safe
sudo apt remove docker docker-engine docker.io
sudo apt autoremove
sudo apt update
# Install pre-requisites
sudo apt install ca-certificates curl
# Import the GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# Next, point the package manager to the official Docker repository
sudo add-apt-repository &quot;deb [arch=amd64] https://download.docker.com/linux/ubuntu $(. /etc/os-release; echo &quot;$UBUNTU_CODENAME&quot;) stable&quot;
# Update the package database
sudo apt update
#
apt-cache policy docker-ce
sudo apt install docker-ce
sudo gpasswd -a salvari docker</pre>
Esto dejará el servicio ''docker'' funcionando y habilitado (arrancará en cada reinicio del ordenador)
La forma de pararlo es:
<pre class="{bash}">sudo systemctl stop docker
sudo systemctl disable docker
systemctl status docker</pre>
Añadimos el ''bundle'' '''docker''' en nuestro fichero <code>~/.zshrc</code> para tener autocompletado en comandos de docker.
Para usar ''docker'' tendremos que arrancarlo, con los alias de nuestro sistema para ''systemd'' ejecutamos:
<pre class="{bash}">scst docker # para arrancar el servicio
scsp docker # para parar el servicio</pre>
=== docker-compose ===
* Nos bajamos la última versión disponible de [https://github.com/docker/compose/releases las releases de github]
* Movemos el fichero que hemos descargado a <code>/usr/local/bin/docker-compose</code>
* Y le damos permisos de ejecución <code>sudo chmod +x /usr/local/bin/docker-compose</code>
= Utilidades para mapas y cartografía =
== josm ==
Descargamos y añadimos la clave gpg:
<pre>wget -q https://josm.openstreetmap.de/josm-apt.key -O- | sudo apt-key add -</pre>
Añadimos el origen de software:
<pre>sudo add-apt-repository &quot;deb [arch=amd64] https://josm.openstreetmap.de/apt $(. /etc/os-release; echo &quot;$UBUNTU_CODENAME&quot;) universe&quot;</pre>
Y ahora procedemos a la instalación:
<pre>sudo apt update
sudo apt install openjfx josm </pre>
Alternativamente también podemos instalar la versión “nightly” con el siguienete comando, pero tendréis actualizaciones diarias:
<pre>sudo apt josm-latest</pre>
Ya estamos listos para editar Open Street Map offline.
== MOBAC ==
Bajamos el paquete desde [http://mobac.sourceforge.net/ la página web] y descomprimimos en <code>~/apps/mobac</code> como de costumbre nos creamos una entrada de menú con ''MenuLibre''.
Conviene bajarse wms adicionales para MOBAC y leerse [http://mobac.sourceforge.net/wiki/index.php/Custom_XML_Map_Sources la wiki]
=== Referencias ===
*[Cartografía digital] (https://digimapas.blogspot.com.es/2015/01/oruxmaps-vii-mapas-de-mobac.html)
== QGIS ==
Añadimos la clave gpg:
<pre>wget -q https://qgis.org/downloads/qgis-2017.gpg.key -O- | sudo apt-key add -</pre>
Ejecutamos:
<pre>sudo add-apt-repository &quot;deb [arch=amd64] https://qgis.org/debian $(. /etc/os-release; echo &quot;$UBUNTU_CODENAME&quot;) main&quot;</pre>
E instalamos como siempre
<pre>sudo apt update
sudo apt install qgis</pre>
=== Referencias ===
* [https://mappinggis.com/2015/09/como-conectar-con-servicios-wms-y-wfs-con-arcgis-qgis-y-gvsig/ Conectar WMS con QGIS]
* [https://www.altergeosistemas.com/blog/2014/03/28/importando-datos-de-osm-en-qgis-2/ Importar OSM en QGIS]
* [http://learnosm.org/es/osm-data/osm-in-qgis/ Learn OSM]
* [http://www.qgistutorials.com/es/docs/downloading_osm_data.html QGIS Tutorials]
= Recetas variadas =
== Solucionar problemas de menús duplicados usando menulibre ==
{|
| '''Nota''': Ya no uso ''MenuLibre''
|}
En el directorio <code>~/.config/menus/applications-merged</code> borramos todos los ficheros que haya.
== Formatear memoria usb ==
“The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.”
Este comando borró todas las particiones de la memoria:
<code>sudo dd if=/dev/zero of=/dev/sdd bs=2048 count=32 &amp;&amp; sync</code>
Im assuming your using gparted.
First delete whatever partitions you can…just keep pressing ignore.
There will be one with a black outline…you will have to unmount it…just right click on it and unmount.
Again you will have to click your way through ignore..if fix is an option choose it also.
Once all this is done… you can select the device menu and choose new partition table.
Select MSdos
Apply and choose ignore again.
Once its done it show its real size.
Next you can format the drive to whichever file system you like.
Its a pain in the behind this way, but its the only way I get it done..I put live isos on sticks all the time and have to remove them. I get stuck going through this process every time.
== Copiar la clave pública ssh en un servidor remoto ==
<code>cat /home/tim/.ssh/id_rsa.pub | ssh tim@just.some.other.server 'cat &gt;&gt; .ssh/authorized_keys'</code>
O también:
<code>ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote.server</code>
== ssh access from termux ==
https://linuxconfig.org/ssh-into-linux-your-computer-from-android-with-termux
== SDR instalaciones varias ==
Vamos a trastear con un dispositivo [https://www.rtl-sdr.com/ RTL-SDR.com].
Tenemos un montón de información en el blog de [https://sdrgal.wordpress.com/ SDR Galicia] y tienen incluso una guia de instalación muy completa, pero yo voy a seguir una guía un poco menos ambiciosa, por lo menos hasta que pueda hacer el curso que imparten ellos mismos (SDR Galicia)
La guía en cuestión la podemos encontrar [https://ranous.wordpress.com/rtl-sdr4linux/ aquí]
Seguimos los pasos de instalación:
* La instalación de <code>git</code>, <code>cmake</code> y <code>build-essential</code> ya la tengo hecha.
<pre>sudo apt-get install libusb-1.0-0-dev</pre>
== Posible problema con modemmanager y micros programables ==
Programando el ''Circuit Playground Express'' con el ''Arduino IDE'' tenía problemas continuos para hacer los ''uploads'', al parecer el servicio ''ModemManager'' es el culpable, se pasa todo el tiempo capturando los nuevos puertos serie por que considera que todo es un modem.
Una prueba rápida para comprobarlo: <code>sudo systemctl stop ModemManager</code>
Con esto funciona todo bien, pero en el siguiente arranque volvera a cargarse.
Para dar una solución definitiva se puede programar una regla para impedir que el ''ModemManager'' capture el puerto con un dispositivo
Creamos un fichero con permisos de <code>root</code> en el directorio <code>/etc/udev/rules.d</code> que llamaremos: <code>99-arduino.rules</code>
Dentro de ese fichero especificamos los codigos VID/PID que se deben ignorar:
<pre># for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}==&quot;2a03&quot;, ENV{ID_MM_DEVICE_IGNORE}=&quot;1&quot;
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}==&quot;1b4f&quot;, ENV{ID_MM_DEVICE_IGNORE}=&quot;1&quot;</pre>
Ojo que si tienes SystemV no va a funcionar.
https://starter-kit.nettigo.eu/2015/serial-port-busy-for-avrdude-on-ubuntu-with-arduino-leonardo-eth/
https://www.codeproject.com/Tips/349002/Select-a-USB-Serial-Device-via-its-VID-PID
== Programar los nanos con chip ch340 o ch341 ==
Linux mapea el chip correctamente en un puerto <code>/dev/ttyUSB0</code> y con eso basta, que no te lien con el cuento de “drivers para linux”
Todo lo que hace falta es configurar correctamente el ''Arduino IDE'', hay que escoger:
<pre>Board: &quot;Arduino Nano&quot;
Processor: &quot;ATmega168&quot;
Port: &quot;/dev/ttyUSB0&quot;</pre>
Y ya funciona todo.
<references />

Binary file not shown.

Binary file not shown.

@ -126,6 +126,9 @@ Linux Mint incluye \texttt{sudo} \footnote{ya no incluye gksu pero
para gestión de paquetes por defecto (\emph{aptitude} y
\emph{synaptic}).
Interesa tener instalado \texttt{sudo\ apt\ install\ ppa-purge}. Sirve
para eliminar ppas junto con los programas instalados desde ese ppa.
Tampoco voy a enredar nada con los orígenes del software (de momento)
\hypertarget{firmware}{%
@ -2350,4 +2353,945 @@ pip install python-usb
Instalamos el fichero \texttt{.deb} desde la web
\url{https://github.com/fablabnbg/inkscape-silhouette/releases}
\hypertarget{aplicaciones-de-gruxe1ficos}{%
\section{Aplicaciones de gráficos}\label{aplicaciones-de-gruxe1ficos}}
\hypertarget{librecad}{%
\subsection{LibreCAD}\label{librecad}}
Diseño en 2D
\begin{verbatim}
sudo apt install librecad
\end{verbatim}
\hypertarget{freecad}{%
\subsection{FreeCAD}\label{freecad}}
No hay ppa disponible para Ubuntu 20.
Instalamos \emph{AppImage} desde
\href{https://wiki.freecadweb.org/AppImage\#FreeCAD_AppImages}{aquí}
Dejo la instalación desde ppa como recordatorio.
\begin{verbatim}
sudo add-apt-repository ppa:freecad-maintainers/freecad-stable
sudo apt update
sudo install freecad
\end{verbatim}
\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center}
\textbf{NOTA:} the ccx package brings CalculiX support to the FEM
workbench, and needs to be installed separately.
\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center}
\hypertarget{inkscape}{%
\subsection{Inkscape}\label{inkscape}}
El programa libre para creación y edición de gráficos vectoriales.
\begin{verbatim}
sudo add-apt-repository ppa:inkscape.dev/stable
sudo apt update
sudo apt install inkscape
\end{verbatim}
\hypertarget{gimp}{%
\subsection{Gimp}\label{gimp}}
El programa para edición y retocado de imágenes.
Parece que ahora mismo los repos están más actualizados que el ppa. Así
que bastaría con:
\begin{verbatim}
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic
\end{verbatim}
De todas formas dejo aquí las instrucciones para instalar desde el ppa
por si hacen falta algún dia:
\begin{verbatim}
sudo apt remove gimp gimp-data
sudo add-apt-repository ppa:otto-kesselgulasch/gimp
sudo apt update
sudo apt upgrade
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic gimp-python
\end{verbatim}
\hypertarget{plugins-de-gimp}{%
\subsubsection{Plugins de Gimp}\label{plugins-de-gimp}}
Para instalar los principales plugins basta con:
\begin{verbatim}
sudo apt install gimp-plugin-registry
\end{verbatim}
\begin{longtable}[]{@{}l@{}}
\toprule
\endhead
\begin{minipage}[t]{0.96\columnwidth}\raggedright
Esta sección ya no está vigente\strut
\end{minipage}\tabularnewline
\begin{minipage}[t]{0.96\columnwidth}\raggedright
\#\#\#\# resynthesizer\strut
\end{minipage}\tabularnewline
\begin{minipage}[t]{0.96\columnwidth}\raggedright
Descargamos el plugin desde
\href{https://github.com/bootchk/resynthesizer}{aquí} y descomprimimos
el fichero en
\texttt{\textasciitilde{}/.config/GIMP/2.10/plug-ins}\strut
\end{minipage}\tabularnewline
\begin{minipage}[t]{0.96\columnwidth}\raggedright
Tenemos que asegurarnos que los fichero \emph{python} son
ejecutables:\strut
\end{minipage}\tabularnewline
\begin{minipage}[t]{0.96\columnwidth}\raggedright
\textasciitilde\textasciitilde\textasciitilde\textasciitilde{} chmod 755
\textasciitilde/.config/GIMP/2.10/plug-ins/*.py
\textasciitilde\textasciitilde\textasciitilde\textasciitilde{}\strut
\end{minipage}\tabularnewline
\bottomrule
\end{longtable}
\hypertarget{krita}{%
\subsection{Krita}\label{krita}}
La versión disponible en orígenes de software está bastante por detrás
de la disponible en la web. Basta con descargar el \emph{Appimage} desde
la \href{https://krita.org}{página web}
Lo copiamos a \texttt{\textasciitilde{}/apps/krita} y creamos un
lanzador con el editor de menús.
Alternativamente también lo tenemos disponible por ppa en
\url{https://launchpad.net/~kritalime/+archive/ubuntu/ppa}
\hypertarget{mypaint}{%
\subsection{MyPaint}\label{mypaint}}
Desde el \href{https://github.com/mypaint/}{github} tenemos disponible
la última versión en formato \emph{appimage}. La descargamos la dejamos
en \texttt{\textasciitilde{}/apps} y creamos un acceso con
\emph{Menulibre}, como siempre.
\hypertarget{alchemy}{%
\subsection{Alchemy}\label{alchemy}}
Igual que el \emph{MyPaint} descargamos desde
\href{http://al.chemy.org}{la página web}, descomprimimos en
\texttt{\textasciitilde{}/apps} y creamos un accso con \emph{Menulibre}.
\hypertarget{capturas-de-pantalla}{%
\subsection{Capturas de pantalla}\label{capturas-de-pantalla}}
El \href{https://flameshot.js.org/\#/}{\emph{flameshot}} cubre el 99\%
de mis necesidades: \texttt{sudo\ apt\ install\ flameshot}
El \href{https://github.com/DamirPorobic/ksnip}{\emph{ksnip}} por si
tenemos que hacer una captura con retardo lo instalé con un
\emph{appimage}.
Shutter vuelve a estar disponible, al instalar desde este ppa ya queda
con las opciones de edición habilitadas:
\begin{verbatim}
sudo add-apt-repository ppa:linuxuprising/shutter
sudo apt update
sudo apt install shutter
\end{verbatim}
\hypertarget{reoptimizar-imuxe1genes}{%
\subsection{Reoptimizar imágenes}\label{reoptimizar-imuxe1genes}}
\hypertarget{imagemagick}{%
\subsubsection{ImageMagick}\label{imagemagick}}
Instalamos desde los repos, simplemente:
\begin{verbatim}
sudo apt install imagemagick
\end{verbatim}
\hypertarget{imagine}{%
\subsubsection{Imagine}\label{imagine}}
Nos bajamos un \emph{AppImage} desde el
\href{https://github.com/meowtec/Imagine/releases}{github} de la
aplicación
\hypertarget{dia}{%
\subsection{dia}\label{dia}}
Un programa para crear diagramas
\begin{verbatim}
sudo apt install dia dia-shapes gsfonts-x11
\end{verbatim}
\hypertarget{blender}{%
\subsection{Blender}\label{blender}}
Bajamos el Blender linkado estáticamente de
\href{https://www.blender.org}{la página web} y lo descomprimimos en
\texttt{\textasciitilde{}/apps/blender}.
\hypertarget{structure-synth}{%
\subsection{Structure Synth}\label{structure-synth}}
Instalado desde repos, junto con sunflow para explorar un poco.
\begin{verbatim}
sudo apt install structure-synth sunflow
\end{verbatim}
\hypertarget{heron-animation}{%
\subsection{Heron animation}\label{heron-animation}}
Descargamos el programa desde
\href{https://heronanimation.brunolefevre.net/}{su página web} y como
siempre descomprimimos en \texttt{\textasciitilde{}/apps/heron}
\hypertarget{stopmotion}{%
\subsection{Stopmotion}\label{stopmotion}}
Primero probamos el del repo: \texttt{sudo\ apt\ install\ stopmotion}
\hypertarget{instalaciuxf3n-del-driver-digiment-para-tabletas-gruxe1ficas-huion}{%
\subsection{Instalación del driver digiment para tabletas gráficas
Huion}\label{instalaciuxf3n-del-driver-digiment-para-tabletas-gruxe1ficas-huion}}
He intentado un par de veces instalar con el fichero \texttt{deb} pero
parece que no funciona.
Para hacer la instalación via DKMS el truco está en:
\begin{itemize}
\tightlist
\item
Dejar el código fuente en un directorio de la forma
\texttt{/usr/src/\textless{}PROJECTNAME\textgreater{}-\textless{}VERSION\textgreater{}}
\item
Lanzar el \texttt{build} pero usando esta vez
\texttt{\textless{}PROJECTNAME\textgreater{}/\textless{}VERSION\textgreater{}}
\end{itemize}
Descargamos los últimos drivers desde
\href{https://github.com/DIGImend/digimend-kernel-drivers/releases}{la
página oficial de releases}, en el momento de escribir esto descargamos
la versión V9.
Descomprimimos en \texttt{/usr/src/digimend-9}
\begin{verbatim}
cd /usr/src
sudo xvzf <path-to-digimend-kernel-drivers-9> .
sudo dkms build digimend-kernel-drivers/9
sudo dkms install digimend/9
\end{verbatim}
Para comprobar:
\begin{verbatim}
xinput --list
dkms status
\end{verbatim}
Referencia:
\begin{itemize}
\tightlist
\item
\href{https://davidrevoy.com/article331/setup-huion-giano-wh1409-tablet-on-linux-mint-18-1-ubuntu-16-04}{Aquí}
\end{itemize}
\hypertarget{sonido}{%
\section{Sonido}\label{sonido}}
\hypertarget{spotify}{%
\subsection{Spotify}\label{spotify}}
Spotify instalado desde las opciones de Linux Mint
\hypertarget{audacity}{%
\subsection{Audacity}\label{audacity}}
Añadimos ppa:
\begin{verbatim}
sudo add-apt-repository ppa:ubuntuhandbook1/audacity
sudo apt-get update
sudo apt install audacity
\end{verbatim}
Instalamos también el plugin
\href{https://theaudacitytopodcast.com/chriss-dynamic-compressor-plugin-for-audacity/}{Chris's
Dynamic Compressor plugin}
\hypertarget{clementine}{%
\subsection{Clementine}\label{clementine}}
La version disponible en los orígenes de software parece al dia:
\begin{verbatim}
sudo apt install clementine
\end{verbatim}
\hypertarget{video}{%
\section{Video}\label{video}}
\hypertarget{shotcut}{%
\subsection{Shotcut}\label{shotcut}}
Nos bajamos la \emph{AppImage} para Linux desde la
\href{https://www.shotcut.org/}{página web}.
La dejamos en \texttt{\textasciitilde{}/apps/shotcut} y:
\begin{verbatim}
cd
chmod 744 Shotcutxxxxxx.AppImage
./Shotcutxxxxxx.AppImage
\end{verbatim}
\hypertarget{kdenlive}{%
\subsection{kdenlive}\label{kdenlive}}
Está disponible como ppa o como \emph{appimage}. Lo he bajado como
\emph{appimage} para probarlo.
\hypertarget{openshot}{%
\subsection{Openshot}\label{openshot}}
También descargado desde su web como \emph{appimage}.
\hypertarget{grabaciuxf3n-de-screencast}{%
\subsection{Grabación de screencast}\label{grabaciuxf3n-de-screencast}}
\hypertarget{vokoscreen-y-kazam}{%
\subsubsection{Vokoscreen y Kazam}\label{vokoscreen-y-kazam}}
Instalados desde los repos oficiales:
\begin{verbatim}
sudo apt update
sudo apt install vokoscreen kazam
\end{verbatim}
\hypertarget{grabaciuxf3n-de-podcast}{%
\subsection{Grabación de podcast}\label{grabaciuxf3n-de-podcast}}
\hypertarget{mumble}{%
\subsubsection{Mumble}\label{mumble}}
Instalamos desde PPA
\begin{verbatim}
sudo add-apt-repository ppa:mumble/release
sudo apt update
sudo apt install mumble
\end{verbatim}
\hypertarget{fotografuxeda}{%
\section{Fotografía}\label{fotografuxeda}}
\hypertarget{rawtherapee}{%
\subsection{Rawtherapee}\label{rawtherapee}}
Bajamos el AppImage desde la \href{http://rawtherapee.com/}{página web}
al directorio \texttt{\textasciitilde{}/apps/rawtherapee}.
\begin{verbatim}
cd
chmod 744 RawTherapeexxxxxx.AppImage
./RawTherapeexxxxxx.AppImage
\end{verbatim}
Al ejecutarla la primera vez ya se encarga la propia aplicación de
integrarse en nuestro sistema.
\hypertarget{darktable}{%
\subsection{Darktable}\label{darktable}}
Instalamos ppa:
\begin{verbatim}
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/graphics:/darktable/xUbuntu_18.04/ /' > /etc/apt/sources.list.d/graphics:darktable.list"
wget -nv https://download.opensuse.org/repositories/graphics:darktable/xUbuntu_18.04/Release.key -O Release.key
sudo apt-key add - < Release.key
sudo apt update
sudo apt install darktable
\end{verbatim}
Se instala la última versión de Darktable (3.0.0)
\hypertarget{seguridad}{%
\section{Seguridad}\label{seguridad}}
\hypertarget{autenticaciuxf3n-en-servidores-por-clave-puxfablica}{%
\subsection{Autenticación en servidores por clave
pública}\label{autenticaciuxf3n-en-servidores-por-clave-puxfablica}}
Generar contraseñas para conexión servidores remotos:
\begin{verbatim}
cd ~
ssh-keygen -b 4096 [-t dsa | ecdsa | ed25519 | rsa | rsa1]
cat .ssh/
\end{verbatim}
Solo resta añadir nuestra clave pública en el fichero
\texttt{authorized\_keys} del servidor remoto.
\begin{verbatim}
cat ~/.ssh/id_xxx.pub | ssh user@hostname 'cat >> .ssh/authorized_keys'
\end{verbatim}
\href{https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process}{¿Cómo
funciona esto?}
\hypertarget{claves-gpg}{%
\subsection{Claves gpg}\label{claves-gpg}}
\texttt{gpg\ -\/-gen-key} Para generar nuestra clave.
\begin{itemize}
\tightlist
\item
\textbf{Siempre} hay que ponerle una fecha de expiración, la puedes
cambiar más tarde.
\item
\textbf{Siempre} hay que escoger la máxima longitud posible
\end{itemize}
\hypertarget{seahorse}{%
\subsection{Seahorse}\label{seahorse}}
Para manejar todas nuestras claves con comodidad:
\texttt{sudo\ apt\ install\ seahorse}
\hypertarget{conexiuxf3n-a-github-con-claves-ssh}{%
\subsection{Conexión a github con claves
ssh}\label{conexiuxf3n-a-github-con-claves-ssh}}
Usando este método podemos conectarnos a github sin tener que teclear la
contraseña en cada conexión.
\hypertarget{claves-ssh}{%
\subsubsection{Claves ssh}\label{claves-ssh}}
Podemos echar un ojo a nuestras claves desde \texttt{seahorse} la
aplicación de gestión de claves que hemos instalado. También podemos ver
las claves que tenemos generadas:
\begin{verbatim}
ls -al ~/.ssh
\end{verbatim}
En las claves listadas nuestras claves públicas aparecerán con extensión
\texttt{.pub}
También podemos comprobar que claves hemos añadido ya a nuestro agente
ssh con:
\begin{verbatim}
ssh-add -l
\end{verbatim}
Para generar una nueva pareja de claves ssh:
\begin{verbatim}
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
\end{verbatim}
Podremos dar un nombre distintivo a los ficheros de claves generados y
poner una contraseña adecuada a la clave. Si algún dia queremos cambiar
la contraseña:
\begin{verbatim}
ssh-keygen -p
\end{verbatim}
Ahora tenemos que añadir nuestra clave ssh en nuestra cuenta de github,
para ello editamos con nuestro editor de texto favorito el fichero
\texttt{\textasciitilde{}/.ssh/id\_rsa.pub} y copiamos el contenido
integro. Después pegamos ese contenido en el cuadro de texto de la web
de github.
Para comprobar que las claves instaladas en github funcionan
correctamente:
\begin{verbatim}
ssh -T git@github.com
Hi salvari! You've successfully authenticated, but GitHub does not provide shell access.
\end{verbatim}
Este mensaje indica que todo ha ido bien.
Ahora en los repos donde queramos usar ssh debemos cambiar el remote:
\begin{verbatim}
git remote set-url origin git@github.com:$USER/$REPONAME.git
\end{verbatim}
\hypertarget{signal}{%
\subsection{Signal}\label{signal}}
El procedimiento recomendado en la página oficial:
\begin{verbatim}
curl -s https://updates.signal.org/desktop/apt/keys.asc | sudo apt-key add -
echo "deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main" | sudo tee -a /etc/apt/sources.list.d/signal-xenial.list
sudo apt update && sudo apt install signal-desktop
\end{verbatim}
\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center}
\textbf{NOTA}: Parece que no funciona. Lo he instalado via
\emph{flatpack}
\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center}
\hypertarget{lector-dni-electruxf3nico}{%
\subsection{Lector DNI electrónico}\label{lector-dni-electruxf3nico}}
Instalamos:
\begin{verbatim}
sudo apt-get install pcscd pcsc-tools libccid
\end{verbatim}
Como root ejecutamos pcsc\_scan:
\begin{verbatim}
root@rasalhague:~# pcsc_scan
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.8.11
Using reader plug'n play mechanism
Scanning present readers...
Waiting for the first reader...
\end{verbatim}
Si insertamos el lector veremos algo como esto:
\begin{verbatim}
root@rasalhague:~# pcsc_scan
PC/SC device scanner
V 1.4.23 (c) 2001-2011, Ludovic Rousseau <ludovic.rousseau@free.fr>
Compiled with PC/SC lite version: 1.8.11
Using reader plug'n play mechanism
Scanning present readers...
Waiting for the first reader...found one
Scanning present readers...
0: C3PO LTC31 v2 (11061005) 00 00
Wed Jan 25 01:17:20 2017
Reader 0: C3PO LTC31 v2 (11061005) 00 00
Card state: Card removed,
\end{verbatim}
Si insertamos un DNI veremos que se lee la información de la tarjeta
insertada:
\begin{verbatim}
Reader 0: C3PO LTC31 v2 (11061005) 00 00
Card state: Card inserted,
\end{verbatim}
y mas rollo
Instalamos ahora el modulo criptográfico desde
\href{https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112}{este
enlace}
Y además:
\begin{verbatim}
aptitude install pinentry-gtk2 opensc
\end{verbatim}
\hypertarget{virtualizaciones-y-contenedores}{%
\section{Virtualizaciones y
contenedores}\label{virtualizaciones-y-contenedores}}
\hypertarget{instalaciuxf3n-de-virtualbox}{%
\subsection{\texorpdfstring{Instalación de
\emph{virtualBox}}{Instalación de virtualBox}}\label{instalaciuxf3n-de-virtualbox}}
Lo hacemos con los origenes de software oficiales (alternativamente,
podríamos hacerlo manualmente):
\begin{verbatim}
# Importamos la clave gpg
wget -q https://www.virtualbox.org/download/oracle_vbox_2016.asc -O- | sudo apt-key add -
# Añadimos el nuevo origen de software
sudo add-apt-repository "deb [arch=amd64] https://download.virtualbox.org/virtualbox/debian $(. /etc/os-release; echo "$UBUNTU_CODENAME") contrib"
# Actualizamos la base de datos de paquetes
sudo apt update
\end{verbatim}
Ahora podemos comprobar que además del paquete \emph{virtualbox} tenemos
varios paquetes con número de versión (p.ej. \_virtualbox.6.1), estos
últimos son los que hemos añadido (compruebalo con
\texttt{apt-cache\ policy\ {[}nombrepaquete{]}})
Instalamos el que nos interesa:
\begin{verbatim}
sudo apt install virtualbox-6.1
\end{verbatim}
Descargamos también el
\href{https://www.virtualbox.org/wiki/Downloads}{VirtualBox Extension
Pack}, este paquete lo instalaremos desde el propio interfaz de usuario
del \emph{VirtualBox}. Y lo instalamos con el comando:
\begin{verbatim}
sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-6.1.2.vbox-extpack
\end{verbatim}
Sólo nos queda añadir nuestro usuario al grupo \texttt{vboxusers}, con
el comando \texttt{sudo\ gpasswd\ -a\ username\ vboxusers}, y tendremos
que cerrar la sesión para refrescar nuestros grupos.
\hypertarget{qemu}{%
\subsection{qemu}\label{qemu}}
Instalamos desde el repo oficial:
\begin{verbatim}
sudo apt install qemu-kvm qemu virt-manager virt-viewer libvirt-bin
\end{verbatim}
\hypertarget{docker}{%
\subsection{Docker}\label{docker}}
Tenemos que añadir el repositorio correspondiente a nuestra
distribución:
\begin{verbatim}
# Be safe
sudo apt remove docker docker-engine docker.io
sudo apt autoremove
sudo apt update
# Install pre-requisites
sudo apt install ca-certificates curl
# Import the GPG key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
# Next, point the package manager to the official Docker repository
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(. /etc/os-release; echo "$UBUNTU_CODENAME") stable"
# Update the package database
sudo apt update
#
apt-cache policy docker-ce
sudo apt install docker-ce
sudo gpasswd -a salvari docker
\end{verbatim}
Esto dejará el servicio \emph{docker} funcionando y habilitado
(arrancará en cada reinicio del ordenador)
La forma de pararlo es:
\begin{verbatim}
sudo systemctl stop docker
sudo systemctl disable docker
systemctl status docker
\end{verbatim}
Añadimos el \emph{bundle} \textbf{docker} en nuestro fichero
\texttt{\textasciitilde{}/.zshrc} para tener autocompletado en comandos
de docker.
Para usar \emph{docker} tendremos que arrancarlo, con los alias de
nuestro sistema para \emph{systemd} ejecutamos:
\begin{verbatim}
scst docker # para arrancar el servicio
scsp docker # para parar el servicio
\end{verbatim}
\hypertarget{docker-compose}{%
\subsubsection{docker-compose}\label{docker-compose}}
\begin{itemize}
\tightlist
\item
Nos bajamos la última versión disponible de
\href{https://github.com/docker/compose/releases}{las releases de
github}
\item
Movemos el fichero que hemos descargado a
\texttt{/usr/local/bin/docker-compose}
\item
Y le damos permisos de ejecución
\texttt{sudo\ chmod\ +x\ /usr/local/bin/docker-compose}
\end{itemize}
\hypertarget{utilidades-para-mapas-y-cartografuxeda}{%
\section{Utilidades para mapas y
cartografía}\label{utilidades-para-mapas-y-cartografuxeda}}
\hypertarget{josm}{%
\subsection{josm}\label{josm}}
Descargamos y añadimos la clave gpg:
\begin{verbatim}
wget -q https://josm.openstreetmap.de/josm-apt.key -O- | sudo apt-key add -
\end{verbatim}
Añadimos el origen de software:
\begin{verbatim}
sudo add-apt-repository "deb [arch=amd64] https://josm.openstreetmap.de/apt $(. /etc/os-release; echo "$UBUNTU_CODENAME") universe"
\end{verbatim}
Y ahora procedemos a la instalación:
\begin{verbatim}
sudo apt update
sudo apt install openjfx josm
\end{verbatim}
Alternativamente también podemos instalar la versión ``nightly'' con el
siguienete comando, pero tendréis actualizaciones diarias:
\begin{verbatim}
sudo apt josm-latest
\end{verbatim}
Ya estamos listos para editar Open Street Map offline.
\hypertarget{mobac}{%
\subsection{MOBAC}\label{mobac}}
Bajamos el paquete desde \href{http://mobac.sourceforge.net/}{la página
web} y descomprimimos en \texttt{\textasciitilde{}/apps/mobac} como de
costumbre nos creamos una entrada de menú con \emph{MenuLibre}.
Conviene bajarse wms adicionales para MOBAC y leerse
\href{http://mobac.sourceforge.net/wiki/index.php/Custom_XML_Map_Sources}{la
wiki}
\hypertarget{referencias-1}{%
\subsubsection{Referencias}\label{referencias-1}}
*{[}Cartografía digital{]}
(https://digimapas.blogspot.com.es/2015/01/oruxmaps-vii-mapas-de-mobac.html)
\hypertarget{qgis}{%
\subsection{QGIS}\label{qgis}}
Añadimos la clave gpg:
\begin{verbatim}
wget -q https://qgis.org/downloads/qgis-2017.gpg.key -O- | sudo apt-key add -
\end{verbatim}
Ejecutamos:
\begin{verbatim}
sudo add-apt-repository "deb [arch=amd64] https://qgis.org/debian $(. /etc/os-release; echo "$UBUNTU_CODENAME") main"
\end{verbatim}
E instalamos como siempre
\begin{verbatim}
sudo apt update
sudo apt install qgis
\end{verbatim}
\hypertarget{referencias-2}{%
\subsubsection{Referencias}\label{referencias-2}}
\begin{itemize}
\tightlist
\item
\href{https://mappinggis.com/2015/09/como-conectar-con-servicios-wms-y-wfs-con-arcgis-qgis-y-gvsig/}{Conectar
WMS con QGIS}
\item
\href{https://www.altergeosistemas.com/blog/2014/03/28/importando-datos-de-osm-en-qgis-2/}{Importar
OSM en QGIS}
\item
\href{http://learnosm.org/es/osm-data/osm-in-qgis/}{Learn OSM}
\item
\href{http://www.qgistutorials.com/es/docs/downloading_osm_data.html}{QGIS
Tutorials}
\end{itemize}
\hypertarget{recetas-variadas}{%
\section{Recetas variadas}\label{recetas-variadas}}
\hypertarget{solucionar-problemas-de-menuxfas-duplicados-usando-menulibre}{%
\subsection{Solucionar problemas de menús duplicados usando
menulibre}\label{solucionar-problemas-de-menuxfas-duplicados-usando-menulibre}}
\begin{longtable}[]{@{}l@{}}
\toprule
\endhead
\textbf{Nota}: Ya no uso \emph{MenuLibre}\tabularnewline
\bottomrule
\end{longtable}
En el directorio
\texttt{\textasciitilde{}/.config/menus/applications-merged} borramos
todos los ficheros que haya.
\hypertarget{formatear-memoria-usb}{%
\subsection{Formatear memoria usb}\label{formatear-memoria-usb}}
``The driver descriptor says the physical block size is 2048 bytes, but
Linux says it is 512 bytes.''
Este comando borró todas las particiones de la memoria:
\texttt{sudo\ dd\ if=/dev/zero\ of=/dev/sdd\ bs=2048\ count=32\ \&\&\ sync}
I'm assuming your using gparted.
First delete whatever partitions you can\ldots just keep pressing
ignore.
There will be one with a black outline\ldots you will have to unmount
it\ldots just right click on it and unmount.
Again you will have to click your way through ignore..if fix is an
option choose it also.
Once all this is done\ldots{} you can select the device menu and choose
new partition table.
Select MSdos
Apply and choose ignore again.
Once it's done it show it's real size.
Next you can format the drive to whichever file system you like.
It's a pain in the behind this way, but it's the only way I get it
done..I put live iso's on sticks all the time and have to remove them. I
get stuck going through this process every time.
\hypertarget{copiar-la-clave-puxfablica-ssh-en-un-servidor-remoto}{%
\subsection{Copiar la clave pública ssh en un servidor
remoto}\label{copiar-la-clave-puxfablica-ssh-en-un-servidor-remoto}}
\texttt{cat\ /home/tim/.ssh/id\_rsa.pub\ \textbar{}\ ssh\ tim@just.some.other.server\ \textquotesingle{}cat\ \textgreater{}\textgreater{}\ .ssh/authorized\_keys\textquotesingle{}}
O también:
\texttt{ssh-copy-id\ -i\ \textasciitilde{}/.ssh/id\_rsa.pub\ username@remote.server}
\hypertarget{ssh-access-from-termux}{%
\subsection{ssh access from termux}\label{ssh-access-from-termux}}
\url{https://linuxconfig.org/ssh-into-linux-your-computer-from-android-with-termux}
\hypertarget{sdr-instalaciones-varias}{%
\subsection{SDR instalaciones varias}\label{sdr-instalaciones-varias}}
Vamos a trastear con un dispositivo
\href{https://www.rtl-sdr.com/}{RTL-SDR.com}.
Tenemos un montón de información en el blog de
\href{https://sdrgal.wordpress.com/}{SDR Galicia} y tienen incluso una
guia de instalación muy completa, pero yo voy a seguir una guía un poco
menos ambiciosa, por lo menos hasta que pueda hacer el curso que
imparten ellos mismos (SDR Galicia)
La guía en cuestión la podemos encontrar
\href{https://ranous.wordpress.com/rtl-sdr4linux/}{aquí}
Seguimos los pasos de instalación:
\begin{itemize}
\tightlist
\item
La instalación de \texttt{git}, \texttt{cmake} y
\texttt{build-essential} ya la tengo hecha.
\end{itemize}
\begin{verbatim}
sudo apt-get install libusb-1.0-0-dev
\end{verbatim}
\hypertarget{posible-problema-con-modemmanager-y-micros-programables}{%
\subsection{Posible problema con modemmanager y micros
programables}\label{posible-problema-con-modemmanager-y-micros-programables}}
Programando el \emph{Circuit Playground Express} con el \emph{Arduino
IDE} tenía problemas continuos para hacer los \emph{uploads}, al parecer
el servicio \emph{ModemManager} es el culpable, se pasa todo el tiempo
capturando los nuevos puertos serie por que considera que todo es un
modem.
Una prueba rápida para comprobarlo:
\texttt{sudo\ systemctl\ stop\ ModemManager}
Con esto funciona todo bien, pero en el siguiente arranque volvera a
cargarse.
Para dar una solución definitiva se puede programar una regla para
impedir que el \emph{ModemManager} capture el puerto con un dispositivo
Creamos un fichero con permisos de \texttt{root} en el directorio
\texttt{/etc/udev/rules.d} que llamaremos: \texttt{99-arduino.rules}
Dentro de ese fichero especificamos los codigos VID/PID que se deben
ignorar:
\begin{verbatim}
# for arduino brand, stop ModemManager grabbing port
ATTRS{idVendor}=="2a03", ENV{ID_MM_DEVICE_IGNORE}="1"
# for sparkfun brand, stop ModemManager grabbing port
ATTRS{idVendor}=="1b4f", ENV{ID_MM_DEVICE_IGNORE}="1"
\end{verbatim}
Ojo que si tienes SystemV no va a funcionar.
https://starter-kit.nettigo.eu/2015/serial-port-busy-for-avrdude-on-ubuntu-with-arduino-leonardo-eth/
https://www.codeproject.com/Tips/349002/Select-a-USB-Serial-Device-via-its-VID-PID
\hypertarget{programar-los-nanos-con-chip-ch340-o-ch341}{%
\subsection{Programar los nanos con chip ch340 o
ch341}\label{programar-los-nanos-con-chip-ch340-o-ch341}}
Linux mapea el chip correctamente en un puerto \texttt{/dev/ttyUSB0} y
con eso basta, que no te lien con el cuento de ``drivers para linux''
Todo lo que hace falta es configurar correctamente el \emph{Arduino
IDE}, hay que escoger:
\begin{verbatim}
Board: "Arduino Nano"
Processor: "ATmega168"
Port: "/dev/ttyUSB0"
\end{verbatim}
Y ya funciona todo.
\end{document}

@ -46,6 +46,16 @@ sudo apt install inkscape
El programa para edición y retocado de imágenes.
Parece que ahora mismo los repos están más actualizados que el ppa.
Así que bastaría con:
~~~~{bash}
sudo apt install gimp gimp-data gimp-texturize \
gimp-data-extras gimp-gap gmic gimp-gmic
~~~~
De todas formas dejo aquí las instrucciones para instalar desde el ppa
por si hacen falta algún dia:
~~~~
sudo apt remove gimp gimp-data

Loading…
Cancel
Save