# Programas básicos ## Linux Mint Linux Mint incluye `sudo` ^[ya no incluye gksu pero tampoco es imprescindible] y las aplicaciones que uso habitualmente para gestión de paquetes por defecto (_aptitude_ y _synaptic_). Interesa tener instalado `sudo apt install ppa-purge`. Sirve para eliminar ppas junto con los programas instalados desde ese ppa. Tampoco voy a enredar nada con los orígenes del software (de momento) ## Firmware Ya no es necesario intalar los paquetes de _microcode_ la instalación de Tricia se encargó de instalar: * `amd64-microcode` * `intel-microcode` Instalamos el driver de nvidia recomendado, el _Mint_ nos avisa de que tenemos que revisar la instalación de los drivers. El driver de Nvidia viene muy mejorado. Merece la pena ver todas las opciones. 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 Una vez instalado el driver de nvidia y antes de seguir con la instalación instalamos el `git` y el `etckeeper` para que toda nuestra instalación quede reflejada en los repos. ### Instalación de `etckeeper` ¡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. ## Parámetros de disco duro Tengo un disco duro ssd y otro hdd normal. El area de intercambio la hemos creado en el disco duro hdd, no se usará mucho pero evitamos multiples operaciones de escritura en el disco ssd en caso de que se empiece a 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 ~~~~ 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_ Seguimos [esta referencia](https://easylinuxtipsproject.blogspot.com/p/ssd.html#ID10) Visitamos `about::config` con el navegador. Cambiamos * `browser.cache.disk.enable` __false__ * `browser.cache.memory.enable` __true__ * `browser.cache.memory.capacity` __204800__ * `browser.sessionstore.interval` __15000000__ TODO: Comprobar _trim_ en mi disco duro. Y mirar [esto](https://easylinuxtipsproject.blogspot.com/p/speed-mint.html) ## Fuentes adicionales Instalamos algunas fuentes desde los orígenes de software: ~~~~ 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` ## 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 ~~~~ ------------------------------- > __Nota__: Ojo con el log de `ufw`, tampoco le sienta muy bien al ssd esa escritura masiva. ------------------------------- ## Aplicaciones variadas > __Nota__: Ya no instalamos _menulibre_, Linux Mint tiene una utilidad > de edición de menús. Keepass2 : Para mantener nuestras contraseñas a buen recaudo Gnucash : Programa de contabilidad, la versión de los repos está bastante atrasada habrá que probar la nueva. Deluge : Programa de descarga de torrents (acuérdate de configurar tus cortafuegos) rsync, grsync : Para hacer backups de nuestros ficheros Descompresores variados : Para lidiar con los distintos formatos de ficheros comprimidos mc : Midnight Comander, gestor de ficheros en modo texto most : Un `less` mejorado ~~~~ sudo apt install keepass2 gnucash deluge rsync grsync rar unrar \ zip unzip unace bzip2 lzop p7zip p7zip-full p7zip-rar chromium-browser\ most mc ~~~~ Chromium : Como Chrome pero libre, ahora en Ubuntu solo está disponible como snap así que tendremos que dar un rodeo. ~~~~{bash} sudo add-apt-repository ppa:xalt7x/chromium-deb-vaapi cat < __Nota__: Instalar _rxvt_ junto con tmux como terminal alternativo ----------------------- ## Utilidades _Agave_ y _pdftk_ ya no existen, nos pasamos a _gpick_ y _poppler-utils_: Instalamos _gpick_ con `sudo apt install gpick` ## Codecs ~~~~ sudo apt-get install mint-meta-codecs ~~~~ ## Syncthing Añadimos el ppa: ~~~~{bash} 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 ~~~~