From b5d91191e993240e37587f130ce7a4eb47608da8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sergio=20Alvari=C3=B1o?= Date: Tue, 9 Feb 2021 17:09:06 +0100 Subject: [PATCH] Removes obsolete section for gimp plugins --- README.md | 938 ++++++++++++++++++++------------------- out/LinuxMintUlyana.dw | 305 ++++++++++--- out/LinuxMintUlyana.epub | Bin 87692 -> 87851 bytes out/LinuxMintUlyana.mw | 89 ++-- out/LinuxMintUlyana.odt | Bin 79894 -> 79746 bytes out/LinuxMintUlyana.pdf | Bin 253267 -> 254433 bytes out/LinuxMintUlyana.tex | 102 ++--- src/500_graph.md | 17 - 8 files changed, 821 insertions(+), 630 deletions(-) diff --git a/README.md b/README.md index 73490ca..01f4d2c 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,4 @@ -Introducción -============ +# Introducción Mis portatiles son: @@ -30,11 +29,9 @@ Mis portatiles son: - 512Gb SSD + 1Tb HDD -Programas básicos -================= +# Programas básicos -Linux Mint ----------- +## Linux Mint Linux Mint incluye `sudo` y las aplicaciones que uso habitualmente para gestión de paquetes por defecto (*aptitude* y *synaptic*). @@ -46,8 +43,7 @@ programas instalados desde ese ppa. Tampoco voy a enredar nada con los orígenes del software (de momento), es decir no voy a cambiar al depósito regional. -Firmware --------- +## Firmware Ya no es necesario intalar los paquetes de *microcode* la instalación de Ulyana se encargó de instalar: @@ -65,8 +61,7 @@ Una vez instalado el driver de nvidia, el comando `prime-select query`debe indicarnos la tarjeta activa y podremos cambiar de tarjeta ejecutando `prime-select [nvidia|intel]` -Control de configuraciones con git ----------------------------------- +## Control de configuraciones con git Una vez instalado el driver de nvidia y antes de seguir con la instalación instalamos el `git` y el `etckeeper` para que todos los @@ -80,18 +75,22 @@ controlados los cambios de configuración y ayuda en caso de problemas. ¡Ojo!, nos hacemos `root` para ejecutar: - sudo su - - git config --global user.email xxxxx@whatever.com - git config --global user.name "Name Surname" - apt install etckeeper +``` {bash} +sudo su - +git config --global user.email xxxxx@whatever.com +git config --global user.name "Name Surname" +apt install etckeeper +``` *etckeeper* hara un control automático de tus ficheros de configuración en `/etc` Para echar una mirada a los *commits* creados puedes ejecutar: - cd /etc - sudo git log +``` {bash} +cd /etc +sudo git log +``` ### Controlar dotfiles con git @@ -100,18 +99,22 @@ de configuración. Creamos el repo donde queramos - mkdir usrcfg - cd usrcfg - git init - git config core.worktree "/home/salvari" +``` {bash} +mkdir usrcfg +cd usrcfg +git init +git config core.worktree "/home/salvari" +``` Y ya lo tenemos, un repo que tiene el directorio de trabajo apuntando a nuestro *$HOME*. Podemos añadir los ficheros de configuración que queramos al repo: - git add .bashrc - git commit -m "Add some dotfiles" +``` {bash} +git add .bashrc +git commit -m "Add some dotfiles" +``` Una vez que tenga añadidos los ficheros que quiero tener controlados pondré `*` en el fichero `.git/info/exclude` de mi repo para que ignore @@ -125,8 +128,7 @@ ejemplo) así que no tengo problemas en almacenarlo en la nube. Facilita mucho las cosas en casos de upgrade del sistema o copiar configuraciones entre ordenadores. -Parámetros de disco duro ------------------------- +## Parámetros de disco duro Tengo un disco duro ssd y otro hdd normal. @@ -138,30 +140,34 @@ tirar del swap. Añadimos el parámetro `noatime` para las particiones de `root` y `/home`, que si que se han creado en el ssd. - # /etc/fstab: static file system information. - # - # Use 'blkid' to print the universally unique identifier for a - # device; this may be used with UUID= as a more robust way to name devices - # that works even if disks are added and removed. See fstab(5). - # - # - # / was on /dev/sda5 during installation - UUID=d96a5501-75b9-4a25-8ecb-c84cd4a3fff5 / ext4 noatime,errors=remount-ro 0 1 - # /home was on /dev/sda7 during installation - UUID=8fcde9c5-d694-4417-adc0-8dc229299f4c /home ext4 defaults,noatime 0 2 - # /store was on /dev/sdc7 during installation - UUID=0f0892e0-9183-48bd-aab4-9014dc1bd03a /store ext4 defaults 0 2 - # swap was on /dev/sda6 during installation - UUID=ce11ccb0-a67d-4e8b-9456-f49a52974160 none swap sw 0 0 - # swap was on /dev/sdc5 during installation - UUID=11090d84-ce98-40e2-b7be-dce3f841d7b4 none swap sw 0 0 +``` {fstab} +# /etc/fstab: static file system information. +# +# Use 'blkid' to print the universally unique identifier for a +# device; this may be used with UUID= as a more robust way to name devices +# that works even if disks are added and removed. See fstab(5). +# +# +# / was on /dev/sda5 during installation +UUID=d96a5501-75b9-4a25-8ecb-c84cd4a3fff5 / ext4 noatime,errors=remount-ro 0 1 +# /home was on /dev/sda7 during installation +UUID=8fcde9c5-d694-4417-adc0-8dc229299f4c /home ext4 defaults,noatime 0 2 +# /store was on /dev/sdc7 during installation +UUID=0f0892e0-9183-48bd-aab4-9014dc1bd03a /store ext4 defaults 0 2 +# swap was on /dev/sda6 during installation +UUID=ce11ccb0-a67d-4e8b-9456-f49a52974160 none swap sw 0 0 +# swap was on /dev/sdc5 during installation +UUID=11090d84-ce98-40e2-b7be-dce3f841d7b4 none swap sw 0 0 +``` Una vez modificado el `/etc/fstab` no hace falta arrancar, basta con ejecutar lo siguiente: - mount -o remount / - mount -o remount /home - mount +``` {bash} +mount -o remount / +mount -o remount /home +mount +``` ### Ajustar *Firefox* @@ -183,13 +189,14 @@ Cambiamos TODO: Comprobar *trim* en mi disco duro. Y mirar [esto](https://easylinuxtipsproject.blogspot.com/p/speed-mint.html) -Fuentes (tipográficas) adicionales ----------------------------------- +## Fuentes (tipográficas) adicionales Instalamos algunas fuentes desde los orígenes de software: - sudo apt install ttf-mscorefonts-installer - sudo apt install fonts-noto +``` {bash} +sudo apt install ttf-mscorefonts-installer +sudo apt install fonts-noto +``` Y la fuente [Mensch](https://robey.lag.net/2010/06/21/mensch-font.html) la bajamos directamente al directorio `~/.local/share/fonts` @@ -206,16 +213,17 @@ Otras fuentes muy interesantes - [Programming fonts](https://github.com/ProgrammingFonts/ProgrammingFonts) -Firewall --------- +## Firewall `ufw` y `gufw` vienen instalados por defecto, pero no activados. - aptitude install ufw - ufw default deny - ufw enable - ufw status verbose - aptitude install gufw +``` {bash} +aptitude install ufw +ufw default deny +ufw enable +ufw status verbose +aptitude install gufw +``` ------------------------------------------------------------------------ @@ -225,8 +233,7 @@ Firewall ------------------------------------------------------------------------ -Aplicaciones variadas ---------------------- +## Aplicaciones variadas > **Nota**: Ya no instalamos *menulibre*, Linux Mint tiene una utilidad > de edición de menús. @@ -274,31 +281,31 @@ Chromium Como Chrome pero libre, ahora en Ubuntu solo está disponible como snap así que tendremos que dar un rodeo. - - - sudo add-apt-repository ppa:xalt7x/chromium-deb-vaapi - cat <http://cheat.sh/, es casi -idéntico al anterior pero disponible desde cualquier ordenador con -conexión. +Echa una mirada a su página web: , es casi idéntico al +anterior pero disponible desde cualquier ordenador con conexión. gparted Instalamos *gparted* para poder formatear memorias usb @@ -624,11 +631,9 @@ red. `ndiff` nos permite comparar escaneos realizados con `nmap` y `sudo apt install nmap ndiff ncat` -Internet -======== +# Internet -Rclone ------- +## Rclone Instalamos desde la página web(https://rclone.org/), descargando el fichero `.deb`. @@ -658,32 +663,29 @@ Sincronizar una carpeta remota en local: (blogdelazaro)](https://elblogdelazaro.gitlab.io//articles/rclone-cifrado-de-ficheros-en-la-nube/) - [Documentación](https://rclone.org/docs/) -time-tracking -============= +# time-tracking -Activity Watcher ----------------- +## Activity Watcher Instalado desde la web En realidad no lo uso para nada. -go for it ---------- +## go for it Este programa no para de escribir en el disco continuamente. He dejado de usarlo por que me sobra con el org-mode de emacs. Si de todas formas lo quieres instalar, aquí tienes los comandos: - sudo add-apt-repository ppa:go-for-it-team/go-for-it-daily && sudo apt-get update - sudo apt-get install go-for-it +``` {bash} +sudo add-apt-repository ppa:go-for-it-team/go-for-it-daily && sudo apt-get update +sudo apt-get install go-for-it +``` -Documentación -============= +# Documentación -Vanilla LaTeX -------------- +## Vanilla LaTeX Para instalar la versión más reciente de LaTeX hago la instalación desde [ctan](https://www.ctan.org/) @@ -802,15 +804,13 @@ Lanzador para el actualizador de *texlive*: Icon=system-software-update EOF -Tipos de letra --------------- +## Tipos de letra Creamos el directorio de usuario para tipos de letra: mkdir ~/.local/share/fonts -Fuentes Adicionales -------------------- +## Fuentes Adicionales Me he descargado de internet la fuente [Mensch](https://robey.lag.net/downloads/mensch.ttf) el directorio de @@ -828,8 +828,7 @@ parece que las fuentes están un poco anticuadas. La fuente Hack la he instalado directamente desde el [sitio web](https://sourcefoundry.org/hack/) -Pandoc ------- +## Pandoc *Pandoc* es un traductor entre formatos de documento. Está escrito en Python y es increiblemente útil. De hecho este documento está escrito @@ -849,8 +848,7 @@ comandos: Las plantillas no son imprescindibles pero si quieres aprender a usarlas o hacer alguna modificación viene bien tenerlas. -Algunos editores adicionales ----------------------------- +## Algunos editores adicionales Dos editores para hacer pruebas: @@ -862,8 +860,7 @@ Zettlr Instalado con fichero `.deb` descargado desde [su página web](https://www.zettlr.com/) -Calibre -------- +## Calibre La mejor utilidad para gestionar tu colección de libros electrónicos. @@ -893,8 +890,7 @@ Algunos enlaces útiles: - (http://www.redelijkheid.com/blog/2013/7/25/kobo-glo-ebook-library-management-with-calibre) - (https://www.netogram.com/kobo.htm) -Scribus -------- +## Scribus Scribus es un programa libre de composición de documentos. con Scribus puedes elaborar desde los folletos de una exposición hasta una revista o @@ -942,17 +938,14 @@ he instalado los paquetes: Y ahora funciona correctamente. -Foliate: lector de libros electrónicos --------------------------------------- +## Foliate: lector de libros electrónicos Instalado el paquete deb desde [su propio github](https://github.com/johnfactotum/foliate/releases) -Desarrollo software -=================== +# Desarrollo software -Paquetes esenciales -------------------- +## Paquetes esenciales Estos son los paquetes esenciales para empezar a desarrollar software en Linux. @@ -960,8 +953,7 @@ Linux. sudo apt install build-essential checkinstall make automake cmake autoconf \ git git-core git-crypt dpkg wget -Git ---- +## Git ------------------------------------------------------------------------ @@ -969,9 +961,11 @@ Git developers tienen un ppa para ubuntu, si quieres tener el git más actualizado: - sudo add-apt-repository ppa:git-core/ppa - sudo apt update - sudo apt upgrade +``` {bash} +sudo add-apt-repository ppa:git-core/ppa +sudo apt update +sudo apt upgrade +``` ------------------------------------------------------------------------ @@ -1006,15 +1000,13 @@ Configuración básica de git: git config --global alias.br branch git config --global core.editor emacs -Emacs ------ +## Emacs Instalado emacs desde los repos: sudo aptitude install emacs -Lenguaje de programación D (D programming language) ---------------------------------------------------- +## Lenguaje de programación D (D programming language) El lenguaje de programación D es un lenguaje de programación de sistemas con una sintaxis similar a la de C y con tipado estático. Combina @@ -1077,14 +1069,15 @@ Instalados los siguientes paquetes desde Melpa Referencias \* (https://github.com/atilaneves/ac-dcd) \* (https://github.com/Hackerpilot/DCD) -C, C++ ------- +## C, C++ ### Instalación de Gnu Global Para instalar las dependencias, previamente instalamos: - sudo apt install ncurses-dev id-utils exuberant-ctags python-pygments +``` {shell} +sudo apt install ncurses-dev id-utils exuberant-ctags python-pygments +``` Con `ctags --version` nos aseguramos de que se llama a Exuberant y no el ctags que instala Emacs. Si no es así habrá que revisar la definición @@ -1102,69 +1095,76 @@ esto se trata de la versión 6.6.4. Descomprimimos los fuentes y los compilamos con: - ./configure --prefix=/usr/local --with-exuberant-ctags=/usr/bin/ctags - make - sudo make install +``` {shell} +./configure --prefix=/usr/local --with-exuberant-ctags=/usr/bin/ctags +make +sudo make install +``` He comprobado que make uninstall funciona correctamente, las librerías quedan instaladas en `/usr/local/lib/gtags` y los ejecutables en `/usr/local/bin` -Rust ----- +## Rust Instalamos siguiendo las instrucciones de [aqui](https://www.rust-lang.org/tools/install) (Hacemos la instalación por defecto) - curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh +``` {bash} +curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh - stable installed - rustc 1.47.0 (18bf6b4f0 2020-10-07) + stable installed - rustc 1.47.0 (18bf6b4f0 2020-10-07) - Rust is installed now. Great! +Rust is installed now. Great! - To get started you need Cargo's bin directory ($HOME/.cargo/bin) in your PATH - environment variable. Next time you log in this will be done - automatically. +To get started you need Cargo's bin directory ($HOME/.cargo/bin) in your PATH +environment variable. Next time you log in this will be done +automatically. - To configure your current shell run source $HOME/.cargo/env +To configure your current shell run source $HOME/.cargo/env +``` Yo comento la linea del fichero `.zprofile` por que mi `.zshrc` ya lee el fichero `.profile` Para desinstalar `rust` bastaría con ejecutar `rustup self uninstall` -golang ------- +## golang Bajamos el paquete con la última versión desde [la página oficial](https://golang.org/dl/). Descomprimimos como *root* en `/usr/local/` - sudo tar -C /usr/local -xvzf go1.15.7.linux-amd64.tar.gz +``` bash +sudo tar -C /usr/local -xvzf go1.15.7.linux-amd64.tar.gz +``` Añadimos al path con las siguientes lineas en `~/.profile`: - #golang - if [ -d "/usr/local/go" ] ; then - export GOROOT="/usr/local/go" - PATH="$PATH:$GOROOT/bin" - fi - if [ -d "$HOME/work/development/gocode" ] ; then - export GOPATH="$HOME/work/development/gocode" - PATH="$PATH:$GOPATH/bin" - fi +``` bash +#golang +if [ -d "/usr/local/go" ] ; then + export GOROOT="/usr/local/go" + PATH="$PATH:$GOROOT/bin" +fi +if [ -d "$HOME/work/development/gocode" ] ; then + export GOPATH="$HOME/work/development/gocode" + PATH="$PATH:$GOPATH/bin" +fi +``` ### Instalación de *gopls* un servidor de LSP para editores: Desde un directorio **que no sea el GOPATH** - GO111MODULE=on go get golang.org/x/tools/gopls@latest +``` bash +GO111MODULE=on go get golang.org/x/tools/gopls@latest +``` -Processing ----------- +## Processing Bajamos el paquete de la [página web](https://processing.org/), descomprimimimos en `~/apps/`, en las nuevas versiones incorpora un @@ -1173,8 +1173,7 @@ script de instalación que ya se encarga de crear el fichero *desktop*. La última versión incorpora varios modos de trabajo, he descargado el modo *Python* para probarlo. -openFrameworks --------------- +## openFrameworks Nos bajamos los fuentes para linux 64bits desde [la página web del proyecto](https://openframeworks.cc), y las descomprimimos en un @@ -1191,15 +1190,16 @@ contrario falla la compilación. Añade los siguientes paquetes a nuestro sistema - installing OF dependencies - OF needs to install the following packages using apt-get: - curl libjack-jackd2-0 libjack-jackd2-dev freeglut3-dev libasound2-dev libxmu-dev libxxf86vm-dev g++ libgl1-mesa-dev libglu1-mesa-dev libraw1394-dev libudev-dev libdrm-dev libglew-dev libopenal-dev libsndfile-dev libfreeimage-dev libcairo2-dev libfreetype6-dev libssl-dev libpulse-dev libusb-1.0-0-dev libgtk-3-dev libopencv-dev libassimp-dev librtaudio-dev libboost-filesystem-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-libav gstreamer1.0-pulseaudio gstreamer1.0-x gstreamer1.0-plugins-bad gstreamer1.0-alsa gstreamer1.0-plugins-base gstreamer1.0-plugins-good gdb libglfw3-dev liburiparser-dev libcurl4-openssl-dev libpugixml-dev libgconf-2-4 libgtk2.0-0 libpoco-dev - Do you want to continue? [Y/n] +``` {bash} +installing OF dependencies +OF needs to install the following packages using apt-get: +curl libjack-jackd2-0 libjack-jackd2-dev freeglut3-dev libasound2-dev libxmu-dev libxxf86vm-dev g++ libgl1-mesa-dev libglu1-mesa-dev libraw1394-dev libudev-dev libdrm-dev libglew-dev libopenal-dev libsndfile-dev libfreeimage-dev libcairo2-dev libfreetype6-dev libssl-dev libpulse-dev libusb-1.0-0-dev libgtk-3-dev libopencv-dev libassimp-dev librtaudio-dev libboost-filesystem-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-libav gstreamer1.0-pulseaudio gstreamer1.0-x gstreamer1.0-plugins-bad gstreamer1.0-alsa gstreamer1.0-plugins-base gstreamer1.0-plugins-good gdb libglfw3-dev liburiparser-dev libcurl4-openssl-dev libpugixml-dev libgconf-2-4 libgtk2.0-0 libpoco-dev +Do you want to continue? [Y/n] +``` No te olvides de compilar también el *Project Generator*. -Python ------- +## Python De partida tenemos instalado dos versiones: *python2* y *python3* @@ -1213,29 +1213,35 @@ En principio yo no quería instalar ninguno para averigüar que paquetes no funcionaban, pero la instalación de VirtualBox hizo que se instalara automáticamente el paquete `python-is-python2`. - python2 -V - Python 2.7.18rc1 +``` {bash} +python2 -V +Python 2.7.18rc1 - python3 -V - Python 3.8.2 +python3 -V +Python 3.8.2 +``` ### Paquetes de python instalados Son los que ya comentamos en la sección de instalación de zsh, como ya dijimos conviene que instalemos los paquetes de desarrollo: - sudo apt install python2-dev - sudo apt install python-all-dev - sudo apt install python3-dev - sudo apt install python3-all-dev - sudo apt install virtualenv virtualenvwrapper python3-virtualenv +``` {bash} +sudo apt install python2-dev +sudo apt install python-all-dev +sudo apt install python3-dev +sudo apt install python3-all-dev +sudo apt install virtualenv virtualenvwrapper python3-virtualenv +``` Ademas añadimos las siguientes lineas al fichero `~/.profile`: - # WORKON_HOME for virtualenvwrapper - if [ -d "$HOME/.virtualenvs" ] ; then - WORKON_HOME="$HOME/.virtualenvs" - fi +``` {bash} +# WORKON_HOME for virtualenvwrapper +if [ -d "$HOME/.virtualenvs" ] ; then +WORKON_HOME="$HOME/.virtualenvs" +fi +``` [Aquí](https://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html) tenemos la referencia de comandos de *virtualenvwrapper*. @@ -1252,57 +1258,70 @@ virtualenv para probarlo Una instalación para pruebas. - mkvirtualenv -p /usr/bin/python3 jupyter - python -m pip install jupyter +``` {bash} +mkvirtualenv -p /usr/bin/python3 jupyter +python -m pip install jupyter +``` ### Instalamos `python3.9` `python3.9` está ya disponible en los repos oficiales. Para dejarla instalada: - sudo apt install python3.9 python3.9-dev python3.9-venv +``` {bash} +sudo apt install python3.9 python3.9-dev python3.9-venv +``` ### pyenv Instalamos los pre-requisitos: - sudo apt-get update - sudo apt-get install --no-install-recommends make build-essential \ - libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ - wget curl llvm libncurses5-dev xz-utils tk-dev \ - libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev +``` bash +sudo apt-get update +sudo apt-get install --no-install-recommends make build-essential \ +libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ +wget curl llvm libncurses5-dev xz-utils tk-dev \ +libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev +``` Podemos clonar el repo en nuestro `home`: - git clone https://github.com/pyenv/pyenv.git ~/.pyenv +``` bash +git clone https://github.com/pyenv/pyenv.git ~/.pyenv +``` Pero también podemos añadir el *bundle* para *Antigen* en el fichero `.zshrc` y dejar que se encargue de todo. - antigen bundle mattberther/zsh-pyenv +``` bash +antigen bundle mattberther/zsh-pyenv +``` Añadimos al fichero `~/.profile`: - # pyenv - if [ -d "$HOME/.pyenv" ] ; then - export PYENV_ROOT="$HOME/.pyenv" - export PATH="$PYENV_ROOT/bin:$PATH" - fi +``` bash +# pyenv +if [ -d "$HOME/.pyenv" ] ; then + export PYENV_ROOT="$HOME/.pyenv" + export PATH="$PYENV_ROOT/bin:$PATH" +fi +``` Y configuramos en `~/.bashrc` y en `~/.zshrc` (aunque en el último no es necesario tocar nada si usamos el *bundle* para *Antigen*): - if command -v pyenv 1>/dev/null 2>&1; then - eval "$(pyenv init -)" - fi +``` bash +if command -v pyenv 1>/dev/null 2>&1; then + eval "$(pyenv init -)" +fi +``` Podemos probar que todo funciona con: `pyenv install -l` Una vez instalado hay que estudiarse [la referencia de comandos](https://github.com/pyenv/pyenv/blob/master/COMMANDS.md) -neovim ------- +## neovim Vamos a probar *neovim*, ahora mismo la versión de los repos de Ubuntu está actualizada a la penúltima versión (0.4.3). También podemos @@ -1382,7 +1401,7 @@ comando ejecutando: `:PlugInstall` | Solo hay que instalar uno de los dos o *dein* o *plug-vim*. Yo uso | | *plug-vim* así que esto es sólo una referencia. | -https://github.com/Shougo/dein.vim + " Add the dein installation directory into runtimepath set runtimepath+=~/.config/nvim/dein/repos/github.com/Shougo/dein.vim @@ -1405,22 +1424,21 @@ comando ejecutando: `:PlugInstall` filetype plugin indent on syntax enable -Firefox developer edition -------------------------- +## Firefox developer edition El rollo de siempre, descargar desde [la página web](https://www.mozilla.org/en-US/firefox/developer/) descomprimir en `~/apps` y crear un lanzador. -Navegadores cli ---------------- +## Navegadores cli Herramientas útiles para depuración web - sudo apt install httpie links +``` {bash} +sudo apt install httpie links +``` -MariaDB -------- +## MariaDB Instalamos la última estable para Ubuntu Fossa desde los repos oficiales. @@ -1429,7 +1447,9 @@ Primero añadimos los repos. Añadimos la clave de firma: - sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc' +``` {bash} +sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc' +``` Ahora tenemos dos opciones: @@ -1475,8 +1495,7 @@ ordenador: sudo systemctl stop mariadb sudo systemctl disable mariadb -Squirrel SQL Client -------------------- +## Squirrel SQL Client Bajamos el zip de estándar desde [la página web de Squirrel](http://www.squirrelsql.org/) (yo prefiero no usar el @@ -1491,15 +1510,16 @@ página oficial. Nos interesa el fichero `maria-java-client-2.6.0.jar` Configuramos el driver para que sepa donde está el fichero `.jar` y ya estamos listos para trabajar. -R y R-studio ------------- +## R y R-studio Primero instalamos la última versión de R en nuestro pc: - sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 - sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/' - sudo apt update - sudo apt install r-base +``` {bash} +sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 +sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/' +sudo apt update +sudo apt install r-base +``` ### R-studio @@ -1508,18 +1528,15 @@ web](https://rstudio.com/products/rstudio/download-server/debian-ubuntu/) Instalamos con *gdebi* (basta con clicar sobre el fichero *.deb*) -Octave ------- +## Octave Instalado desde flatpak sudo flatpak install flathub org.octave.Octave -Desarrollo hardware -=================== +# Desarrollo hardware -Arduino IDE ------------ +## Arduino IDE Bajamos los paquetes de la página [web](https://www.arduino.cc), descomprimimimos en *\~/apps/arduino*. @@ -1626,9 +1643,9 @@ Bastaría con instalar *Arduino SAMD Boards* Tenemos varias URL posibles para configurar en las preferencias del IDE Arduino: -- http://dan.drown.org/stm32duino/package_STM32duino_index.json +- (recomendada por Tutoelectro) -- https://github.com/stm32duino/BoardManagerFiles/raw/master/STM32/package_stm_index.json +- (parece la oficial) He optado por añadir los dos ficheros json al IDE, la oficial tiene @@ -1650,8 +1667,8 @@ la [Figura 1](#figura_1) Añadimos las URL: -- https://dl.espressif.com/dl/package_esp32_index.json -- http://arduino.esp8266.com/stable/package_esp8266com_index.json +- +- Añadimos la librería: @@ -1680,8 +1697,7 @@ ver los ejemplos de *Makeblock*. Un detalle importante para programar el Auriga-Me es necesario seleccionar el micro Arduino Mega 2560 en el IDE Arduino. -Pinguino IDE ------------- +## Pinguino IDE ------------------------------------------------------------------------ @@ -1703,8 +1719,7 @@ instalación y no lo crea automáticamente. El programa queda correctamente instalado en */opt* y arranca correctamente, habrá que probarlo con los micros. -stm32 cubeide -------------- +## stm32 cubeide Nos bajamos el instalador genérico. Tendremos que: @@ -1719,8 +1734,7 @@ Nos bajamos el instalador genérico. Tendremos que: - udev/rules.d/49-stlinkv3.rules - udev/rules.d/99-jlink.rules -esp-idf -------- +## esp-idf Instalamos las dependencias (cmake ya lo tenemos instalado) @@ -1732,21 +1746,27 @@ instalarán automáticamente en el siguiente paso. ------------------------------------------------------------------------ - sudo apt-get install gperf cmake ninja-build ccache libffi-dev libssl-dev +``` {bash} +sudo apt-get install gperf cmake ninja-build ccache libffi-dev libssl-dev +``` Ahora creamos un directorio para nuestro *tool-chain*: - mkdir ~/esp - cd ~/esp - git clone --recursive https://github.com/espressif/esp-idf +``` {bash} +mkdir ~/esp +cd ~/esp +git clone --recursive https://github.com/espressif/esp-idf +``` También es necesario que nuestro usuario pertenezca al grupo `dialout`, pero eso ya deberíamos tenerlo hecho de antes. Una vez clonado el repo ejecutamos el script de instalación - cd ~/esp/esp-idf - ./install.sh +``` {bash} +cd ~/esp/esp-idf +./install.sh +``` Este script nos va a dejar instaladas todas las herramientas necesarias en el directorio `~/.expressif` @@ -1757,16 +1777,19 @@ Basta con editar la primera linea *shebang* del script. Estas son las bibliotecas que deja instaladas: - Installing ESP-IDF tools - Installing tools: xtensa-esp32-elf, xtensa-esp32s2-elf, esp32ulp-elf, esp32s2ulp-elf, openocd-esp32 +``` {bash} +Installing ESP-IDF tools +Installing tools: xtensa-esp32-elf, xtensa-esp32s2-elf, esp32ulp-elf, esp32s2ulp-elf, openocd-esp32 +``` Para empezar a trabajar bastará con hacer un *source* del fichero `~/apps/esp/esp-idf/export.sh`: - . ~/apps/esp/esp-idf/export.sh +``` {bash} +. ~/apps/esp/esp-idf/export.sh +``` -KiCAD ------ +## KiCAD En la [página web del proyecto](http://kicad-pcb.org/download/linux-mint/) nos recomiendan el @@ -1794,8 +1817,7 @@ Algunas librerías alternativas: Esta biblioteca de componentes está incluida en el github de KiCAD, así que teoricamente no habría que instalarla en nuestro disco duro. -Analizador lógico ------------------ +## Analizador lógico Mi analizador es un OpenBench de Seedstudio, [aquí hay mas info](http://dangerousprototypes.com/docs/Open_Bench_Logic_Sniffer) @@ -1804,7 +1826,9 @@ info](http://dangerousprototypes.com/docs/Open_Bench_Logic_Sniffer) Instalamos **Sigrok**, simplemente desde los repos de Debian: - sudo aptitude install sigrok +``` {bash} +sudo aptitude install sigrok +``` Al instalar **Sigrok** instalamos también **Pulseview**. @@ -1828,7 +1852,9 @@ página](https://www.sump.org/projects/analyzer/) y descomprimimos en Instalamos las dependencias: - sudo apt install librxtx-java +``` {bash} +sudo apt install librxtx-java +``` Editamos el fichero *\~/apps/Logic Analyzer/client/run.sh* y lo dejamos así: @@ -1850,8 +1876,7 @@ Y ya funciona. [Página oficial](https://www.lxtreme.nl/ols/) -IceStudio ---------- +## IceStudio Instalamos dependencias con `sudo apt install xclip` @@ -1859,8 +1884,7 @@ Bajamos el *AppImage* desde el [github de IceStudio](https://github.com/FPGAwars/icestudio) y lo dejamos en `~/apps/icestudio` -PlatformIO ----------- +## PlatformIO ### VS Code @@ -1904,9 +1928,11 @@ manualmente el entorno virtual con ### vscodium - wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/vscodium.gpg - echo 'deb https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs/ vscodium main' | sudo tee --append /etc/apt/sources.list.d/vscodium.list - sudo apt update && sudo apt install codium +``` {bash} +wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/vscodium.gpg +echo 'deb https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs/ vscodium main' | sudo tee --append /etc/apt/sources.list.d/vscodium.list +sudo apt update && sudo apt install codium +``` ### Editor Atom @@ -1922,8 +1948,7 @@ Platformio CLI, ahora en cambio recomiendan VS Code. sudo apt update sudo apt install atom -RepRap ------- +## RepRap ### OpenScad @@ -1973,32 +1998,34 @@ Clonamos el repo: Y ya lo tenemos todo listo para ejecutar. -Cortadora de vinilos --------------------- +## Cortadora de vinilos ### Inkcut Instalado en un entorno virtual: - mkvirtualenv -p `which python3` inkcut +``` {bash} +mkvirtualenv -p `which python3` inkcut - sudo apt install libxml2-dev libxslt-dev libcups2-dev +sudo apt install libxml2-dev libxslt-dev libcups2-dev - pip install PyQt5 +pip install PyQt5 - pip install inkcut +pip install inkcut +``` ### Plugin para inkscape Instalamos dependencias: - pip install python-usb +``` {bash} +pip install python-usb +``` Instalamos el fichero `.deb` desde la web -https://github.com/fablabnbg/inkscape-silhouette/releases + -Drone ------ +## Drone ### qgroundcontrol @@ -2010,7 +2037,9 @@ appimage](https://s3-us-west-2.amazonaws.com/qgroundcontrol/latest/QGroundContro Para usar *Mission Planner* en Linux Mint se recomienda instalar los paquetes: - sudo apt install mono-complete festival +``` {bash} +sudo apt install mono-complete festival +``` Descargamos el MissionPlanner desde [aquí](https://firmware.ardupilot.org/Tools/MissionPlanner/MissionPlanner-latest.zip) @@ -2020,8 +2049,7 @@ instalación](https://www.rcgroups.com/forums/showthread.php?2179591-Installing- Una vez descomprimido el `zip` ejecutamos: `mono MissionPlanner.exe` -node-red --------- +## node-red Para instalar node-red en linux necesitamos instalar primero `node.js`. Hay varias formas de instalar `node.js`, yo voy a optar por instalar @@ -2030,14 +2058,18 @@ Hay varias formas de instalar `node.js`, yo voy a optar por instalar Para ello ejecutamos el siguiente comando (la versión actual de `nvm` es la 0.37.0) - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash +``` bash +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash +``` El script de instalación añade las siguientes lineas al fichero `~/.bashrc`, nosotros las movemos al fichero `~/.profile` - export NVM_DIR="$HOME/.nvm" - [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm - [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion +``` bash +export NVM_DIR="$HOME/.nvm" +[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion +``` Para comprobar la instalación usamos `command -v nvm` que nos devolverá `nvm`. `which` no funciona en este caso por que es un script para @@ -2048,30 +2080,38 @@ aplicarle `source` Ahora que tenemos `nvm` instalado, ya podemos instalar fácilmente la versión o versiones que queramos de `node.js` - nvm ls-remote # para listar las versiones disponibles - nvm install node # instala la última versión disponible +``` bash +nvm ls-remote # para listar las versiones disponibles +nvm install node # instala la última versión disponible +``` ### Instalación de `mosquitto` `mosquitto` es un *mqtt broker* muy sencillo y completo, aunque no es capaz de aguantar cargas grandes, para aprender es perfecto. - sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa - sudo apt-get update - sudo apt install mosquitto mosquitto-clients +``` bash +sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa +sudo apt-get update +sudo apt install mosquitto mosquitto-clients +``` Con esto queda el servicio instalado y funcionando (`scs mosquitto` o `systemctl status mosquitto`) Si queremos el servicio parado para arrancarlo nosotros manualmente: - scsp mosquitto.service - scd mosquitto.service +``` bash +scsp mosquitto.service +scd mosquitto.service +``` Y sin alias sería: - sudo systemctl stop mosquitto.service - sudo systemctl disable mosquitto.service +``` bash +sudo systemctl stop mosquitto.service +sudo systemctl disable mosquitto.service +``` Para arrancarlo cuando lo necesitemos le damos un *start* con `scst mosquitto.service` o `sudo systemctl start mosquitto.service` @@ -2080,35 +2120,36 @@ Para arrancarlo cuando lo necesitemos le damos un *start* con Seguimos el método para ubuntu: - wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add - - #source /etc/lsb-release - DISTRIB_ID=ubuntu - DISTRIB_CODENAME=focal - echo "deb https://repos.influxdata.com/${DISTRIB_ID} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list +``` bash +wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add - +#source /etc/lsb-release +DISTRIB_ID=ubuntu +DISTRIB_CODENAME=focal +echo "deb https://repos.influxdata.com/${DISTRIB_ID} ${DISTRIB_CODENAME} stable" | sudo tee /etc/apt/sources.list.d/influxdb.list - apt update - apt install influxdb - apt install telegraf +apt update +apt install influxdb +apt install telegraf +``` ### Instalación de `node-red` Una vez instalado el `node.js` instalar el `node-red` es muy fácil - nvm use node - npm install -g --unsafe-perm node-red +``` bash +nvm use node +npm install -g --unsafe-perm node-red +``` -Aplicaciones de gráficos -======================== +# Aplicaciones de gráficos -LibreCAD --------- +## LibreCAD Diseño en 2D sudo apt install librecad -FreeCAD -------- +## FreeCAD No hay ppa disponible para Ubuntu 20. @@ -2128,8 +2169,7 @@ and needs to be installed separately. ------------------------------------------------------------------------ -Inkscape --------- +## Inkscape El programa libre para creación y edición de gráficos vectoriales. @@ -2137,16 +2177,17 @@ El programa libre para creación y edición de gráficos vectoriales. sudo apt update sudo apt install inkscape -Gimp ----- +## 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: - sudo apt install gimp gimp-data gimp-texturize \ - gimp-data-extras gimp-gap gmic gimp-gmic +``` {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: @@ -2164,16 +2205,23 @@ Para instalar los principales plugins basta con: sudo apt install gimp-plugin-registry -| | -|:-------------------------------------------------------------------------------------------------------------------------------------------| -| Esta sección ya no está vigente | -| \#\#\#\# resynthesizer | -| Descargamos el plugin desde [aquí](https://github.com/bootchk/resynthesizer) 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 \~\~\~\~ | +------------------------------------------------------------------------ + +Esta sección ya no está vigente + +#### resynthesizer -Krita ------ +Descargamos el plugin desde +[aquí](https://github.com/bootchk/resynthesizer) 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 @@ -2183,24 +2231,21 @@ 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 -------- +## MyPaint Desde el [github](https://github.com/mypaint/) tenemos disponible la última versión en formato *appimage*. La descargamos la dejamos en `~/apps` y creamos un acceso con *Menulibre*, como siempre. -Alchemy -------- +## Alchemy Igual que el *MyPaint* descargamos desde [la página web](http://al.chemy.org), descomprimimos en `~/apps` y creamos un accso con *Menulibre*. -Capturas de pantalla --------------------- +## Capturas de pantalla El [*flameshot*](https://flameshot.js.org/#/) cubre el 99% de mis necesidades: `sudo apt install flameshot` @@ -2211,12 +2256,13 @@ 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: - sudo add-apt-repository ppa:linuxuprising/shutter - sudo apt update - sudo apt install shutter +``` {bash} +sudo add-apt-repository ppa:linuxuprising/shutter +sudo apt update +sudo apt install shutter +``` -Reoptimizar imágenes --------------------- +## Reoptimizar imágenes ### ImageMagick @@ -2229,15 +2275,13 @@ Instalamos desde los repos, simplemente: Nos bajamos un *AppImage* desde el [github](https://github.com/meowtec/Imagine/releases) de la aplicación -dia ---- +## dia Un programa para crear diagramas sudo apt install dia dia-shapes gsfonts-x11 -Blender -------- +## Blender Bajamos el Blender linkado estáticamente de [la página web](https://www.blender.org) y lo descomprimimos en `~/apps/blender`. @@ -2245,26 +2289,22 @@ web](https://www.blender.org) y lo descomprimimos en `~/apps/blender`. El paquete incluye un fichero `blender.desktop` que podemos editar y copiar en `~/.local/share/applications`. -Structure Synth ---------------- +## Structure Synth Instalado desde repos, junto con sunflow para explorar un poco. sudo apt install structure-synth sunflow -Heron animation ---------------- +## Heron animation El proyecto parece abandonado. El software ya no funciona en el último linux. -Stopmotion ----------- +## Stopmotion Primero probamos el del repo: `sudo apt install stopmotion` -Instalación del driver digiment para tabletas gráficas Huion ------------------------------------------------------------- +## 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. @@ -2281,10 +2321,12 @@ en el momento de escribir esto descargamos la versión V9. Descomprimimos en `/usr/src/digimend-9` - cd /usr/src - sudo xvzf . - sudo dkms build digimend-kernel-drivers/9 - sudo dkms install digimend/9 +``` {bash} +cd /usr/src +sudo xvzf . +sudo dkms build digimend-kernel-drivers/9 +sudo dkms install digimend/9 +``` Para comprobar: @@ -2295,16 +2337,13 @@ Referencia: - [Aquí](https://davidrevoy.com/article331/setup-huion-giano-wh1409-tablet-on-linux-mint-18-1-ubuntu-16-04) -Sonido -====== +# Sonido -Spotify -------- +## Spotify Spotify instalado desde las opciones de Linux Mint via flatpak. -Audacity --------- +## Audacity El ppa de Audacity no permite instalar la última versión. Podemos instalarla via flatpak o simplemente instalar la de los repos (no es la @@ -2322,18 +2361,15 @@ Añadimos ppa: Instalamos también el plugin [Chris’s Dynamic Compressor plugin](https://theaudacitytopodcast.com/chriss-dynamic-compressor-plugin-for-audacity/) -Clementine ----------- +## Clementine La version disponible en los orígenes de software parece al dia: sudo apt install clementine -Video -===== +# Video -Shotcut -------- +## Shotcut Nos bajamos la *AppImage* para Linux desde la [página web](https://www.shotcut.org/). @@ -2344,20 +2380,17 @@ La dejamos en `~/apps/shotcut` y: chmod 744 Shotcutxxxxxx.AppImage ./Shotcutxxxxxx.AppImage -kdenlive --------- +## kdenlive Está disponible [en la web](https://kdenlive.org) como ppa o como *appimage*. Lo he bajado como *appimage* para probarlo. -Openshot --------- +## Openshot También descargado desde [su web](https://www.openshot.org) como *appimage*, para probar. Tienen un ppa disponible. -Grabación de screencast ------------------------ +## Grabación de screencast ### Vokoscreen, Kazam y SimpleScreenRecorder @@ -2372,12 +2405,13 @@ Escoge el que más te guste. Añadimos el repositorio - sudo add-apt-repository ppa:obsproject/obs-studio - sudo apt update - sudo apt install obs-studio +``` {bash} +sudo add-apt-repository ppa:obsproject/obs-studio +sudo apt update +sudo apt install obs-studio +``` -Grabación de podcast --------------------- +## Grabación de podcast ### Mumble @@ -2392,11 +2426,9 @@ instrucciones por si lo corrigen. sudo apt update sudo apt install mumble -Fotografía -========== +# Fotografía -Rawtherapee ------------ +## Rawtherapee Bajamos el AppImage desde la [página web](http://rawtherapee.com/) al directorio `~/apps/rawtherapee`. @@ -2408,8 +2440,7 @@ directorio `~/apps/rawtherapee`. Al ejecutarla la primera vez ya se encarga la propia aplicación de integrarse en nuestro sistema. -Darktable ---------- +## Darktable Instalamos ppa (ver [esta web](https://software.opensuse.org/download/package?package=darktable&project=graphics%3Adarktable)) @@ -2425,17 +2456,14 @@ Se instala la última versión de Darktable (3.0.2) linux no le gustan los ficheros con un ‘:’ Revisa `/etc/apt/trusted.gpg.d/` -Digikam -------- +## Digikam Instalado desde la [página web](https://www.digikam.org/) de la aplicación con appimage. -Seguridad -========= +# Seguridad -Autenticación en servidores por clave pública ---------------------------------------------- +## Autenticación en servidores por clave pública Generar contraseñas para conexión servidores remotos: @@ -2451,8 +2479,7 @@ del servidor remoto. [¿Cómo funciona esto?](https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process) -Claves gpg ----------- +## Claves gpg `gpg --gen-key` Para generar nuestra clave. @@ -2460,15 +2487,13 @@ Claves gpg cambiar más tarde. - **Siempre** hay que escoger la máxima longitud posible -Seahorse --------- +## Seahorse Para manejar todas nuestras claves con comodidad: `sudo apt install seahorse` -Conexión a github con claves ssh --------------------------------- +## 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. @@ -2516,14 +2541,15 @@ Ahora en los repos donde queramos usar ssh debemos cambiar el remote: git remote set-url origin git@github.com:$USER/$REPONAME.git -Signal ------- +## Signal El procedimiento recomendado en la página oficial: - 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 +``` bash +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 +``` ------------------------------------------------------------------------ @@ -2531,23 +2557,23 @@ El procedimiento recomendado en la página oficial: ------------------------------------------------------------------------ -Element (cliente de matrix.org) -------------------------------- +## Element (cliente de matrix.org) Instalamos con: - sudo apt install -y wget apt-transport-https +``` bash +sudo apt install -y wget apt-transport-https - sudo wget -O /usr/share/keyrings/riot-im-archive-keyring.gpg https://packages.riot.im/debian/riot-im-archive-keyring.gpg +sudo wget -O /usr/share/keyrings/riot-im-archive-keyring.gpg https://packages.riot.im/debian/riot-im-archive-keyring.gpg - echo "deb [signed-by=/usr/share/keyrings/riot-im-archive-keyring.gpg] https://packages.riot.im/debian/ default main" | sudo tee /etc/apt/sources.list.d/riot-im.list +echo "deb [signed-by=/usr/share/keyrings/riot-im-archive-keyring.gpg] https://packages.riot.im/debian/ default main" | sudo tee /etc/apt/sources.list.d/riot-im.list - sudo apt update +sudo apt update - sudo apt install element-desktop +sudo apt install element-desktop +``` -Lector DNI electrónico ----------------------- +## Lector DNI electrónico Descargamos la aplicación en formato `.deb` desde [la página de descargas del portal @@ -2556,7 +2582,9 @@ DNIe](https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112). Automáticamente nos instalará las dependecias: `libccid`, `pcsd` y `pinentry-gtk2`. A mayores instalamos: - sudo apt-get install pcsc-tools opensc +``` bash +sudo apt-get install pcsc-tools opensc +``` El opensc no es necesario para el DNIe, pero nos permite usar otras tarjetas. @@ -2623,11 +2651,9 @@ investigar con ayuda del `pcsc_scan` y herramientas similares. ------------------------------------------------------------------------ -Virtualizaciones y contenedores -=============================== +# Virtualizaciones y contenedores -Instalación de *virtualBox* ---------------------------- +## Instalación de *virtualBox* Lo hacemos con los origenes de software oficiales (alternativamente, podríamos hacerlo manualmente): @@ -2648,7 +2674,9 @@ varios paquetes con número de versión (p.ej. \_virtualbox.6.1), estos Instalamos el que nos interesa: - sudo apt install virtualbox-6.1 +``` {bash} +sudo apt install virtualbox-6.1 +``` **ATENCIÓN** @@ -2666,8 +2694,7 @@ 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 ----- +## qemu Un par de comprobaciones previas: @@ -2719,8 +2746,7 @@ Podemos comprobar el estado del servicio con `scs libvirtd` - [How to Install KVM on Ubuntu 20.04](https://www.tecmint.com/install-kvm-on-ubuntu/) -Docker ------- +## Docker Tenemos que añadir el repositorio correspondiente a nuestra distribución: @@ -2757,9 +2783,11 @@ cada reinicio del ordenador) La forma de pararlo es: - sudo systemctl stop docker - sudo systemctl disable docker - systemctl status docker +``` {bash} +sudo systemctl stop docker +sudo systemctl disable docker +systemctl status docker +``` Añadimos el *bundle* **docker** en nuestro fichero `~/.zshrc` para tener autocompletado en comandos de docker. @@ -2767,9 +2795,11 @@ autocompletado en comandos de docker. Para usar *docker* tendremos que arrancarlo, con los alias de nuestro sistema para *systemd* ejecutamos: - scst docker # para arrancar el servicio +``` {bash} +scst docker # para arrancar el servicio - scsp docker # para parar el servicio +scsp docker # para parar el servicio +``` ### docker-compose @@ -2788,11 +2818,9 @@ releases](https://github.com/docker/kitematic/releases) bajamos la La verdad es que me gusta más el CLI. -Utilidades para mapas y cartografía -=================================== +# Utilidades para mapas y cartografía -josm ----- +## josm Descargamos y añadimos la clave gpg: @@ -2814,8 +2842,7 @@ siguiente comando, pero tendréis actualizaciones diarias: Ya estamos listos para editar Open Street Map offline. -MOBAC ------ +## MOBAC Bajamos el paquete desde [la página web](http://mobac.sourceforge.net/) y descomprimimos en `~/apps/mobac` como de costumbre nos creamos una @@ -2829,8 +2856,7 @@ wiki](http://mobac.sourceforge.net/wiki/index.php/Custom_XML_Map_Sources) \*\[Cartografía digital\] (https://digimapas.blogspot.com.es/2015/01/oruxmaps-vii-mapas-de-mobac.html) -QGIS ----- +## QGIS Añadimos la clave gpg: @@ -2855,16 +2881,13 @@ E instalamos como siempre - [QGIS Tutorials](http://www.qgistutorials.com/es/docs/downloading_osm_data.html) -Recetas variadas -================ +# Recetas variadas -Añadir las claves GPG de un repo --------------------------------- +## Añadir las claves GPG de un repo sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2 -Solucionar problemas de menús duplicados usando menulibre ---------------------------------------------------------- +## Solucionar problemas de menús duplicados usando menulibre | | |:--------------------------------| @@ -2873,8 +2896,7 @@ Solucionar problemas de menús duplicados usando menulibre En el directorio `~/.config/menus/applications-merged` borramos todos los ficheros que haya. -Formatear memoria usb ---------------------- +## Formatear memoria usb “The driver descriptor says the physical block size is 2048 bytes, but Linux says it is 512 bytes.” @@ -2908,8 +2930,7 @@ 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. -Copiar la clave pública ssh en un servidor remoto -------------------------------------------------- +## 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'` @@ -2917,13 +2938,11 @@ O también: `ssh-copy-id -i ~/.ssh/id_rsa.pub username@remote.server` -ssh access from termux ----------------------- +## ssh access from termux -https://linuxconfig.org/ssh-into-linux-your-computer-from-android-with-termux + -SDR instalaciones varias ------------------------- +## SDR instalaciones varias Vamos a trastear con un dispositivo [RTL-SDR.com](https://www.rtl-sdr.com/). @@ -2946,8 +2965,7 @@ Seguimos los pasos de instalación: sudo apt-get install libusb-1.0-0-dev -Posible problema con modemmanager y micros programables -------------------------------------------------------- +## 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 @@ -2979,8 +2997,7 @@ https://starter-kit.nettigo.eu/2015/serial-port-busy-for-avrdude-on-ubuntu-with- https://www.codeproject.com/Tips/349002/Select-a-USB-Serial-Device-via-its-VID-PID -Programar los nanos con chip ch340 o ch341 ------------------------------------------- +## 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” @@ -2994,15 +3011,16 @@ que escoger: Y ya funciona todo. -Linux Mint 20 es *python agnostic* ----------------------------------- +## Linux Mint 20 es *python agnostic* En principio no podemos invocar a `python` por que no se ha escogido una versión por defecto. Tenemos dos opciones: - apt install python-is-python2 - apt install python-is-python3 +``` {bash} +apt install python-is-python2 +apt install python-is-python3 +``` “test” diff --git a/out/LinuxMintUlyana.dw b/out/LinuxMintUlyana.dw index faeee19..751051f 100644 --- a/out/LinuxMintUlyana.dw +++ b/out/LinuxMintUlyana.dw @@ -53,40 +53,44 @@ Yo nunca almaceno esta información en la nube, pero me permite tener controlado ¡Ojo!, nos hacemos ''%%root%%'' para ejecutar: - + sudo su - git config --global user.email xxxxx@whatever.com git config --global user.name "Name Surname" apt install etckeeper + //etckeeper// hara un control automático de tus ficheros de configuración en ''%%/etc%%'' Para echar una mirada a los //commits// creados puedes ejecutar: - + cd /etc sudo git log + ==== Controlar dotfiles con git ==== Vamos a crear un repo de git para controlar nuestros ficheros personales de configuración. Creamos el repo donde queramos - + mkdir usrcfg cd usrcfg git init git config core.worktree "/home/salvari" + Y ya lo tenemos, un repo que tiene el directorio de trabajo apuntando a nuestro //$HOME//. Podemos añadir los ficheros de configuración que queramos al repo: - + git add .bashrc git commit -m "Add some dotfiles" + Una vez que tenga añadidos los ficheros que quiero tener controlados pondré ''%%*%%'' en el fichero ''%%.git/info/exclude%%'' de mi repo para que ignore todos los ficheros de mi ''%%$HOME%%''. Cuando instalo algún programa nuevo añado a mano los ficheros de configuración al repo. @@ -101,7 +105,7 @@ El area de intercambio la hemos creado en el disco duro hdd, no se usará mucho Añadimos el parámetro ''%%noatime%%'' para las particiones de ''%%root%%'' y ''%%/home%%'', que si que se han creado en el ssd. - + # /etc/fstab: static file system information. # # Use 'blkid' to print the universally unique identifier for a @@ -120,13 +124,15 @@ UUID=ce11ccb0-a67d-4e8b-9456-f49a52974160 none swap sw # swap was on /dev/sdc5 during installation UUID=11090d84-ce98-40e2-b7be-dce3f841d7b4 none swap sw 0 0 + Una vez modificado el ''%%/etc/fstab%%'' no hace falta arrancar, basta con ejecutar lo siguiente: - + mount -o remount / mount -o remount /home mount + ==== Ajustar Firefox ==== Las diferencias de rendimiento del Firefox con estos ajustes son bastante notables. @@ -148,10 +154,11 @@ TODO: Comprobar //trim// en mi disco duro. Y mirar [[https://easylinuxtipsprojec Instalamos algunas fuentes desde los orígenes de software: - + sudo apt install ttf-mscorefonts-installer sudo apt install fonts-noto + Y la fuente [[https://robey.lag.net/2010/06/21/mensch-font.html|Mensch]] la bajamos directamente al directorio ''%%~/.local/share/fonts%%'' Puede ser conveniente instalar el paquete //font-manager// (''%%sudo apt install font-manager%%''), sólo lo uso para visualizar fuentes, no para hacer configuración. @@ -166,7 +173,7 @@ Otras fuentes muy interesantes ''%%ufw%%'' y ''%%gufw%%'' vienen instalados por defecto, pero no activados. - + aptitude install ufw ufw default deny ufw enable @@ -174,6 +181,7 @@ ufw status verbose aptitude install gufw + ---- > **Nota**: Ojo con el log de ''%%ufw%%'', tampoco le sienta muy bien al ssd esa escritura masiva. Yo normalmente lo dejo desactivado excepto cuando valido una nueva configuración. @@ -201,9 +209,10 @@ sudo apt install keepass2 gnucash deluge rsync grsync rar unrar \ zip unzip unace bzip2 lzop p7zip p7zip-full p7zip-rar \ most mc tree neofetch fasd + * **Chromium** Como Chrome pero libre, ahora en Ubuntu solo está disponible como snap así que tendremos que dar un rodeo. - + sudo add-apt-repository ppa:xalt7x/chromium-deb-vaapi cat < + ===== Algunos programas de control del sistema ===== Son útiles para control de consumo. @@ -221,29 +231,33 @@ Son útiles para control de consumo. sudo apt install tlp tlp-rdw htop powertop + ===== Programas de terminal ===== Dos imprescindibles: - + sudo apt install guake terminator + //terminator// lo dejamos como aplicación terminal preferida del sistema. **TODO:** asociar //Guake// a una combinación apropiada de teclas. También instalo //rxvt// para tener una alternativa ligera al //terminator//. - + sudo apt install rxvt-unicode + ==== tmux ==== //tmux// combinado por ejemplo con //rxvt// nos da la misma funcionalidad que //Terminator//, además merece la pena aprender a usarlo por que instalado en servidores remotos es increíblemente útil. - + sudo apt install tmux + [[https://leanpub.com/the-tao-of-tmux/read|El tao de tmux]] [[https://www.askapache.com/linux/rxvt-xresources/|rxvt customizations]] ===== Dropbox ===== @@ -272,6 +286,7 @@ freeplane ├── freeplane-1.7.10 └── freeplane-1.7.11 +

Vemos que el enlace apunta a la versión más reciente de //freeplane//.

  • Añadimos la aplicación a los menús, al hacer esto se creará un fichero ''%%.desktop%%'' en el directorio ''%%~/.local/share/applications%%''

  • @@ -295,13 +310,14 @@ Descargamos desde la [[https://www.torproject.org/|página oficial del proyecto] cd ~/apps/tor-browser ./start-tor-browser.desktop --register-app
    + Tor se encarga tanto de crear el fichero ''%%.desktop%%'' como de mantenerse actualizado a la última versión. ==== Brave browser ==== Instalamos siguiendo las instrucciones de la [[https://brave-browser.readthedocs.io/en/latest/installing-brave.html#linux|página web oficial]] - + curl -s https://brave-browser-apt-release.s3.brave.com/brave-core.asc | sudo apt-key --keyring /etc/apt/trusted.gpg.d/brave-browser-release.gpg add - echo "deb [arch=amd64] https://brave-browser-apt-release.s3.brave.com/ stable main" | sudo tee /etc/apt/sources.list.d/brave-browser-release.list @@ -310,6 +326,7 @@ sudo apt update sudo apt install brave-browser + ==== TiddlyDesktop ==== Descargamos desde la [[https://github.com/Jermolene/TiddlyDesktop|página web]], descomprimimos y generamos la entrada en el menú. @@ -320,9 +337,10 @@ Una herramienta libre para mantener notas sincronizadas entre el móvil y el por Instalamos siguiendo las instrucciones de la [[https://joplinapp.org/|página web]] - + wget -O - https://raw.githubusercontent.com/laurent22/joplin/master/Joplin_install_and_update.sh | bash + Joplin se instala en el directorio ''%%~/.joplin%%'' y crea su propia entrada en el menú. ===== Terminal y shells ===== @@ -342,23 +360,27 @@ apt install python-all-dev apt install python3-all-dev apt install virtualenv virtualenvwrapper python3-virtualenv + //zsh// viene por defecto en mi instalación, en caso contrario: apt install zsh + Para //zsh// vamos a usar [[https://github.com/zsh-users/antigen|antigen]], así que nos lo clonamos en ''%%~/apps/%%'' cd ~/apps git clone https://github.com/zsh-users/antigen + También vamos a usar [[https://github.com/olivierverdier/zsh-git-prompt|zsh-git-prompt]], así que lo clonamos también: cd ~/apps git clone https://github.com/olivierverdier/zsh-git-prompt) + Y editamos el fichero ''%%~/.zshrc%%'' para que contenga: @@ -413,6 +435,7 @@ antigen apply unalias rm alias rmi='rm -i' + Para usar //virtualenvwrapper// hay que decidir en que directorio queremos salvar los entornos virtuales. El obvio seria ''%%~/.virtualenvs%%'' la alternativa sería ''%%~/.local/share/virtualenvs%%''. El que escojamos lo tenemos que crear y añadirlo a nuestro ''%%~/.profile%%'' con las líneas: @@ -423,6 +446,7 @@ if [ -d "$HOME/.virtualenvs" ] ; then WORKON_HOME="$HOME/.virtualenvs" fi + Después de seguir estos pasos basta con arrancar el //zsh// //Antigen// ya se encarga de descargar todos los plugins que queramos utilizar en zsh. Todos el software se descarga en ''%%~/.antigen%%'' @@ -439,6 +463,7 @@ else echo "$STATUS" fi
    + También he cambiado el fichero del tema //gnzh// en ''%%~/.antigen/bundles/robbyrussell/oh-my-zsh/themes/gnzh.zsh-theme%%'' por que me interesa ver la versión python asociada a cada virtualenv. ===== Utilidades ===== @@ -452,16 +477,18 @@ Instalamos //gpick// con ''%%sudo apt install gpick%%'' sudo apt-get install mint-meta-codecs + ===== Syncthing ===== Añadimos el ppa: - + curl -s https://syncthing.net/release-key.txt | sudo apt-key add - echo "deb https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list sudo apt-get update sudo apt-get install syncthing + ====== Utilidades ======
    @@ -498,6 +525,7 @@ Instalamos desde la página web(https:%%//%%rclone.org/), descargando el fichero curl https://rclone.org/install.sh | sudo bash + ==== Recetas rclone ==== Copiar directorio local en la nube: @@ -505,16 +533,19 @@ Copiar directorio local en la nube: rclone copy /localdir hubic:backup -vv + Si queremos ver el directorio en la web de Hubic tenemos que copiarlo en //default//: rclone copy /localdir hubic:default/backup -vv + Sincronizar una carpeta remota en local: rclone sync hubic:directorio_remoto /home/salvari/directorio_local -vv + ==== Referencias ==== * [[https://elblogdelazaro.gitlab.io//articles/rclone-sincroniza-ficheros-en-la-nube/|Como usar rclone (blogdelazaro)]] @@ -535,10 +566,11 @@ Este programa no para de escribir en el disco continuamente. He dejado de usarlo Si de todas formas lo quieres instalar, aquí tienes los comandos: - + sudo add-apt-repository ppa:go-for-it-team/go-for-it-daily && sudo apt-get update sudo apt-get install go-for-it + ====== Documentación ====== ===== Vanilla LaTeX ===== @@ -555,17 +587,20 @@ wget http://mirror.ctan.org/systems/texlive/tlnet/install-tl-unx.tar.gz tar xzf install-tl-unx.tar.gz cd install-tl-xxxxxx + La parte xxxxxx varía en función del estado de la última versión de LaTeX disponible. sudo ./install-tl + Una vez lanzada la instalación podemos desmarcar las opciones que instalan la documentación y las fuentes. Eso nos obligará a consultar la documentación on line pero ahorrará practicamente el 50% del espacio necesario. En mi caso sin doc ni src ocupa 2,3Gb mkdir -p /opt/texbin sudo ln -s /usr/local/texlive/2020/bin/x86_64-linux/* /opt/texbin + Por último para acabar la instalación añadimos ''%%/opt/texbin%%'' al //PATH//. Para //bash// y //zsh// basta con añadir al fichero ''%%~/.profile%%'' las siguientes lineas: @@ -574,11 +609,13 @@ if [ -d "/opt/texbin" ] ; then PATH="$PATH:/opt/texbin" fi + En cuanto a //fish// (si es que lo usas, claro) tendremos que modificar (o crear) el fichero ''%%~/.config/fish/config.fish%%'' y añadir la siguiente linea: set PATH $PATH /opt/texbin + ==== Falsificando paquetes ==== Ya tenemos el //texlive// instalado, ahora necesitamos que el gestor de paquetes sepa que ya lo tenemos instalado. @@ -588,23 +625,27 @@ sudo apt install equivs --no-install-recommends mkdir -p /tmp/tl-equivs && cd /tmp/tl-equivs equivs-control texlive-local + Alternativamente para hacerlo más fácil podemos descargarnos un fichero ''%%texlive-local%%''ya preparado, ejecutando: wget http://www.tug.org/texlive/files/debian-equivs-2018-ex.txt /bin/cp -f debian-equivs-2020-ex.txt texlive-local + Editamos la versión (si queremos) y procedemos a generar el paquete //deb//. equivs-build texlive-local + El paquete que hemos generado tiene una dependencia: //freeglut3//, hay que instalarla previamente. sudo apt install freeglut3 sudo dpkg -i texlive-local_2020-1_all.deb + Todo listo, ahora podemos instalar cualquier paquete debian que dependa de //texlive// sin problemas de dependencias, aunque no hayamos instalado el //texlive// de Debian. ==== Fuentes ==== @@ -615,32 +656,38 @@ Para dejar disponibles las fuentes opentype y truetype que vienen con texlive pa sudo cp $(kpsewhich -var-value TEXMFSYSVAR)/fonts/conf/texlive-fontconfig.conf /etc/fonts/conf.d/09-texlive.conf sudo nano /etc/fonts/conf.d/09-texlive.conf + Borramos la linea: /usr/local/texlive/20xx/texmf-dist/fonts/type1 + Y ejecutamos: sudo fc-cache -fsv + Actualizaciones Para actualizar nuestro //latex// a la última versión de todos los paquetes: sudo /opt/texbin/tlmgr update --self sudo /opt/texbin/tlmgr update --all + También podemos lanzar el instalador gráfico con: sudo /opt/texbin/tlmgr --gui + Para usar el instalador gráfico hay que instalar previamente: sudo apt-get install perl-tk --no-install-recommends + Lanzador para el actualizador de //texlive//: @@ -658,6 +705,7 @@ Type=Application Icon=system-software-update EOF + ===== Tipos de letra ===== Creamos el directorio de usuario para tipos de letra: @@ -665,6 +713,7 @@ Creamos el directorio de usuario para tipos de letra: mkdir ~/.local/share/fonts + ===== Fuentes Adicionales ===== Me he descargado de internet la fuente [[https://robey.lag.net/downloads/mensch.ttf|Mensch]] el directorio de usuario para los tipos de letra: ''%%~/.local/share/fonts%%'' @@ -677,6 +726,7 @@ git clone https://github.com/ProgrammingFonts/ProgrammingFonts cd ~/.local/share/fonts ln -s ~/wherever/ProgrammingFonts/Menlo . + La fuente Hack la he instalado directamente desde el [[https://sourcefoundry.org/hack/|sitio web]] ===== Pandoc ===== @@ -692,6 +742,7 @@ mkdir ~/.pandoc cd ~/.pandoc git clone https://github.com/jgm/pandoc-templates templates + Las plantillas no son imprescindibles pero si quieres aprender a usarlas o hacer alguna modificación viene bien tenerlas. ===== Algunos editores adicionales ===== @@ -710,6 +761,7 @@ Ejecutamos lo que manda la página web: sudo -v && wget -nv -O- https://download.calibre-ebook.com/linux-installer.sh | sudo sh /dev/stdin + El programa queda instalado en ''%%/opt/calibre%%''. Se puede desinstalar con el comando ''%%sudo calibre-unistall%%''. Para usar el calibre con el Kobo Glo: @@ -742,6 +794,7 @@ sudo add-apt-repository ppa:scribus/ppa sudo apt update sudo apt install scribus scribus-ng scribus-template scribus-ng-doc + ==== Cambiados algunos valores por defecto ==== He cambiado los siguientes valores en las dos versiones, non están exactamente en el mismo menú pero no son díficiles de encontrar: @@ -782,6 +835,7 @@ Estos son los paquetes esenciales para empezar a desarrollar software en Linux. sudo apt install build-essential checkinstall make automake cmake autoconf \ git git-core git-crypt dpkg wget + ===== Git ===== @@ -789,12 +843,13 @@ git git-core git-crypt dpkg wget **NOTA**: Si quieres instalar la última versión de git, los git developers tienen un ppa para ubuntu, si quieres tener el git más actualizado: - + sudo add-apt-repository ppa:git-core/ppa sudo apt update sudo apt upgrade + ---- Control de versiones distribuido. Imprescindible. Para //Linux Mint// viene instalado por defecto. @@ -828,6 +883,7 @@ git config --global alias.co checkout git config --global alias.br branch git config --global core.editor emacs + ===== Emacs ===== Instalado emacs desde los repos: @@ -835,6 +891,7 @@ Instalado emacs desde los repos: sudo aptitude install emacs + ===== Lenguaje de programación D (D programming language) ===== El lenguaje de programación D es un lenguaje de programación de sistemas con una sintaxis similar a la de C y con tipado estático. Combina eficiencia, control y potencia de modelado con seguridad y productividad. @@ -848,11 +905,13 @@ sudo wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /et sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EBCF975E5BA24D5E sudo apt update + Instalamos todos los programas asociados excepto //textadept// que no uso. sudo apt install dmd-compiler dmd-tools dub dcd dfix dfmt dscanner + ==== DCD ==== Una vez instalado el DCD tenemos que configurarlo creando el fichero ''%%~/.config/dcd/dcd.conf%%'' con el siguiente contenido: @@ -861,12 +920,14 @@ Una vez instalado el DCD tenemos que configurarlo creando el fichero ''%%~/.conf /usr/include/dmd/druntime/import /usr/include/dmd/phobos + Podemos probarlo con: dcd-server & echo | dcd-client --search toImpl + ==== gdc ==== Instalado con: @@ -874,6 +935,7 @@ Instalado con: sudo aptitude install gdc + ==== ldc ==== Instalado con: @@ -881,11 +943,13 @@ Instalado con: sudo aptitude install ldc + Para poder ejecutar aplicaciones basadas en Vibed, necesitamos instalar: sudo apt-get install -y libssl-dev libevent-dev + ==== Emacs para editar D ==== Instalados los siguientes paquetes desde Melpa @@ -906,9 +970,10 @@ Referencias * (https:%%//%%github.com/atilaneves/ac-dcd) * (https:%%//%%github.c Para instalar las dependencias, previamente instalamos: - + sudo apt install ncurses-dev id-utils exuberant-ctags python-pygments + Con ''%%ctags --version%%'' nos aseguramos de que se llama a Exuberant y no el ctags que instala Emacs. Si no es así habrá que revisar la definición del ''%%PATH%%'' ''%%python-pygments%%'' no es necesario para C o C++, pero añade funcionalidad a Global (hasta 25 lenguajes de programación más) @@ -919,18 +984,19 @@ Nos bajamos las fuentes del programa desde [[https://www.gnu.org/software/global Descomprimimos los fuentes y los compilamos con: - + ./configure --prefix=/usr/local --with-exuberant-ctags=/usr/bin/ctags make sudo make install + He comprobado que make uninstall funciona correctamente, las librerías quedan instaladas en ''%%/usr/local/lib/gtags%%'' y los ejecutables en ''%%/usr/local/bin%%'' ===== Rust ===== Instalamos siguiendo las instrucciones de [[https://www.rust-lang.org/tools/install|aqui]] (Hacemos la instalación por defecto) - + curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh stable installed - rustc 1.47.0 (18bf6b4f0 2020-10-07) @@ -943,8 +1009,8 @@ environment variable. Next time you log in this will be done automatically. To configure your current shell run source $HOME/.cargo/env - + Yo comento la linea del fichero ''%%.zprofile%%'' por que mi ''%%.zshrc%%'' ya lee el fichero ''%%.profile%%'' Para desinstalar ''%%rust%%'' bastaría con ejecutar ''%%rustup self uninstall%%'' @@ -958,6 +1024,7 @@ Descomprimimos como //root// en ''%%/usr/local/%%'' sudo tar -C /usr/local -xvzf go1.15.7.linux-amd64.tar.gz + Añadimos al path con las siguientes lineas en ''%%~/.profile%%'': @@ -971,6 +1038,7 @@ if [ -d "$HOME/work/development/gocode" ] ; then PATH="$PATH:$GOPATH/bin" fi + ==== Instalación de gopls un servidor de LSP para editores: ==== Desde un directorio **que no sea el GOPATH** @@ -978,6 +1046,7 @@ Desde un directorio **que no sea el GOPATH** GO111MODULE=on go get golang.org/x/tools/gopls@latest + ===== Processing ===== Bajamos el paquete de la [[https://processing.org/|página web]], descomprimimimos en ''%%~/apps/%%'', en las nuevas versiones incorpora un script de instalación que ya se encarga de crear el fichero //desktop//. @@ -996,12 +1065,13 @@ En la primera pregunta que nos hace es necesario contestar que no. De lo contrar Añade los siguientes paquetes a nuestro sistema - + installing OF dependencies OF needs to install the following packages using apt-get: curl libjack-jackd2-0 libjack-jackd2-dev freeglut3-dev libasound2-dev libxmu-dev libxxf86vm-dev g++ libgl1-mesa-dev libglu1-mesa-dev libraw1394-dev libudev-dev libdrm-dev libglew-dev libopenal-dev libsndfile-dev libfreeimage-dev libcairo2-dev libfreetype6-dev libssl-dev libpulse-dev libusb-1.0-0-dev libgtk-3-dev libopencv-dev libassimp-dev librtaudio-dev libboost-filesystem-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-libav gstreamer1.0-pulseaudio gstreamer1.0-x gstreamer1.0-plugins-bad gstreamer1.0-alsa gstreamer1.0-plugins-base gstreamer1.0-plugins-good gdb libglfw3-dev liburiparser-dev libcurl4-openssl-dev libpugixml-dev libgconf-2-4 libgtk2.0-0 libpoco-dev Do you want to continue? [Y/n] + No te olvides de compilar también el //Project Generator//. ===== Python ===== @@ -1014,32 +1084,35 @@ Para escoger un python por defecto tenemos dos paquetes que podemos instalar: '' En principio yo no quería instalar ninguno para averigüar que paquetes no funcionaban, pero la instalación de VirtualBox hizo que se instalara automáticamente el paquete ''%%python-is-python2%%''. - + python2 -V Python 2.7.18rc1 python3 -V Python 3.8.2 + ==== Paquetes de python instalados ==== Son los que ya comentamos en la sección de instalación de zsh, como ya dijimos conviene que instalemos los paquetes de desarrollo: - + sudo apt install python2-dev sudo apt install python-all-dev sudo apt install python3-dev sudo apt install python3-all-dev sudo apt install virtualenv virtualenvwrapper python3-virtualenv + Ademas añadimos las siguientes lineas al fichero ''%%~/.profile%%'': - + # WORKON_HOME for virtualenvwrapper if [ -d "$HOME/.virtualenvs" ] ; then WORKON_HOME="$HOME/.virtualenvs" fi + [[https://virtualenvwrapper.readthedocs.io/en/latest/command_ref.html|Aquí]] tenemos la referencia de comandos de //virtualenvwrapper//. ==== Instalación de bpython y ptpython ==== @@ -1052,17 +1125,19 @@ fi Una instalación para pruebas. - + mkvirtualenv -p /usr/bin/python3 jupyter python -m pip install jupyter + ==== Instalamos python3.9 ==== ''%%python3.9%%'' está ya disponible en los repos oficiales. Para dejarla instalada: - + sudo apt install python3.9 python3.9-dev python3.9-venv + ==== pyenv ==== Instalamos los pre-requisitos: @@ -1074,16 +1149,19 @@ libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ wget curl llvm libncurses5-dev xz-utils tk-dev \ libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev + Podemos clonar el repo en nuestro ''%%home%%'': git clone https://github.com/pyenv/pyenv.git ~/.pyenv + Pero también podemos añadir el //bundle// para //Antigen// en el fichero ''%%.zshrc%%'' y dejar que se encargue de todo. antigen bundle mattberther/zsh-pyenv + Añadimos al fichero ''%%~/.profile%%'': @@ -1093,6 +1171,7 @@ if [ -d "$HOME/.pyenv" ] ; then export PATH="$PYENV_ROOT/bin:$PATH" fi + Y configuramos en ''%%~/.bashrc%%'' y en ''%%~/.zshrc%%'' (aunque en el último no es necesario tocar nada si usamos el //bundle// para //Antigen//): @@ -1100,6 +1179,7 @@ if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init -)" fi + Podemos probar que todo funciona con: ''%%pyenv install -l%%'' Una vez instalado hay que estudiarse [[https://github.com/pyenv/pyenv/blob/master/COMMANDS.md|la referencia de comandos]] @@ -1115,6 +1195,7 @@ sudo apt-add-repository ppa:neovim-ppa/stable sudo apt update sudo apt install neovim + Para instalar los módulos de python creamos un //virtualev// que más tarde añadiremos al fichero ''%%init.vim%%''. @@ -1122,6 +1203,7 @@ mkvirtualenv -p /usr/bin/python3 neovim3 sudo pip install --upgrade neovim deactivate + Revisar [[https://neovim.io/doc/user/provider.html#provider-python|esto]] |**NOTA**: El siguiente paso ya no parece necesario, las alternativas | @@ -1135,6 +1217,7 @@ sudo update-alternatives --config vi sudo update-alternatives --install /usr/bin/vim vim /usr/bin/nvim 60 sudo update-alternatives --config vim + === Install vim-plug === Ejecutamos: @@ -1143,6 +1226,7 @@ Ejecutamos: curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim + Configuramos el fichero de configuración de //nvim// (''%%~/.config/nvim/init.vim%%''): @@ -1170,8 +1254,8 @@ let g:deoplete#enable_at_startup = 1 let g:python_host_prog = '/full/path/to/neovim2/bin/python' let g:python3_host_prog = '/home/salvari/.virtualenvs/neovim3/bin/python' - + La primera vez que abramos //nvim// tenemos que instalar los plugin porn comando ejecutando: ''%%:PlugInstall%%'' **Instalación de ''%%dein%%''** @@ -1204,6 +1288,7 @@ endif filetype plugin indent on syntax enable + ===== Firefox developer edition ===== El rollo de siempre, descargar desde [[https://www.mozilla.org/en-US/firefox/developer/|la página web]] descomprimir en ''%%~/apps%%'' y crear un lanzador. @@ -1212,9 +1297,10 @@ El rollo de siempre, descargar desde [[https://www.mozilla.org/en-US/firefox/dev Herramientas útiles para depuración web - + sudo apt install httpie links + ===== MariaDB ===== Instalamos la última estable para Ubuntu Fossa desde los repos oficiales. @@ -1223,9 +1309,10 @@ Primero añadimos los repos. Añadimos la clave de firma: - + sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc' + Ahora tenemos dos opciones: Podemos ejecutar: @@ -1233,6 +1320,7 @@ Podemos ejecutar: sudo add-apt-repository 'deb [arch=amd64,arm64,ppc64el] http://mariadb.mirror.liteserver.nl/repo/10.5/ubuntu focal main' + O podemos crear un fichero ''%%/etc/apt/apt.sources.list.d/MariaDB%%'' con el siguiente contenido (yo dejo las fuentes comentadas): @@ -1241,6 +1329,7 @@ O podemos crear un fichero ''%%/etc/apt/apt.sources.list.d/MariaDB%%'' con el si deb [arch=amd64] http://mariadb.mirror.liteserver.nl/repo/10.5/ubuntu focal main # deb-src http://mariadb.mirror.liteserver.nl/repo/10.5/ubuntu focal main + Y ya solo nos queda lo de siempre: @@ -1248,6 +1337,7 @@ sudo apt update sudo apt upgrade sudo apt install mariadb-server + Podemos comprobar con ''%%systemctl status mariadb%%'' También podemos hacer login con el usuario ''%%root%%'': @@ -1255,6 +1345,7 @@ También podemos hacer login con el usuario ''%%root%%'': sudo mariadb -u root + **Ojo**, hay que hacer ''%%sudo%%'', el comando ''%%mariadb -u root%%'' no funciona. Y ahora aseguramos la instación con: @@ -1262,6 +1353,7 @@ Y ahora aseguramos la instación con: sudo mysql_secure_installation + Yo diría que tienes que decir que si a todas las preguntas, excepto quizás al //unix_socket_authentication//. Por último sólo nos queda decidir si el servicio mariadb debe estar ejecutándose permanentemente o no. @@ -1272,6 +1364,7 @@ Si queremos pararlo y que no se arranque automáticamente al arrancar el ordenad sudo systemctl stop mariadb sudo systemctl disable mariadb + ===== Squirrel SQL Client ===== Bajamos el zip de estándar desde [[http://www.squirrelsql.org/|la página web de Squirrel]] (yo prefiero no usar el instalador) @@ -1286,12 +1379,13 @@ Configuramos el driver para que sepa donde está el fichero ''%%.jar%%'' y ya es Primero instalamos la última versión de R en nuestro pc: - + sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9 sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu focal-cran40/' sudo apt update sudo apt install r-base + ==== R-studio ==== Descargamos la última versión disponible de //R-studio// desde la [[https://rstudio.com/products/rstudio/download-server/debian-ubuntu/|página web]] @@ -1305,6 +1399,7 @@ Instalado desde flatpak sudo flatpak install flathub org.octave.Octave + ====== Desarrollo hardware ====== ===== Arduino IDE ===== @@ -1325,6 +1420,7 @@ sudo gpasswd --add dialout sudo gpasswd --add uucp sudo gpasswd --add plugdev + Creamos los siguientes ficheros en el directorio ''%%/etc/udev/rules.d%%'' Fichero ''%%90-extraacl.rules%%'' mete mi usario en el fichero de reglas (¬_¬) @@ -1335,6 +1431,7 @@ Fichero ''%%90-extraacl.rules%%'' mete mi usario en el fichero de reglas (¬_¬) KERNEL=="ttyUSB[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari" KERNEL=="ttyACM[0-9]*", TAG+="udev-acl", TAG+="uaccess", OWNER="salvari" + Fichero ''%%98-openocd.rules%%'' @@ -1350,6 +1447,7 @@ ATTRS{product}=="*CMSIS-DAP*", MODE="664", GROUP="plugdev" LABEL="openocd_rules_end" + Fichero ''%%avrisp.rules%%'' @@ -1365,6 +1463,7 @@ ATTR{idVendor}=="03eb", ATTRS{idProduct}=="2107", MODE="660", GROUP="dialout" LABEL="avrisp_end" + Fichero ''%%40-defuse.rules%%'': @@ -1375,6 +1474,7 @@ Fichero ''%%40-defuse.rules%%'': ACTION=="add", SUBSYSTEM=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="df11", MODE="664", GROUP="plugdev", TAG+="uaccess" + Fichero ''%%99-arduino-101.rules%%'': @@ -1383,6 +1483,7 @@ Fichero ''%%99-arduino-101.rules%%'': SUBSYSTEM=="tty", ENV{ID_REVISION}=="8087", ENV{ID_MODEL_ID}=="0ab6", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1", ENV{ID_MM_CANDIDATE}="0" SUBSYSTEM=="usb", ATTR{idVendor}=="8087", ATTR{idProduct}=="0aba", MODE="0666", ENV{ID_MM_DEVICE_IGNORE}="1" + Yo añado el fichero ''%%99-arduino.rules%%'' que se encarga de inhibir el modemmanager para que no capture al //CircuitPlayground Express//: @@ -1391,6 +1492,7 @@ 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" + ==== Añadir soporte para Feather M0 ==== Arrancamos el IDE Arduino y en la opción de //Preferences::Aditional Boar Managers URLs// añadimos la dirección ''%%https://adafruit.github.io/arduino-board-index/package_adafruit_index.json%%'', si tenemos otras URL, simplemente añadimos esta separada por una coma. @@ -1491,39 +1593,44 @@ Instalamos las dependencias (cmake ya lo tenemos instalado) ---- - + sudo apt-get install gperf cmake ninja-build ccache libffi-dev libssl-dev + Ahora creamos un directorio para nuestro //tool-chain//: - + mkdir ~/esp cd ~/esp git clone --recursive https://github.com/espressif/esp-idf + También es necesario que nuestro usuario pertenezca al grupo ''%%dialout%%'', pero eso ya deberíamos tenerlo hecho de antes. Una vez clonado el repo ejecutamos el script de instalación - + cd ~/esp/esp-idf ./install.sh + Este script nos va a dejar instaladas todas las herramientas necesarias en el directorio ''%%~/.expressif%%'' **Nota**: para que funcione correctamente en Linux Mint es necesario que el script ''%%tools/idf_tools.py%%'' apunte al python3 de nuestro sistema. Basta con editar la primera linea //shebang// del script. Estas son las bibliotecas que deja instaladas: - + Installing ESP-IDF tools Installing tools: xtensa-esp32-elf, xtensa-esp32s2-elf, esp32ulp-elf, esp32s2ulp-elf, openocd-esp32 + Para empezar a trabajar bastará con hacer un //source// del fichero ''%%~/apps/esp/esp-idf/export.sh%%'': - + . ~/apps/esp/esp-idf/export.sh + ===== KiCAD ===== En la [[http://kicad-pcb.org/download/linux-mint/|página web del proyecto]] nos recomiendan el ppa a usar para instalar la última versión estable: @@ -1533,6 +1640,7 @@ sudo add-apt-repository --yes ppa:kicad/kicad-5.1-releases sudo apt-get update sudo apt install kicad + Paciencia, el paquete ''%%kicad-packages3d%%'' tarda un buen rato en descargarse. Algunas librerías alternativas: @@ -1548,9 +1656,10 @@ Mi analizador es un OpenBench de Seedstudio, [[http://dangerousprototypes.com/do Instalamos **Sigrok**, simplemente desde los repos de Debian: - + sudo aptitude install sigrok + Al instalar **Sigrok** instalamos también **Pulseview**. Si al conectar el analizador, echamos un ojo al fichero //syslog// vemos que al conectarlo se mapea en un puerto tty. @@ -1565,9 +1674,10 @@ Descargamos el paquete de la [[https://www.sump.org|página del proyecto]], o m Instalamos las dependencias: - + sudo apt install librxtx-java + Editamos el fichero //~/apps/Logic Analyzer/client/run.sh// y lo dejamos así: @@ -1576,6 +1686,7 @@ Editamos el fichero //~/apps/Logic Analyzer/client/run.sh// y lo dejamos así: # java -jar analyzer.jar $* java -cp /usr/share/java/RXTXcomm.jar:analyzer.jar org.sump.analyzer.Loader + Y ya funciona. ==== OLS ==== @@ -1607,12 +1718,14 @@ curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > package sudo install -o root -g root -m 644 packages.microsoft.gpg /usr/share/keyrings/ sudo sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/vscode stable main" > /etc/apt/sources.list.d/vscode.list' + E instalamos sudo apt update sudo apt install code # alternativamente code-insiders (es como la versión beta, se pueden instalar los dos) + Ahora - lanzamos el editor @@ -1635,15 +1748,17 @@ if [ -d "$HOME/.platformio/penv/bin"] ; then PATH="$PATH:$HOME/.platformio/penv/bin" fi + Si quieres usar Platformio desde linea de comandos, es mejor activar manualmente el entorno virtual con ''%%source ~/.platformio/penv/bin/activate%%'' ==== vscodium ==== - + wget -qO - https://gitlab.com/paulcarroty/vscodium-deb-rpm-repo/raw/master/pub.gpg | gpg --dearmor | sudo dd of=/etc/apt/trusted.gpg.d/vscodium.gpg echo 'deb https://paulcarroty.gitlab.io/vscodium-deb-rpm-repo/debs/ vscodium main' | sudo tee --append /etc/apt/sources.list.d/vscodium.list sudo apt update && sudo apt install codium + ==== Editor Atom ==== @@ -1660,6 +1775,7 @@ sudo sh -c 'echo "deb [arch=amd64] https://packagecloud.io/AtomEditor/atom/any/ sudo apt update sudo apt install atom + ===== RepRap ===== ==== OpenScad ==== @@ -1699,6 +1815,7 @@ python -m pip install https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ub pip install -r requirements.txt # sudo apt-get install libdbus-glib-1-dev libdbus-1-dev + Y ya lo tenemos todo listo para ejecutar. ===== Cortadora de vinilos ===== @@ -1707,7 +1824,7 @@ Y ya lo tenemos todo listo para ejecutar. Instalado en un entorno virtual: - + mkvirtualenv -p `which python3` inkcut sudo apt install libxml2-dev libxslt-dev libcups2-dev @@ -1716,13 +1833,15 @@ pip install PyQt5 pip install inkcut + ==== Plugin para inkscape ==== Instalamos dependencias: - + pip install python-usb + Instalamos el fichero ''%%.deb%%'' desde la web https://github.com/fablabnbg/inkscape-silhouette/releases ===== Drone ===== @@ -1735,9 +1854,10 @@ Descargamos [[https://s3-us-west-2.amazonaws.com/qgroundcontrol/latest/QGroundCo Para usar //Mission Planner// en Linux Mint se recomienda instalar los paquetes: - + sudo apt install mono-complete festival + Descargamos el MissionPlanner desde [[https://firmware.ardupilot.org/Tools/MissionPlanner/MissionPlanner-latest.zip|aquí]] [[https://www.rcgroups.com/forums/showthread.php?2179591-Installing-MissionPlanner-1-3-X-on-Ubuntu-17-04|Descripción de la instalación]] @@ -1753,6 +1873,7 @@ Para ello ejecutamos el siguiente comando (la versión actual de ''%%nvm%%'' es curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash + El script de instalación añade las siguientes lineas al fichero ''%%~/.bashrc%%'', nosotros las movemos al fichero ''%%~/.profile%%'' @@ -1760,6 +1881,7 @@ export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion + Para comprobar la instalación usamos ''%%command -v nvm%%'' que nos devolverá ''%%nvm%%''. ''%%which%%'' no funciona en este caso por que es un script para aplicarle ''%%source%%'' ==== Instalación de node.js ==== @@ -1770,6 +1892,7 @@ Ahora que tenemos ''%%nvm%%'' instalado, ya podemos instalar fácilmente la vers nvm ls-remote # para listar las versiones disponibles nvm install node # instala la última versión disponible + ==== Instalación de mosquitto ==== ''%%mosquitto%%'' es un //mqtt broker// muy sencillo y completo, aunque no es capaz de aguantar cargas grandes, para aprender es perfecto. @@ -1779,6 +1902,7 @@ sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa sudo apt-get update sudo apt install mosquitto mosquitto-clients + Con esto queda el servicio instalado y funcionando (''%%scs mosquitto%%'' o ''%%systemctl status mosquitto%%'') Si queremos el servicio parado para arrancarlo nosotros manualmente: @@ -1787,12 +1911,14 @@ Si queremos el servicio parado para arrancarlo nosotros manualmente: scsp mosquitto.service scd mosquitto.service + Y sin alias sería: sudo systemctl stop mosquitto.service sudo systemctl disable mosquitto.service + Para arrancarlo cuando lo necesitemos le damos un //start// con ''%%scst mosquitto.service%%'' o ''%%sudo systemctl start mosquitto.service%%'' ==== Instalación de Influxdb ==== @@ -1810,6 +1936,7 @@ apt update apt install influxdb apt install telegraf + ==== Instalación de node-red ==== Una vez instalado el ''%%node.js%%'' instalar el ''%%node-red%%'' es muy fácil @@ -1818,6 +1945,7 @@ Una vez instalado el ''%%node.js%%'' instalar el ''%%node-red%%'' es muy fácil nvm use node npm install -g --unsafe-perm node-red + ====== Aplicaciones de gráficos ====== ===== LibreCAD ===== @@ -1827,6 +1955,7 @@ Diseño en 2D sudo apt install librecad + ===== FreeCAD ===== No hay ppa disponible para Ubuntu 20. @@ -1841,6 +1970,7 @@ sudo apt update sudo install freecad + ---- **NOTA:** the ccx package brings CalculiX support to the FEM workbench, and needs to be installed separately. @@ -1857,16 +1987,18 @@ sudo add-apt-repository ppa:inkscape.dev/stable sudo apt update sudo apt install inkscape + ===== 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: - + 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: @@ -1877,6 +2009,7 @@ sudo apt upgrade sudo apt install gimp gimp-data gimp-texturize \ gimp-data-extras gimp-gap gmic gimp-gmic gimp-python + ==== Plugins de Gimp ==== Para instalar los principales plugins basta con: @@ -1884,11 +2017,24 @@ Para instalar los principales plugins basta con: sudo apt install gimp-plugin-registry -|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 ~~~~ | + + +---- + +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 ===== @@ -1914,11 +2060,12 @@ El [[https://github.com/DamirPorobic/ksnip|//ksnip//]] por si tenemos que hacer Shutter vuelve a estar disponible, al instalar desde este ppa ya queda con las opciones de edición habilitadas: - + sudo add-apt-repository ppa:linuxuprising/shutter sudo apt update sudo apt install shutter + ===== Reoptimizar imágenes ===== ==== ImageMagick ==== @@ -1928,6 +2075,7 @@ Instalamos desde los repos, simplemente: sudo apt install imagemagick + ==== Imagine ==== Nos bajamos un //AppImage// desde el [[https://github.com/meowtec/Imagine/releases|github]] de la aplicación @@ -1939,6 +2087,7 @@ Un programa para crear diagramas sudo apt install dia dia-shapes gsfonts-x11 + ===== Blender ===== Bajamos el Blender linkado estáticamente de [[https://www.blender.org|la página web]] y lo descomprimimos en ''%%~/apps/blender%%''. @@ -1952,6 +2101,7 @@ Instalado desde repos, junto con sunflow para explorar un poco. sudo apt install structure-synth sunflow + ===== Heron animation ===== El proyecto parece abandonado. El software ya no funciona en el último linux. @@ -1973,18 +2123,20 @@ Descargamos los últimos drivers desde [[https://github.com/DIGImend/digimend-ke Descomprimimos en ''%%/usr/src/digimend-9%%'' - + cd /usr/src sudo xvzf . sudo dkms build digimend-kernel-drivers/9 sudo dkms install digimend/9 + Para comprobar: xinput --list dkms status + Referencia: * [[https://davidrevoy.com/article331/setup-huion-giano-wh1409-tablet-on-linux-mint-18-1-ubuntu-16-04|Aquí]] @@ -2008,6 +2160,7 @@ sudo add-apt-repository ppa:ubuntuhandbook1/audacity sudo apt-get update sudo apt install audacity + Instalamos también el plugin [[https://theaudacitytopodcast.com/chriss-dynamic-compressor-plugin-for-audacity/|Chris’s Dynamic Compressor plugin]] ===== Clementine ===== @@ -2017,6 +2170,7 @@ La version disponible en los orígenes de software parece al dia: sudo apt install clementine + ====== Video ====== ===== Shotcut ===== @@ -2030,6 +2184,7 @@ cd chmod 744 Shotcutxxxxxx.AppImage ./Shotcutxxxxxx.AppImage + ===== kdenlive ===== Está disponible [[https://kdenlive.org|en la web]] como ppa o como //appimage//. Lo he bajado como //appimage// para probarlo. @@ -2048,17 +2203,19 @@ Instalados desde los repos oficiales: sudo apt update sudo apt install vokoscreen vokoscreen-ng kazam simplescreenrecorder + Escoge el que más te guste. ==== OBS ==== Añadimos el repositorio - + sudo add-apt-repository ppa:obsproject/obs-studio sudo apt update sudo apt install obs-studio + ===== Grabación de podcast ===== ==== Mumble ==== @@ -2072,6 +2229,7 @@ sudo add-apt-repository ppa:mumble/release sudo apt update sudo apt install mumble + ====== Fotografía ====== ===== Rawtherapee ===== @@ -2083,6 +2241,7 @@ cd chmod 744 RawTherapeexxxxxx.AppImage ./RawTherapeexxxxxx.AppImage + Al ejecutarla la primera vez ya se encarga la propia aplicación de integrarse en nuestro sistema. ===== Darktable ===== @@ -2095,6 +2254,7 @@ curl -fsSL https://download.opensuse.org/repositories/graphics:darktable/xUbuntu sudo apt update sudo apt install darktable + Se instala la última versión de Darktable (3.0.2) **OJO**: Conviene renombrar el fichero de claves de darktable, a nuestro linux no le gustan los ficheros con un ‘:’ Revisa ''%%/etc/apt/trusted.gpg.d/%%'' @@ -2114,11 +2274,13 @@ cd ~ ssh-keygen -b 4096 [-t dsa | ecdsa | ed25519 | rsa | rsa1] cat .ssh/ + Solo resta añadir nuestra clave pública en el fichero ''%%authorized_keys%%'' del servidor remoto. cat ~/.ssh/id_xxx.pub | ssh user@hostname 'cat >> .ssh/authorized_keys' + [[https://www.digitalocean.com/community/tutorials/understanding-the-ssh-encryption-and-connection-process|¿Cómo funciona esto?]] ===== Claves gpg ===== @@ -2145,6 +2307,7 @@ Podemos echar un ojo a nuestras claves desde ''%%seahorse%%'' la aplicación de ls -al ~/.ssh + 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: @@ -2152,16 +2315,19 @@ También podemos comprobar que claves hemos añadido ya a nuestro agente ssh con ssh-add -l + Para generar una nueva pareja de claves ssh: ssh-keygen -t rsa -b 4096 -C "your_email@example.com" + 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: ssh-keygen -p + 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: @@ -2170,6 +2336,7 @@ Para comprobar que las claves instaladas en github funcionan correctamente: ssh -T git@github.com Hi salvari! You've successfully authenticated, but GitHub does not provide shell access. + Este mensaje indica que todo ha ido bien. Ahora en los repos donde queramos usar ssh debemos cambiar el remote: @@ -2177,6 +2344,7 @@ Ahora en los repos donde queramos usar ssh debemos cambiar el remote: git remote set-url origin git@github.com:$USER/$REPONAME.git + ===== Signal ===== El procedimiento recomendado en la página oficial: @@ -2187,6 +2355,7 @@ echo "deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main" | sud sudo apt update && sudo apt install signal-desktop + ---- **NOTA**: Parece que no funciona. Lo he instalado via //flatpack// @@ -2209,6 +2378,7 @@ sudo apt update sudo apt install element-desktop + ===== Lector DNI electrónico ===== Descargamos la aplicación en formato ''%%.deb%%'' desde [[https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112|la página de descargas del portal DNIe]]. @@ -2218,6 +2388,7 @@ Automáticamente nos instalará las dependecias: ''%%libccid%%'', ''%%pcsd%%'' y sudo apt-get install pcsc-tools opensc + El opensc no es necesario para el DNIe, pero nos permite usar otras tarjetas. Como root ejecutamos pcsc_scan: @@ -2231,6 +2402,7 @@ Using reader plug'n play mechanism Scanning present readers... Waiting for the first reader... + Si insertamos el lector veremos algo como esto: @@ -2248,12 +2420,14 @@ Wed Jan 25 01:17:20 2017 Reader 0: C3PO LTC31 v2 (11061005) 00 00 Card state: Card removed, + Si insertamos un DNI veremos que se lee la información de la tarjeta insertada: Reader 0: C3PO LTC31 v2 (11061005) 00 00 Card state: Card inserted, + y mas rollo Para abrir los certificados en el navegador Firefox, nos lo explica [[https://www.agenciatributaria.es/AEAT.internet/Inicio/Ayuda/_comp_Consultas_informaticas/Categorias/Firma_digital__certificado_o_DNIe__y_sistema_Cl_ve_PIN/DNI_electronico__DNIe_/Comprobaciones_tecnicas_para_el_funcionamiento_del_DNIe/Comprobaciones_tecnicas_del_DNIe_con_Mozilla_Firefox_y_Linux/Comprobaciones_tecnicas_del_DNIe_con_Mozilla_Firefox_y_Linux.shtml|esta página de la AEAT]] @@ -2292,24 +2466,28 @@ sudo add-apt-repository "deb [arch=amd64] https://download.virtualbox.org/virtua # Actualizamos la base de datos de paquetes sudo apt update + 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: - + sudo apt install virtualbox-6.1 + **ATENCIÓN** The following additional packages will be installed: python-is-python2 + Descargamos también el [[https://www.virtualbox.org/wiki/Downloads|VirtualBox Extension Pack]], este paquete lo podemos instalar desde el propio interfaz de usuario del //VirtualBox//, o bien con el siguiente comando: sudo VBoxManage extpack install ./Oracle_VM_VirtualBox_Extension_Pack-6.1.2.vbox-extpack + 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 ===== @@ -2325,6 +2503,7 @@ Instalamos desde el repo oficial: sudo apt install qemu-kvm libvirt-daemon-system libvirt-clients bridge-utils virtinst virt-manager sudo apt install virt-viewer + * **qemu-kvm** nos da la emulación hardware para el hipervisor KVM * **libvirt-daemon-system** los ficheros de configuración para ejecutar el demonio ''%%libvirt%%'' como servicio * **libvirt-clients** software para gestionar plataformas de virtualización @@ -2338,6 +2517,7 @@ Solo queda añadir nuestro usuario a los grupos: sudo gpasswd -a username libvirt sudo gpasswd -a username kvm + Podemos comprobar el estado del servicio con ''%%scs libvirtd%%'' (''%%systemctl status libvirtd%%''). ==== Referencias ==== @@ -2378,24 +2558,27 @@ sudo apt install docker-ce sudo gpasswd -a username docker + Esto dejará el servicio //docker// funcionando y habilitado (arrancará en cada reinicio del ordenador) La forma de pararlo es: - + sudo systemctl stop docker sudo systemctl disable docker systemctl status docker + 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: - + scst docker # para arrancar el servicio scsp docker # para parar el servicio + ==== docker-compose ==== * Nos bajamos la última versión disponible de [[https://github.com/docker/compose/releases|las releases de github]] @@ -2417,22 +2600,26 @@ Descargamos y añadimos la clave gpg: wget -q https://josm.openstreetmap.de/josm-apt.key -O- | sudo apt-key add - + Añadimos el origen de software: sudo add-apt-repository "deb [arch=amd64] https://josm.openstreetmap.de/apt $(. /etc/os-release; echo "$UBUNTU_CODENAME") universe" + Y ahora procedemos a la instalación: sudo apt update sudo apt install openjfx josm + Alternativamente también podemos instalar la versión “nightly” con el siguiente comando, pero tendréis actualizaciones diarias: sudo apt josm-latest + Ya estamos listos para editar Open Street Map offline. ===== MOBAC ===== @@ -2452,17 +2639,20 @@ Añadimos la clave gpg: wget -q https://qgis.org/downloads/qgis-2019.gpg.key -O- | sudo apt-key add - + Ejecutamos: sudo add-apt-repository "deb [arch=amd64] https://qgis.org/debian $(. /etc/os-release; echo "$UBUNTU_CODENAME") main" + E instalamos como siempre sudo apt update sudo apt install qgis + ==== Referencias ==== * [[https://mappinggis.com/2015/09/como-conectar-con-servicios-wms-y-wfs-con-arcgis-qgis-y-gvsig/|Conectar WMS con QGIS]] @@ -2477,6 +2667,7 @@ sudo apt install qgis sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F7E06F06199EF2F2 + ===== Solucionar problemas de menús duplicados usando menulibre ===== |**Nota**: Ya no uso //MenuLibre// | @@ -2538,6 +2729,7 @@ Seguimos los pasos de instalación: sudo apt-get install libusb-1.0-0-dev + ===== 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. @@ -2558,6 +2750,7 @@ 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" + 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/ @@ -2575,6 +2768,7 @@ Board: "Arduino Nano" Processor: "ATmega168" Port: "/dev/ttyUSB0" + Y ya funciona todo. ===== Linux Mint 20 es python agnostic ===== @@ -2583,8 +2777,9 @@ En principio no podemos invocar a ''%%python%%'' por que no se ha escogido una v Tenemos dos opciones: - + apt install python-is-python2 apt install python-is-python3 + “test” diff --git a/out/LinuxMintUlyana.epub b/out/LinuxMintUlyana.epub index 5d8ff4e9744ba388aa610a420c4b2c13e33e6c88..a034a123ca336f18b176c5cfb864ac361135020b 100644 GIT binary patch delta 37915 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 b_}H8T1VS_ZEpUdiG6M79N9kf$AL#!84$q)z delta 37643 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
    E9H{XvURwVb3pyH44wqIPYVNzS7S6!`f{(uk%2* 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 A-2eap diff --git a/out/LinuxMintUlyana.mw b/out/LinuxMintUlyana.mw index 0c6d40d..fb24e15 100644 --- a/out/LinuxMintUlyana.mw +++ b/out/LinuxMintUlyana.mw @@ -834,10 +834,10 @@ Bajamos el paquete con la última versión desde [https://golang.org/dl/ la pág Descomprimimos como ''root'' en /usr/local/ -sudo tar -C /usr/local -xvzf go1.15.7.linux-amd64.tar.gz +sudo tar -C /usr/local -xvzf go1.15.7.linux-amd64.tar.gz Añadimos al path con las siguientes lineas en ~/.profile: -#golang +#golang if [ -d "/usr/local/go" ] ; then export GOROOT="/usr/local/go" PATH="$PATH:$GOROOT/bin" @@ -845,12 +845,12 @@ fi if [ -d "$HOME/work/development/gocode" ] ; then export GOPATH="$HOME/work/development/gocode" PATH="$PATH:$GOPATH/bin" -fi +fi === Instalación de ''gopls'' un servidor de LSP para editores: === Desde un directorio '''que no sea el GOPATH''' -GO111MODULE=on go get golang.org/x/tools/gopls@latest +GO111MODULE=on go get golang.org/x/tools/gopls@latest == Processing == Bajamos el paquete de la [https://processing.org/ página web], descomprimimimos en ~/apps/, en las nuevas versiones incorpora un script de instalación que ya se encarga de crear el fichero ''desktop''. @@ -928,29 +928,29 @@ python -m pip install jupyter Instalamos los pre-requisitos: -sudo apt-get update +sudo apt-get update sudo apt-get install --no-install-recommends make build-essential \ libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ wget curl llvm libncurses5-dev xz-utils tk-dev \ -libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev +libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev Podemos clonar el repo en nuestro home: -git clone https://github.com/pyenv/pyenv.git ~/.pyenv +git clone https://github.com/pyenv/pyenv.git ~/.pyenv Pero también podemos añadir el ''bundle'' para ''Antigen'' en el fichero .zshrc y dejar que se encargue de todo. -antigen bundle mattberther/zsh-pyenv +antigen bundle mattberther/zsh-pyenv Añadimos al fichero ~/.profile: -# pyenv +# pyenv if [ -d "$HOME/.pyenv" ] ; then export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/bin:$PATH" -fi +fi Y configuramos en ~/.bashrc y en ~/.zshrc (aunque en el último no es necesario tocar nada si usamos el ''bundle'' para ''Antigen''): -if command -v pyenv 1>/dev/null 2>&1; then +if command -v pyenv 1>/dev/null 2>&1; then eval "$(pyenv init -)" -fi +fi Podemos probar que todo funciona con: pyenv install -l Una vez instalado hay que estudiarse [https://github.com/pyenv/pyenv/blob/master/COMMANDS.md la referencia de comandos] @@ -1526,44 +1526,44 @@ Para instalar node-red en linux necesitamos instalar primero node.jsnvm
    es la 0.37.0) -curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.37.0/install.sh | bash El script de instalación añade las siguientes lineas al fichero ~/.bashrc, nosotros las movemos al fichero ~/.profile -export NVM_DIR="$HOME/.nvm" +export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm -[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion +[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # This loads nvm bash_completion Para comprobar la instalación usamos command -v nvm que nos devolverá nvm. which no funciona en este caso por que es un script para aplicarle source === Instalación de node.js === Ahora que tenemos nvm instalado, ya podemos instalar fácilmente la versión o versiones que queramos de node.js -nvm ls-remote # para listar las versiones disponibles -nvm install node # instala la última versión disponible +nvm ls-remote # para listar las versiones disponibles +nvm install node # instala la última versión disponible === Instalación de mosquitto === mosquitto es un ''mqtt broker'' muy sencillo y completo, aunque no es capaz de aguantar cargas grandes, para aprender es perfecto. -sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa +sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa sudo apt-get update -sudo apt install mosquitto mosquitto-clients +sudo apt install mosquitto mosquitto-clients Con esto queda el servicio instalado y funcionando (scs mosquitto o systemctl status mosquitto) Si queremos el servicio parado para arrancarlo nosotros manualmente: -scsp mosquitto.service -scd mosquitto.service +scsp mosquitto.service +scd mosquitto.service Y sin alias sería: -sudo systemctl stop mosquitto.service -sudo systemctl disable mosquitto.service +sudo systemctl stop mosquitto.service +sudo systemctl disable mosquitto.service Para arrancarlo cuando lo necesitemos le damos un ''start'' con scst mosquitto.service o sudo systemctl start mosquitto.service === Instalación de Influxdb === Seguimos el método para ubuntu: -wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add - +wget -qO- https://repos.influxdata.com/influxdb.key | sudo apt-key add - #source /etc/lsb-release DISTRIB_ID=ubuntu DISTRIB_CODENAME=focal @@ -1571,13 +1571,13 @@ echo "deb https://repos.influxdata.com/${DISTRIB_ID} ${DISTRIB_CODENAME} stable" apt update apt install influxdb -apt install telegraf +apt install telegraf === Instalación de node-red === Una vez instalado el node.js instalar el node-red es muy fácil -nvm use node -npm install -g --unsafe-perm node-red +nvm use node +npm install -g --unsafe-perm node-red = Aplicaciones de gráficos = == LibreCAD == @@ -1632,17 +1632,20 @@ gimp-data-extras gimp-gap gmic gimp-gmic gimp-python Para instalar los principales plugins basta con:
    sudo apt install gimp-plugin-registry
    -{| -|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 ~/.config/GIMP/2.10/plug-ins -|- -| Tenemos que asegurarnos que los fichero ''python'' son ejecutables: -|- -| ~~~~ chmod 755 ~/.config/GIMP/2.10/plug-ins/*.py ~~~~ -|} + +----- + +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 == @@ -1891,9 +1894,9 @@ Ahora en los repos donde queramos usar ssh debemos cambiar el remote: El procedimiento recomendado en la página oficial: -curl -s https://updates.signal.org/desktop/apt/keys.asc | sudo apt-key add - +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 +sudo apt update && sudo apt install signal-desktop ----- @@ -1906,7 +1909,7 @@ sudo apt update && sudo apt install signal-desktop Instalamos con: -sudo apt install -y wget apt-transport-https +sudo apt install -y wget apt-transport-https sudo wget -O /usr/share/keyrings/riot-im-archive-keyring.gpg https://packages.riot.im/debian/riot-im-archive-keyring.gpg @@ -1914,14 +1917,14 @@ echo "deb [signed-by=/usr/share/keyrings/riot-im-archive-keyring.gpg] https://pa sudo apt update -sudo apt install element-desktop +sudo apt install element-desktop == Lector DNI electrónico == Descargamos la aplicación en formato .deb desde [https://www.dnielectronico.es/PortalDNIe/PRF1_Cons02.action?pag=REF_1112 la página de descargas del portal DNIe]. Automáticamente nos instalará las dependecias: libccid, pcsd y pinentry-gtk2. A mayores instalamos: -sudo apt-get install pcsc-tools opensc +sudo apt-get install pcsc-tools opensc El opensc no es necesario para el DNIe, pero nos permite usar otras tarjetas. Como root ejecutamos pcsc_scan: diff --git a/out/LinuxMintUlyana.odt b/out/LinuxMintUlyana.odt index f9c15b07175f217eaebb25ca856a8097b652c9ba..498c36ee2c691dbf644254915e0dc202b7cc1e4e 100644 GIT binary patch delta 44696 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
    E$ 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 S0pQXOxdHUh0M4&h2KzrY%~M?f delta 45026 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 Sy__^vZg6^-6wZI-!Tt|MQ7}#b diff --git a/out/LinuxMintUlyana.pdf b/out/LinuxMintUlyana.pdf index e359d20b961c0f554746a0b5d66a17a463a61bf1..7b384069e6a02af0cc5d8530f17231346b15c8e2 100644 GIT binary patch delta 55745 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 z’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

    ZJ2^s!EzdG*{9?B=P&ksuE9Y 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

    JHNXGZ9+WuePU;y6gIQHRx+9ZQhDir#&;oI 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 ZE@;nA$IjF6(?id1aCBl~I>x$m{{d#90ObGx diff --git a/out/LinuxMintUlyana.tex b/out/LinuxMintUlyana.tex index 259a1b8..0a4469c 100644 --- a/out/LinuxMintUlyana.tex +++ b/out/LinuxMintUlyana.tex @@ -1570,7 +1570,7 @@ Descomprimimos como \emph{root} en \texttt{/usr/local/} \begin{Shaded} \begin{Highlighting}[] -\FunctionTok{sudo}\NormalTok{ tar {-}C /usr/local {-}xvzf go1.15.7.linux{-}amd64.tar.gz} +\FunctionTok{sudo}\NormalTok{ tar }\AttributeTok{{-}C}\NormalTok{ /usr/local }\AttributeTok{{-}xvzf}\NormalTok{ go1.15.7.linux{-}amd64.tar.gz} \end{Highlighting} \end{Shaded} @@ -1580,14 +1580,14 @@ Añadimos al path con las siguientes lineas en \begin{Shaded} \begin{Highlighting}[] \CommentTok{\#golang} -\KeywordTok{if}\BuiltInTok{ [} \OtherTok{{-}d} \StringTok{"/usr/local/go"}\BuiltInTok{ ]}\NormalTok{ ; }\KeywordTok{then} +\ControlFlowTok{if} \BuiltInTok{[} \OtherTok{{-}d} \StringTok{"/usr/local/go"} \BuiltInTok{]} \KeywordTok{;} \ControlFlowTok{then} \BuiltInTok{export} \VariableTok{GOROOT=}\StringTok{"/usr/local/go"} \VariableTok{PATH=}\StringTok{"}\VariableTok{$PATH}\StringTok{:}\VariableTok{$GOROOT}\StringTok{/bin"} -\KeywordTok{fi} -\KeywordTok{if}\BuiltInTok{ [} \OtherTok{{-}d} \StringTok{"}\VariableTok{$HOME}\StringTok{/work/development/gocode"}\BuiltInTok{ ]}\NormalTok{ ; }\KeywordTok{then} +\ControlFlowTok{fi} +\ControlFlowTok{if} \BuiltInTok{[} \OtherTok{{-}d} \StringTok{"}\VariableTok{$HOME}\StringTok{/work/development/gocode"} \BuiltInTok{]} \KeywordTok{;} \ControlFlowTok{then} \BuiltInTok{export} \VariableTok{GOPATH=}\StringTok{"}\VariableTok{$HOME}\StringTok{/work/development/gocode"} \VariableTok{PATH=}\StringTok{"}\VariableTok{$PATH}\StringTok{:}\VariableTok{$GOPATH}\StringTok{/bin"} -\KeywordTok{fi} +\ControlFlowTok{fi} \end{Highlighting} \end{Shaded} @@ -1735,10 +1735,10 @@ Instalamos los pre-requisitos: \begin{Shaded} \begin{Highlighting}[] \FunctionTok{sudo}\NormalTok{ apt{-}get update} -\FunctionTok{sudo}\NormalTok{ apt{-}get install {-}{-}no{-}install{-}recommends make build{-}essential }\KeywordTok{\textbackslash{}} -\ExtensionTok{libssl{-}dev}\NormalTok{ zlib1g{-}dev libbz2{-}dev libreadline{-}dev libsqlite3{-}dev }\KeywordTok{\textbackslash{}} -\FunctionTok{wget}\NormalTok{ curl llvm libncurses5{-}dev xz{-}utils tk{-}dev }\KeywordTok{\textbackslash{}} -\ExtensionTok{libxml2{-}dev}\NormalTok{ libxmlsec1{-}dev libffi{-}dev liblzma{-}dev} +\FunctionTok{sudo}\NormalTok{ apt{-}get install }\AttributeTok{{-}{-}no{-}install{-}recommends}\NormalTok{ make build{-}essential }\DataTypeTok{\textbackslash{}} +\NormalTok{libssl{-}dev zlib1g{-}dev libbz2{-}dev libreadline{-}dev libsqlite3{-}dev }\DataTypeTok{\textbackslash{}} +\NormalTok{wget curl llvm libncurses5{-}dev xz{-}utils tk{-}dev }\DataTypeTok{\textbackslash{}} +\NormalTok{libxml2{-}dev libxmlsec1{-}dev libffi{-}dev liblzma{-}dev} \end{Highlighting} \end{Shaded} @@ -1764,10 +1764,10 @@ Añadimos al fichero \texttt{\textasciitilde{}/.profile}: \begin{Shaded} \begin{Highlighting}[] \CommentTok{\# pyenv} -\KeywordTok{if}\BuiltInTok{ [} \OtherTok{{-}d} \StringTok{"}\VariableTok{$HOME}\StringTok{/.pyenv"}\BuiltInTok{ ]}\NormalTok{ ; }\KeywordTok{then} +\ControlFlowTok{if} \BuiltInTok{[} \OtherTok{{-}d} \StringTok{"}\VariableTok{$HOME}\StringTok{/.pyenv"} \BuiltInTok{]} \KeywordTok{;} \ControlFlowTok{then} \BuiltInTok{export} \VariableTok{PYENV\_ROOT=}\StringTok{"}\VariableTok{$HOME}\StringTok{/.pyenv"} \BuiltInTok{export} \VariableTok{PATH=}\StringTok{"}\VariableTok{$PYENV\_ROOT}\StringTok{/bin:}\VariableTok{$PATH}\StringTok{"} -\KeywordTok{fi} +\ControlFlowTok{fi} \end{Highlighting} \end{Shaded} @@ -1777,9 +1777,9 @@ tocar nada si usamos el \emph{bundle} para \emph{Antigen}): \begin{Shaded} \begin{Highlighting}[] -\KeywordTok{if} \BuiltInTok{command}\NormalTok{ {-}v pyenv }\OperatorTok{1\textgreater{}}\NormalTok{/dev/null }\OperatorTok{2\textgreater{}\&1}\KeywordTok{;} \KeywordTok{then} - \BuiltInTok{eval} \StringTok{"}\VariableTok{$(}\ExtensionTok{pyenv}\NormalTok{ init {-}}\VariableTok{)}\StringTok{"} -\KeywordTok{fi} +\ControlFlowTok{if} \BuiltInTok{command} \AttributeTok{{-}v}\NormalTok{ pyenv }\DecValTok{1}\OperatorTok{\textgreater{}}\NormalTok{/dev/null }\DecValTok{2}\OperatorTok{\textgreater{}\&}\DecValTok{1}\KeywordTok{;} \ControlFlowTok{then} + \BuiltInTok{eval} \StringTok{"}\VariableTok{$(}\ExtensionTok{pyenv}\NormalTok{ init }\AttributeTok{{-}}\VariableTok{)}\StringTok{"} +\ControlFlowTok{fi} \end{Highlighting} \end{Shaded} @@ -1822,8 +1822,8 @@ Revisar \toprule \endhead \textbf{NOTA}: El siguiente paso ya no parece necesario, las -alternativas\tabularnewline -se han actualizado con la instalación del \emph{neovim}.\tabularnewline +alternativas \\ +se han actualizado con la instalación del \emph{neovim}. \\ \bottomrule \end{longtable} @@ -1885,10 +1885,10 @@ porn comando ejecutando: \texttt{:PlugInstall} \begin{longtable}[]{@{}l@{}} \toprule \endhead -\textbf{Nota}:\tabularnewline +\textbf{Nota}: \\ Solo hay que instalar uno de los dos o \emph{dein} o \emph{plug-vim}. Yo -uso\tabularnewline -\emph{plug-vim} así que esto es sólo una referencia.\tabularnewline +uso \\ +\emph{plug-vim} así que esto es sólo una referencia. \\ \bottomrule \end{longtable} @@ -2708,7 +2708,7 @@ Para ello ejecutamos el siguiente comando (la versión actual de \begin{Shaded} \begin{Highlighting}[] -\ExtensionTok{curl}\NormalTok{ {-}o{-} https://raw.githubusercontent.com/nvm{-}sh/nvm/v0.37.0/install.sh }\KeywordTok{|} \FunctionTok{bash} +\ExtensionTok{curl} \AttributeTok{{-}o{-}}\NormalTok{ https://raw.githubusercontent.com/nvm{-}sh/nvm/v0.37.0/install.sh }\KeywordTok{|} \FunctionTok{bash} \end{Highlighting} \end{Shaded} @@ -2719,8 +2719,8 @@ El script de instalación añade las siguientes lineas al fichero \begin{Shaded} \begin{Highlighting}[] \BuiltInTok{export} \VariableTok{NVM\_DIR=}\StringTok{"}\VariableTok{$HOME}\StringTok{/.nvm"} -\BuiltInTok{[} \OtherTok{{-}s} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/nvm.sh"}\BuiltInTok{ ]} \KeywordTok{\&\&}\NormalTok{ \textbackslash{}}\BuiltInTok{.} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/nvm.sh"}\NormalTok{ \# }\ExtensionTok{This}\NormalTok{ loads nvm} -\BuiltInTok{[} \OtherTok{{-}s} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/bash\_completion"}\BuiltInTok{ ]} \KeywordTok{\&\&}\NormalTok{ \textbackslash{}}\BuiltInTok{.} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/bash\_completion"}\NormalTok{ \# }\ExtensionTok{This}\NormalTok{ loads nvm bash\_completion} +\BuiltInTok{[} \OtherTok{{-}s} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/nvm.sh"} \BuiltInTok{]} \KeywordTok{\&\&} \ExtensionTok{\textbackslash{}.} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/nvm.sh"} \CommentTok{\# This loads nvm} +\BuiltInTok{[} \OtherTok{{-}s} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/bash\_completion"} \BuiltInTok{]} \KeywordTok{\&\&} \ExtensionTok{\textbackslash{}.} \StringTok{"}\VariableTok{$NVM\_DIR}\StringTok{/bash\_completion"} \CommentTok{\# This loads nvm bash\_completion} \end{Highlighting} \end{Shaded} @@ -2737,8 +2737,8 @@ la versión o versiones que queramos de \texttt{node.js} \begin{Shaded} \begin{Highlighting}[] -\ExtensionTok{nvm}\NormalTok{ ls{-}remote \# para listar las versiones disponibles} -\ExtensionTok{nvm}\NormalTok{ install node \# instala la última versión disponible} +\ExtensionTok{nvm}\NormalTok{ ls{-}remote }\CommentTok{\# para listar las versiones disponibles} +\ExtensionTok{nvm}\NormalTok{ install node }\CommentTok{\# instala la última versión disponible} \end{Highlighting} \end{Shaded} @@ -2791,7 +2791,7 @@ Seguimos el método para ubuntu: \begin{Shaded} \begin{Highlighting}[] -\FunctionTok{wget}\NormalTok{ {-}qO{-} https://repos.influxdata.com/influxdb.key }\KeywordTok{|} \FunctionTok{sudo}\NormalTok{ apt{-}key add {-}} +\FunctionTok{wget} \AttributeTok{{-}qO{-}}\NormalTok{ https://repos.influxdata.com/influxdb.key }\KeywordTok{|} \FunctionTok{sudo}\NormalTok{ apt{-}key add }\AttributeTok{{-}} \CommentTok{\#source /etc/lsb{-}release} \VariableTok{DISTRIB\_ID=}\NormalTok{ubuntu} \VariableTok{DISTRIB\_CODENAME=}\NormalTok{focal} @@ -2813,7 +2813,7 @@ muy fácil \begin{Shaded} \begin{Highlighting}[] \ExtensionTok{nvm}\NormalTok{ use node} -\ExtensionTok{npm}\NormalTok{ install {-}g {-}{-}unsafe{-}perm node{-}red} +\ExtensionTok{npm}\NormalTok{ install }\AttributeTok{{-}g} \AttributeTok{{-}{-}unsafe{-}perm}\NormalTok{ node{-}red} \end{Highlighting} \end{Shaded} @@ -2897,32 +2897,24 @@ Para instalar los principales plugins basta con: 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 +\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} + +Esta sección ya no está vigente + +\hypertarget{resynthesizer}{% +\paragraph{resynthesizer}\label{resynthesizer}} + 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} +el fichero en \texttt{\textasciitilde{}/.config/GIMP/2.10/plug-ins} + +Tenemos que asegurarnos que los fichero \emph{python} son ejecutables: + +\begin{verbatim} +chmod 755 ~/.config/GIMP/2.10/plug-ins/*.py +\end{verbatim} + +\begin{center}\rule{0.5\linewidth}{0.5pt}\end{center} \hypertarget{krita}{% \subsection{Krita}\label{krita}} @@ -3352,8 +3344,8 @@ El procedimiento recomendado en la página oficial: \begin{Shaded} \begin{Highlighting}[] -\ExtensionTok{curl}\NormalTok{ {-}s https://updates.signal.org/desktop/apt/keys.asc }\KeywordTok{|} \FunctionTok{sudo}\NormalTok{ apt{-}key add {-}} -\BuiltInTok{echo} \StringTok{"deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main"} \KeywordTok{|} \FunctionTok{sudo}\NormalTok{ tee {-}a /etc/apt/sources.list.d/signal{-}xenial.list} +\ExtensionTok{curl} \AttributeTok{{-}s}\NormalTok{ https://updates.signal.org/desktop/apt/keys.asc }\KeywordTok{|} \FunctionTok{sudo}\NormalTok{ apt{-}key add }\AttributeTok{{-}} +\BuiltInTok{echo} \StringTok{"deb [arch=amd64] https://updates.signal.org/desktop/apt xenial main"} \KeywordTok{|} \FunctionTok{sudo}\NormalTok{ tee }\AttributeTok{{-}a}\NormalTok{ /etc/apt/sources.list.d/signal{-}xenial.list} \FunctionTok{sudo}\NormalTok{ apt update }\KeywordTok{\&\&} \FunctionTok{sudo}\NormalTok{ apt install signal{-}desktop} \end{Highlighting} \end{Shaded} @@ -3373,9 +3365,9 @@ Instalamos con: \begin{Shaded} \begin{Highlighting}[] -\FunctionTok{sudo}\NormalTok{ apt install {-}y wget apt{-}transport{-}https} +\FunctionTok{sudo}\NormalTok{ apt install }\AttributeTok{{-}y}\NormalTok{ wget apt{-}transport{-}https} -\FunctionTok{sudo}\NormalTok{ wget {-}O /usr/share/keyrings/riot{-}im{-}archive{-}keyring.gpg https://packages.riot.im/debian/riot{-}im{-}archive{-}keyring.gpg} +\FunctionTok{sudo}\NormalTok{ wget }\AttributeTok{{-}O}\NormalTok{ /usr/share/keyrings/riot{-}im{-}archive{-}keyring.gpg https://packages.riot.im/debian/riot{-}im{-}archive{-}keyring.gpg} \BuiltInTok{echo} \StringTok{"deb [signed{-}by=/usr/share/keyrings/riot{-}im{-}archive{-}keyring.gpg] https://packages.riot.im/debian/ default main"} \KeywordTok{|} \FunctionTok{sudo}\NormalTok{ tee /etc/apt/sources.list.d/riot{-}im.list} @@ -3797,7 +3789,7 @@ menulibre}\label{solucionar-problemas-de-menuxfas-duplicados-usando-menulibre}} \begin{longtable}[]{@{}l@{}} \toprule \endhead -\textbf{Nota}: Ya no uso \emph{MenuLibre}\tabularnewline +\textbf{Nota}: Ya no uso \emph{MenuLibre} \\ \bottomrule \end{longtable} diff --git a/src/500_graph.md b/src/500_graph.md index 9d6f70a..70c736f 100644 --- a/src/500_graph.md +++ b/src/500_graph.md @@ -74,23 +74,6 @@ Para instalar los principales plugins basta con: sudo apt install gimp-plugin-registry ~~~~ ----------------------------------------------------------------------- -Esta sección ya no está vigente - -#### resynthesizer - -Descargamos el plugin desde -[aquí](https://github.com/bootchk/resynthesizer) 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